context-mode 1.0.100 → 1.0.101

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cli.bundle.mjs CHANGED
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
- var gw=Object.create;var uu=Object.defineProperty;var _w=Object.getOwnPropertyDescriptor;var yw=Object.getOwnPropertyNames;var xw=Object.getPrototypeOf,vw=Object.prototype.hasOwnProperty;var sg=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var v=(t,e)=>()=>(t&&(e=t(t=0)),e);var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Me=(t,e)=>{for(var r in e)uu(t,r,{get:e[r],enumerable:!0})},Sw=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of yw(e))!vw.call(t,o)&&o!==r&&uu(t,o,{get:()=>e[o],enumerable:!(n=_w(e,o))||n.enumerable});return t};var ts=(t,e,r)=>(r=t!=null?gw(xw(t)):{},Sw(e||!t||!t.__esModule?uu(r,"default",{value:t,enumerable:!0}):r,t));var gu=R((XD,yg)=>{"use strict";var hu={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"},Cw={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},Iw={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?hu.up():"");return t&&(e+=hu.left),e}};yg.exports={cursor:hu,scroll:Cw,erase:Iw,beep:"\x07"}});var $g=R((NM,ku)=>{var Ni=process||{},kg=Ni.argv||[],Ai=Ni.env||{},n$=!(Ai.NO_COLOR||kg.includes("--no-color"))&&(!!Ai.FORCE_COLOR||kg.includes("--color")||Ni.platform==="win32"||(Ni.stdout||{}).isTTY&&Ai.TERM!=="dumb"||!!Ai.CI),o$=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+s$(o,e,r,s)+e:t+o+e},s$=(t,e,r,n)=>{let o="",s=0;do o+=t.substring(s,n)+r,s=n+e.length,n=t.indexOf(e,s);while(~n);return o+t.substring(s)},wg=(t=n$)=>{let e=t?o$:()=>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")}};ku.exports=wg();ku.exports.createColors=wg});import{execFileSync as i$,execSync as Eg}from"node:child_process";import{existsSync as wu}from"node:fs";function He(t){try{let e=zi?`where ${t}`:`command -v ${t}`;return Eg(e,{stdio:"pipe"}),!0}catch{return!1}}function Tg(){if(He("bun"))return!0;for(let t of Pg())if(wu(t))return!0;return!1}function a$(){if(He("bun"))return"bun";for(let e of Pg())if(wu(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return zi?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function Pg(){let t=process.env.HOME??process.env.USERPROFILE??"";if(zi){let e=process.env.LOCALAPPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function c$(){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(wu(e))return e;try{let r=Eg("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 Zt(t,e=["--version"]){try{return i$(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function Yn(){let e=Tg()?a$():null;return{javascript:e??process.execPath,typescript:e||(He("tsx")?"tsx":He("ts-node")?"ts-node":null),python:He("python3")?"python3":He("python")?"python":null,shell:zi?c$()??(He("sh")?"sh":He("powershell")?"powershell":"cmd.exe"):He("bash")?"bash":"sh",ruby:He("ruby")?"ruby":null,go:He("go")?"go":null,rust:He("rustc")?"rustc":null,php:He("php")?"php":null,perl:He("perl")?"perl":null,r:He("Rscript")?"Rscript":He("r")?"r":null,elixir:He("elixir")?"elixir":null}}function Xn(){return Tg()}function ji(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Zt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Zt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Zt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Zt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Zt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Zt(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${Zt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Zt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Zt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Zt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Zt(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 Di(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 Rg(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var zi,Mi=v(()=>{"use strict";zi=process.platform==="win32"});var Og,Cg=v(()=>{"use strict";Og={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{createHash as Ig}from"node:crypto";import{join as $u}from"node:path";import{accessSync as u$,copyFileSync as l$,constants as d$,mkdirSync as p$}from"node:fs";import{homedir as m$}from"node:os";var Re,Ht=v(()=>{"use strict";Re=class{constructor(e){this.sessionDirSegments=e}getSessionDir(){let e=$u(m$(),...this.sessionDirSegments,"context-mode","sessions");return p$(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ig("sha256").update(e).digest("hex").slice(0,16);return $u(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ig("sha256").update(e).digest("hex").slice(0,16);return $u(this.getSessionDir(),`${r}-events.md`)}backupSettings(){let e=this.getSettingsPath();try{u$(e,d$.R_OK);let r=e+".bak";return l$(e,r),r}catch{return null}}}});var Qn,Eu=v(()=>{"use strict";Ht();Qn=class extends Re{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}}});function ss(t,e){let r=os[e],n=Tu(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Tu(t,e){if(e){let r=os[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function Pu(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Ru(t){let e=Object.values(os);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var qt,f$,Ag,h$,VM,os,Ng,WM,zg=v(()=>{"use strict";qt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},f$=["Bash","WebFetch","Read","Grep","Agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],Ag=f$.join("|"),h$=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],VM=h$.join("|"),os={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},Ng=[qt.PRE_TOOL_USE,qt.SESSION_START],WM=[qt.POST_TOOL_USE,qt.PRE_COMPACT,qt.USER_PROMPT_SUBMIT]});var Cu={};Me(Cu,{ClaudeCodeAdapter:()=>Ou});import{readFileSync as Li,writeFileSync as jg,existsSync as g$,readdirSync as _$,chmodSync as y$,accessSync as x$,constants as v$}from"node:fs";import{resolve as an,join as Dg}from"node:path";import{homedir as is}from"node:os";var Ou,Iu=v(()=>{"use strict";Eu();zg();Ou=class extends Qn{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return an(is(),".claude","settings.json")}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Li(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){jg(this.getSettingsPath(),JSON.stringify(e,null,2)+`
4
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,qt.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,qt.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[Dg(e,"hooks","hooks.json"),Dg(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Li(n,"utf-8"),s=JSON.parse(o);if(s.hooks)return s.hooks}catch{}}checkHookType(e,r,n){let o=e?.[n];if(o&&o.length>0&&o.some(i=>ss(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>ss(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=an(is(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Li(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=[an(is(),".claude"),an(is(),".config","claude")];for(let r of e){let n=an(r,"plugins","cache","context-mode","context-mode");try{let s=_$(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let m=d;if(!Ru(m))return!0;let f=m.hooks??[];return f.every(h=>!h.command||!Pu(h.command))?!0:f.every(h=>{let g=h.command?Pu(h.command):null;return g?g$(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&Ng.every(c=>this.checkHookType(void 0,s,c))){for(let c of Object.keys(n)){let u=n[c];if(!Array.isArray(u))continue;let l=u.filter(m=>!Ru(m)),d=u.length-l.length;d>0&&(n[c]=l,o.push(`Removed ${d} duplicate ${c} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[qt.PRE_TOOL_USE,qt.SESSION_START];for(let a of i){let c=Tu(a,e);if(a===qt.PRE_TOOL_USE){let u={matcher:Ag,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(m=>ss(m,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(m=>ss(m,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(os)){let o=an(e,"hooks",n);try{x$(o,v$.R_OK),y$(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=an(is(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Li(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();jg(n,JSON.stringify(o,null,2)+`
5
- `,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function eo(t,e){let r=Au[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var Ce,Au,eL,tL,Mg=v(()=>{"use strict";Ce={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Au={[Ce.BEFORE_TOOL]:"beforetool.mjs",[Ce.AFTER_TOOL]:"aftertool.mjs",[Ce.PRE_COMPRESS]:"precompress.mjs",[Ce.SESSION_START]:"sessionstart.mjs"},eL=[Ce.BEFORE_TOOL,Ce.SESSION_START],tL=[Ce.AFTER_TOOL,Ce.PRE_COMPRESS]});var Fg={};Me(Fg,{GeminiCLIAdapter:()=>zu});import{readFileSync as Nu,writeFileSync as Lg,mkdirSync as S$,accessSync as b$,chmodSync as k$,constants as w$}from"node:fs";import{resolve as as,join as $$}from"node:path";import{homedir as Fi}from"node:os";var zu,Ug=v(()=>{"use strict";Ht();Mg();zu=class extends Re{constructor(){super([".gemini"])}name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return as(Fi(),".gemini","settings.json")}generateHookConfig(e){return{[Ce.BEFORE_TOOL]:[{matcher:"run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode",hooks:[{type:"command",command:eo(Ce.BEFORE_TOOL,e)}]}],[Ce.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:eo(Ce.AFTER_TOOL,e)}]}],[Ce.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:eo(Ce.PRE_COMPRESS,e)}]}],[Ce.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:eo(Ce.SESSION_START,e)}]}]}}readSettings(){try{let e=Nu(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=as(Fi(),".gemini");S$(r,{recursive:!0}),Lg(this.getSettingsPath(),JSON.stringify(e,null,2)+`
6
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[Ce.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?.[Ce.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=as(Fi(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(Nu(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:Ce.BEFORE_TOOL},{name:Ce.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:eo(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(f=>f.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[],n=$$(e,"hooks","gemini-cli");for(let o of Object.values(Au)){let s=as(n,o);try{b$(s,w$.R_OK),k$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=as(Fi(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(Nu(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Lg(n,JSON.stringify(o,null,2)+`
7
- `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var cn,cL,uL,Zg=v(()=>{"use strict";cn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},cL=[cn.BEFORE,cn.AFTER],uL=[cn.COMPACTING]});var qg={};Me(qg,{OpenCodeAdapter:()=>ju});import{readFileSync as Hg,writeFileSync as T$,mkdirSync as P$,copyFileSync as R$,accessSync as O$,constants as C$}from"node:fs";import{resolve as nr,join as un}from"node:path";import{homedir as Nr}from"node:os";function E$(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var ju,Bg=v(()=>{"use strict";Ht();Zg();ju=class extends Re{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){super([".config",e]),this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??nr(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[nr("kilo.json"),nr("kilo.jsonc"),nr(".kilo","kilo.json"),nr(".kilo","kilo.jsonc"),un(Nr(),".config","kilo","kilo.json"),un(Nr(),".config","kilo","kilo.jsonc")]:[nr("opencode.json"),nr("opencode.jsonc"),nr(".opencode","opencode.json"),nr(".opencode","opencode.jsonc"),un(Nr(),".config","opencode","opencode.json"),un(Nr(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||un(Nr(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||un(Nr(),".config");let r=un(e,this.platform,"context-mode","sessions");return P$(r,{recursive:!0}),r}generateHookConfig(e){return{[cn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(Nr()))),n=null,o;for(let s of e)try{let i=Hg(s,"utf-8"),a=s.endsWith(".jsonc")?E$(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){T$(this.getSettingsPath(),JSON.stringify(e,null,2)+`
8
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"warn",message:`SessionStart not supported in ${this.name} (see issues #14808, #5409)`}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=nr(Nr(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Hg(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{O$(this.settingsPath,C$.R_OK);let r=this.settingsPath+".bak";return R$(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var ln,gL,_L,Vg=v(()=>{"use strict";ln={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},gL=[ln.TOOL_CALL_BEFORE,ln.TOOL_CALL_AFTER],_L=[ln.COMMAND_NEW]});var Gg={};Me(Gg,{OpenClawAdapter:()=>Lu});import{readFileSync as Du,writeFileSync as I$,copyFileSync as A$,accessSync as N$,constants as z$}from"node:fs";import{resolve as zr,join as Wg}from"node:path";import{homedir as Mu}from"node:os";var Lu,Kg=v(()=>{"use strict";Ht();Vg();Lu=class extends Re{constructor(){super([".openclaw"])}name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return zr("openclaw.json")}generateHookConfig(e){return{[ln.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[ln.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[ln.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[zr("openclaw.json"),zr(".openclaw","openclaw.json"),Wg(Mu(),".openclaw","openclaw.json")];for(let r of e)try{let n=Du(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=zr("openclaw.json");I$(r,JSON.stringify(e,null,2)+`
9
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=zr(Mu(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Du(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=zr("node_modules","context-mode","package.json"),r=JSON.parse(Du(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[zr("openclaw.json"),zr(".openclaw","openclaw.json"),Wg(Mu(),".openclaw","openclaw.json")];for(let r of e)try{N$(r,z$.R_OK);let n=r+".bak";return A$(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Yg={};Me(Yg,{CodexAdapter:()=>Uu});import{readFileSync as Fu}from"node:fs";import{resolve as Jg,dirname as j$}from"node:path";import{fileURLToPath as D$}from"node:url";import{homedir as M$}from"node:os";var Uu,Xg=v(()=>{"use strict";Ht();Uu=class extends Re{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:r.cwd,raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getSettingsPath(){return Jg(M$(),".codex","config.toml")}generateHookConfig(e){return{PreToolUse:[{matcher:"local_shell|shell|shell_command|exec_command|container.exec|Bash|Shell|grep_files|mcp__plugin_context-mode_context-mode__ctx_execute|mcp__plugin_context-mode_context-mode__ctx_execute_file|mcp__plugin_context-mode_context-mode__ctx_batch_execute",hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/codex/userpromptsubmit.mjs`}]}],Stop:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/codex/stop.mjs`}]}]}}readSettings(){try{return{_raw_toml:Fu(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI hooks are stable. Configure ~/.codex/hooks.json for PreToolUse, PostToolUse, SessionStart, UserPromptSubmit, and Stop."}]}checkPluginRegistration(){try{let e=Fu(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Jg(j$(D$(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Fu(e,"utf-8")}catch{return`# context-mode
2
+ var yw=Object.create;var du=Object.defineProperty;var xw=Object.getOwnPropertyDescriptor;var vw=Object.getOwnPropertyNames;var Sw=Object.getPrototypeOf,bw=Object.prototype.hasOwnProperty;var ag=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var v=(t,e)=>()=>(t&&(e=t(t=0)),e);var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Le=(t,e)=>{for(var r in e)du(t,r,{get:e[r],enumerable:!0})},kw=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of vw(e))!bw.call(t,o)&&o!==r&&du(t,o,{get:()=>e[o],enumerable:!(n=xw(e,o))||n.enumerable});return t};var ns=(t,e,r)=>(r=t!=null?yw(Sw(t)):{},kw(e||!t||!t.__esModule?du(r,"default",{value:t,enumerable:!0}):r,t));var yu=R((eM,vg)=>{"use strict";var _u={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"},Aw={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},Nw={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?_u.up():"");return t&&(e+=_u.left),e}};vg.exports={cursor:_u,scroll:Aw,erase:Nw,beep:"\x07"}});var Tg=R((jM,$u)=>{var ji=process||{},$g=ji.argv||[],zi=ji.env||{},s$=!(zi.NO_COLOR||$g.includes("--no-color"))&&(!!zi.FORCE_COLOR||$g.includes("--color")||ji.platform==="win32"||(ji.stdout||{}).isTTY&&zi.TERM!=="dumb"||!!zi.CI),i$=(t,e,r=t)=>n=>{let o=""+n,s=o.indexOf(e,t.length);return~s?t+a$(o,e,r,s)+e:t+o+e},a$=(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)},Eg=(t=s$)=>{let e=t?i$:()=>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")}};$u.exports=Eg();$u.exports.createColors=Eg});import{execFileSync as c$,execSync as Pg}from"node:child_process";import{existsSync as Eu}from"node:fs";function qe(t){try{let e=Di?`where ${t}`:`command -v ${t}`;return Pg(e,{stdio:"pipe"}),!0}catch{return!1}}function Rg(){if(qe("bun"))return!0;for(let t of Og())if(Eu(t))return!0;return!1}function u$(){if(qe("bun"))return"bun";for(let e of Og())if(Eu(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return Di?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function Og(){let t=process.env.HOME??process.env.USERPROFILE??"";if(Di){let e=process.env.LOCALAPPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function l$(){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(Eu(e))return e;try{let r=Pg("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 Ht(t,e=["--version"]){try{return c$(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function Qn(){let e=Rg()?u$():null;return{javascript:e??process.execPath,typescript:e||(qe("tsx")?"tsx":qe("ts-node")?"ts-node":null),python:qe("python3")?"python3":qe("python")?"python":null,shell:Di?l$()??(qe("sh")?"sh":qe("powershell")?"powershell":"cmd.exe"):qe("bash")?"bash":"sh",ruby:qe("ruby")?"ruby":null,go:qe("go")?"go":null,rust:qe("rustc")?"rustc":null,php:qe("php")?"php":null,perl:qe("perl")?"perl":null,r:qe("Rscript")?"Rscript":qe("r")?"r":null,elixir:qe("elixir")?"elixir":null}}function eo(){return Rg()}function Mi(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Ht(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Ht(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Ht(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Ht(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Ht(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Ht(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${Ht(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Ht(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Ht(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Ht(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Ht(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 Li(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 Cg(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var Di,Fi=v(()=>{"use strict";Di=process.platform==="win32"});var Ig,Ag=v(()=>{"use strict";Ig={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{createHash as Ng}from"node:crypto";import{join as Tu}from"node:path";import{accessSync as d$,copyFileSync as p$,constants as m$,mkdirSync as f$}from"node:fs";import{homedir as h$}from"node:os";var Oe,qt=v(()=>{"use strict";Oe=class{constructor(e){this.sessionDirSegments=e}getSessionDir(){let e=Tu(h$(),...this.sessionDirSegments,"context-mode","sessions");return f$(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ng("sha256").update(e).digest("hex").slice(0,16);return Tu(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ng("sha256").update(e).digest("hex").slice(0,16);return Tu(this.getSessionDir(),`${r}-events.md`)}backupSettings(){let e=this.getSettingsPath();try{d$(e,m$.R_OK);let r=e+".bak";return p$(e,r),r}catch{return null}}}});var to,Pu=v(()=>{"use strict";qt();to=class extends Oe{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env[this.projectDirEnvVar]??process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}}});function fe(t){let e=process.execPath.replace(/\\/g,"/"),r=t.replace(/\\/g,"/");return`"${e}" "${r}"`}var xr=v(()=>{"use strict"});function as(t,e){let r=is[e],n=Ru(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Ru(t,e){if(e){let r=is[t];return fe(`${e}/hooks/${r}`)}return`context-mode hook claude-code ${t.toLowerCase()}`}function Ou(t){let e=t.match(/"[^"]+"\s+"([^"]+\.mjs)"/);return e?e[1]:t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Cu(t){let e=Object.values(is);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Bt,g$,zg,_$,JM,is,jg,YM,Dg=v(()=>{"use strict";xr();Bt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},g$=["Bash","WebFetch","Read","Grep","Agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],zg=g$.join("|"),_$=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],JM=_$.join("|"),is={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},jg=[Bt.PRE_TOOL_USE,Bt.SESSION_START],YM=[Bt.POST_TOOL_USE,Bt.PRE_COMPACT,Bt.USER_PROMPT_SUBMIT]});var Au={};Le(Au,{ClaudeCodeAdapter:()=>Iu});import{readFileSync as Ui,writeFileSync as Mg,existsSync as y$,readdirSync as x$,chmodSync as v$,accessSync as S$,constants as b$}from"node:fs";import{resolve as un,join as Lg}from"node:path";import{homedir as cs}from"node:os";var Iu,Nu=v(()=>{"use strict";Pu();Dg();Iu=class extends to{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return un(cs(),".claude","settings.json")}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=Ui(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Mg(this.getSettingsPath(),JSON.stringify(e,null,2)+`
4
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Bt.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,Bt.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[Lg(e,"hooks","hooks.json"),Lg(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Ui(n,"utf-8"),s=JSON.parse(o);if(s.hooks)return s.hooks}catch{}}checkHookType(e,r,n){let o=e?.[n];if(o&&o.length>0&&o.some(i=>as(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>as(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=un(cs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Ui(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=[un(cs(),".claude"),un(cs(),".config","claude")];for(let r of e){let n=un(r,"plugins","cache","context-mode","context-mode");try{let s=x$(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let m=d;if(!Cu(m))return!0;let f=m.hooks??[];return f.every(h=>!h.command||!Ou(h.command))?!0:f.every(h=>{let g=h.command?Ou(h.command):null;return g?y$(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&jg.every(c=>this.checkHookType(void 0,s,c))){for(let c of Object.keys(n)){let u=n[c];if(!Array.isArray(u))continue;let l=u.filter(m=>!Cu(m)),d=u.length-l.length;d>0&&(n[c]=l,o.push(`Removed ${d} duplicate ${c} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[Bt.PRE_TOOL_USE,Bt.SESSION_START];for(let a of i){let c=Ru(a,e);if(a===Bt.PRE_TOOL_USE){let u={matcher:zg,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(m=>as(m,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(m=>as(m,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(is)){let o=un(e,"hooks",n);try{S$(o,b$.R_OK),v$(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=un(cs(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Ui(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();Mg(n,JSON.stringify(o,null,2)+`
5
+ `,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function ro(t,e){let r=zu[t];return e&&r?fe(`${e}/hooks/${r}`):`context-mode hook gemini-cli ${t.toLowerCase()}`}var Ie,zu,sL,iL,Fg=v(()=>{"use strict";xr();Ie={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},zu={[Ie.BEFORE_TOOL]:"beforetool.mjs",[Ie.AFTER_TOOL]:"aftertool.mjs",[Ie.PRE_COMPRESS]:"precompress.mjs",[Ie.SESSION_START]:"sessionstart.mjs"},sL=[Ie.BEFORE_TOOL,Ie.SESSION_START],iL=[Ie.AFTER_TOOL,Ie.PRE_COMPRESS]});var Zg={};Le(Zg,{GeminiCLIAdapter:()=>Du});import{readFileSync as ju,writeFileSync as Ug,mkdirSync as k$,accessSync as w$,chmodSync as $$,constants as E$}from"node:fs";import{resolve as us,join as T$}from"node:path";import{homedir as Zi}from"node:os";var Du,Hg=v(()=>{"use strict";qt();Fg();Du=class extends Oe{constructor(){super([".gemini"])}name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return us(Zi(),".gemini","settings.json")}generateHookConfig(e){return{[Ie.BEFORE_TOOL]:[{matcher:"run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode",hooks:[{type:"command",command:ro(Ie.BEFORE_TOOL,e)}]}],[Ie.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:ro(Ie.AFTER_TOOL,e)}]}],[Ie.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:ro(Ie.PRE_COMPRESS,e)}]}],[Ie.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:ro(Ie.SESSION_START,e)}]}]}}readSettings(){try{let e=ju(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=us(Zi(),".gemini");k$(r,{recursive:!0}),Ug(this.getSettingsPath(),JSON.stringify(e,null,2)+`
6
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[Ie.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?.[Ie.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=us(Zi(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ju(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:Ie.BEFORE_TOOL},{name:Ie.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:ro(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(f=>f.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[],n=T$(e,"hooks","gemini-cli");for(let o of Object.values(zu)){let s=us(n,o);try{w$(s,E$.R_OK),$$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=us(Zi(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ju(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Ug(n,JSON.stringify(o,null,2)+`
7
+ `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var ln,mL,fL,qg=v(()=>{"use strict";ln={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},mL=[ln.BEFORE,ln.AFTER],fL=[ln.COMPACTING]});var Vg={};Le(Vg,{OpenCodeAdapter:()=>Mu});import{readFileSync as Bg,writeFileSync as R$,mkdirSync as O$,copyFileSync as C$,accessSync as I$,constants as A$}from"node:fs";import{resolve as or,join as dn}from"node:path";import{homedir as jr}from"node:os";function P$(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Mu,Wg=v(()=>{"use strict";qt();qg();Mu=class extends Oe{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){super([".config",e]),this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??or(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[or("kilo.json"),or("kilo.jsonc"),or(".kilo","kilo.json"),or(".kilo","kilo.jsonc"),dn(jr(),".config","kilo","kilo.json"),dn(jr(),".config","kilo","kilo.jsonc")]:[or("opencode.json"),or("opencode.jsonc"),or(".opencode","opencode.json"),or(".opencode","opencode.jsonc"),dn(jr(),".config","opencode","opencode.json"),dn(jr(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||dn(jr(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||dn(jr(),".config");let r=dn(e,this.platform,"context-mode","sessions");return O$(r,{recursive:!0}),r}generateHookConfig(e){return{[ln.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[ln.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[ln.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(jr()))),n=null,o;for(let s of e)try{let i=Bg(s,"utf-8"),a=s.endsWith(".jsonc")?P$(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){R$(this.getSettingsPath(),JSON.stringify(e,null,2)+`
8
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"warn",message:`SessionStart not supported in ${this.name} (see issues #14808, #5409)`}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=or(jr(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Bg(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{I$(this.settingsPath,A$.R_OK);let r=this.settingsPath+".bak";return C$(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var pn,SL,bL,Gg=v(()=>{"use strict";pn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},SL=[pn.TOOL_CALL_BEFORE,pn.TOOL_CALL_AFTER],bL=[pn.COMMAND_NEW]});var Jg={};Le(Jg,{OpenClawAdapter:()=>Uu});import{readFileSync as Lu,writeFileSync as N$,copyFileSync as z$,accessSync as j$,constants as D$}from"node:fs";import{resolve as Dr,join as Kg}from"node:path";import{homedir as Fu}from"node:os";var Uu,Yg=v(()=>{"use strict";qt();Gg();Uu=class extends Oe{constructor(){super([".openclaw"])}name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Dr("openclaw.json")}generateHookConfig(e){return{[pn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[pn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[pn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Dr("openclaw.json"),Dr(".openclaw","openclaw.json"),Kg(Fu(),".openclaw","openclaw.json")];for(let r of e)try{let n=Lu(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Dr("openclaw.json");N$(r,JSON.stringify(e,null,2)+`
9
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Dr(Fu(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Lu(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Dr("node_modules","context-mode","package.json"),r=JSON.parse(Lu(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[Dr("openclaw.json"),Dr(".openclaw","openclaw.json"),Kg(Fu(),".openclaw","openclaw.json")];for(let r of e)try{j$(r,D$.R_OK);let n=r+".bak";return z$(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Qg={};Le(Qg,{CodexAdapter:()=>Hu});import{readFileSync as Zu}from"node:fs";import{resolve as Xg,dirname as M$}from"node:path";import{fileURLToPath as L$}from"node:url";import{homedir as F$}from"node:os";var Hu,e_=v(()=>{"use strict";qt();xr();Hu=class extends Oe{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:r.cwd,raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getSettingsPath(){return Xg(F$(),".codex","config.toml")}generateHookConfig(e){return{PreToolUse:[{matcher:"local_shell|shell|shell_command|exec_command|container.exec|Bash|Shell|grep_files|mcp__plugin_context-mode_context-mode__ctx_execute|mcp__plugin_context-mode_context-mode__ctx_execute_file|mcp__plugin_context-mode_context-mode__ctx_batch_execute",hooks:[{type:"command",command:fe(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/sessionstart.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/codex/userpromptsubmit.mjs`)}]}],Stop:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/codex/stop.mjs`)}]}]}}readSettings(){try{return{_raw_toml:Zu(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI hooks are stable. Configure ~/.codex/hooks.json for PreToolUse, PostToolUse, SessionStart, UserPromptSubmit, and Stop."}]}checkPluginRegistration(){try{let e=Zu(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Xg(M$(L$(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Zu(e,"utf-8")}catch{return`# context-mode
10
10
 
11
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as Qg,writeFileSync as L$,mkdirSync as F$,accessSync as U$,chmodSync as Z$,constants as H$}from"node:fs";import{resolve as Ui,join as q$}from"node:path";var to,Zu=v(()=>{"use strict";Ht();to=class extends Re{paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Ui(".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=Qg(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=Qg(Ui(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();F$(Ui(".github","hooks"),{recursive:!0}),L$(r,JSON.stringify(e,null,2)+`
12
- `,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=q$(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Ui(n,o);try{U$(s,H$.R_OK),Z$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function e_(t,e){let r=Hu[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 $t,Hu,AL,NL,t_=v(()=>{"use strict";$t={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Hu={[$t.PRE_TOOL_USE]:"pretooluse.mjs",[$t.POST_TOOL_USE]:"posttooluse.mjs",[$t.PRE_COMPACT]:"precompact.mjs",[$t.SESSION_START]:"sessionstart.mjs"},AL=[$t.PRE_TOOL_USE,$t.SESSION_START],NL=[$t.POST_TOOL_USE,$t.PRE_COMPACT]});var r_={};Me(r_,{VSCodeCopilotAdapter:()=>Vu});import{readFileSync as qu,mkdirSync as B$,accessSync as V$,existsSync as W$,constants as G$}from"node:fs";import{resolve as cs,join as Zi}from"node:path";import{homedir as Bu}from"node:os";var Vu,n_=v(()=>{"use strict";Zu();t_();Vu=class extends to{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:$t,HOOK_SCRIPTS:Hu,buildHookCommand:e_};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=cs(".github","context-mode","sessions"),r=Zi(Bu(),".vscode","context-mode","sessions"),n=W$(cs(".github"))?e:r;return B$(n,{recursive:!0}),n}validateHooks(e){let r=[],n=cs(".github","hooks");try{V$(n,G$.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=cs(n,"context-mode.json");try{let s=qu(o,"utf-8"),a=JSON.parse(s).hooks;a?.[$t.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?.[$t.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=cs(".vscode","mcp.json"),r=qu(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[Zi(Bu(),".vscode","extensions"),Zi(Bu(),".vscode-insiders","extensions")];for(let r of e)try{let n=qu(Zi(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}}});function o_(t,e){let r=Wu[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/jetbrains-copilot/${r}"`:`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var Et,Wu,UL,ZL,s_=v(()=>{"use strict";Et={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Wu={[Et.PRE_TOOL_USE]:"pretooluse.mjs",[Et.POST_TOOL_USE]:"posttooluse.mjs",[Et.PRE_COMPACT]:"precompact.mjs",[Et.SESSION_START]:"sessionstart.mjs"},UL=[Et.PRE_TOOL_USE,Et.SESSION_START],ZL=[Et.POST_TOOL_USE,Et.PRE_COMPACT]});var i_={};Me(i_,{JetBrainsCopilotAdapter:()=>Gu});import{readFileSync as K$}from"node:fs";var Gu,a_=v(()=>{"use strict";Zu();s_();Gu=class extends to{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:Et,HOOK_SCRIPTS:Wu,buildHookCommand:o_};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}validateHooks(e){let r=[];try{let n=K$(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[Et.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[Et.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function Hi(t,e){let r=Ku[e],n=Tt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function Tt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var fe,Ku,J$,Ju,c_,u_,l_=v(()=>{"use strict";fe={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},Ku={[fe.PRE_TOOL_USE]:"pretooluse.mjs",[fe.POST_TOOL_USE]:"posttooluse.mjs",[fe.SESSION_START]:"sessionstart.mjs",[fe.STOP]:"stop.mjs"},J$=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Ju=J$.join("|"),c_=[fe.PRE_TOOL_USE],u_=[fe.POST_TOOL_USE]});var m_={};Me(m_,{CursorAdapter:()=>Qu});import{readFileSync as Yu,writeFileSync as Y$,mkdirSync as X$,accessSync as Q$,chmodSync as eE,constants as tE,existsSync as d_}from"node:fs";import{execSync as rE}from"node:child_process";import{resolve as ro,join as qi}from"node:path";import{homedir as Xu}from"node:os";var p_,Qu,f_=v(()=>{"use strict";Ht();l_();p_="/Library/Application Support/Cursor/hooks.json",Qu=class extends Re{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return ro(".cursor","hooks.json")}generateHookConfig(e){return{[fe.PRE_TOOL_USE]:[{type:"command",command:Tt(fe.PRE_TOOL_USE),matcher:Ju,loop_limit:null,failClosed:!1}],[fe.POST_TOOL_USE]:[{type:"command",command:Tt(fe.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[fe.SESSION_START]:[{type:"command",command:Tt(fe.SESSION_START),loop_limit:null,failClosed:!1}],[fe.STOP]:[{type:"command",command:Tt(fe.STOP),loop_limit:null,failClosed:!1}],[fe.AFTER_AGENT_RESPONSE]:[{type:"command",command:Tt(fe.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Yu(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();X$(ro(".cursor"),{recursive:!0}),Y$(r,JSON.stringify(e,null,2)+`
13
- `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of c_){let i=o[s],a=Array.isArray(i)&&i.some(c=>Hi(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of u_){let i=o[s],a=Array.isArray(i)&&i.some(c=>Hi(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return d_(p_)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[ro(".cursor","mcp.json"),qi(Xu(),".cursor","mcp.json")];for(let r of e)try{let n=Yu(r,"utf-8"),o=JSON.parse(n),s=o.mcpServers??o.servers;if(!s)continue;if(Object.entries(s).some(([a,c])=>a.includes("context-mode")?!0:!c||typeof c!="object"?!1:c.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${r}`}}catch{continue}return{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return rE("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,fe.PRE_TOOL_USE,{type:"command",command:Tt(fe.PRE_TOOL_USE),matcher:Ju,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,fe.POST_TOOL_USE,{type:"command",command:Tt(fe.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,fe.SESSION_START,{type:"command",command:Tt(fe.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,fe.STOP,{type:"command",command:Tt(fe.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,fe.AFTER_AGENT_RESPONSE,{type:"command",command:Tt(fe.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=qi(e,"hooks","cursor");for(let o of Object.values(Ku)){let s=ro(n,o);try{Q$(s,tE.R_OK),eE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),qi(Xu(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(p_),e}getProjectDir(e){return e.cwd||e.workspace_roots?.[0]||process.env.CURSOR_CWD||process.cwd()}extractSessionId(e){return e.conversation_id?e.conversation_id:e.session_id?e.session_id:process.env.CURSOR_SESSION_ID?process.env.CURSOR_SESSION_ID:process.env.CURSOR_TRACE_ID?process.env.CURSOR_TRACE_ID:`pid-${process.ppid}`}loadNativeHookConfig(){for(let e of this.getCandidateHookConfigPaths())try{let r=Yu(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[ro(".claude","settings.json"),ro(".claude","settings.local.json"),qi(Xu(),".claude","settings.json")].some(r=>d_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Hi(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var __={};Me(__,{AntigravityAdapter:()=>tl});import{readFileSync as Bi,writeFileSync as nE,mkdirSync as oE}from"node:fs";import{resolve as el,dirname as h_}from"node:path";import{fileURLToPath as sE}from"node:url";import{homedir as g_}from"node:os";var tl,y_=v(()=>{"use strict";Ht();tl=class extends Re{constructor(){super([".gemini"])}name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return el(g_(),".gemini","antigravity","mcp_config.json")}generateHookConfig(e){return{}}readSettings(){try{let e=Bi(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();oE(h_(r),{recursive:!0}),nE(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Antigravity does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Bi(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.gemini/antigravity/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.gemini/antigravity/mcp_config.json"}}}getInstalledVersion(){try{let e=el(g_(),".gemini","extensions","context-mode","package.json");return JSON.parse(Bi(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=el(h_(sE(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Bi(e,"utf-8")}catch{return`# context-mode
11
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as t_,writeFileSync as U$,mkdirSync as Z$,accessSync as H$,chmodSync as q$,constants as B$}from"node:fs";import{resolve as Hi,join as V$}from"node:path";var no,qu=v(()=>{"use strict";qt();no=class extends Oe{paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Hi(".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=t_(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=t_(Hi(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Z$(Hi(".github","hooks"),{recursive:!0}),U$(r,JSON.stringify(e,null,2)+`
12
+ `,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=V$(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Hi(n,o);try{H$(s,B$.R_OK),q$(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function r_(t,e){let r=Bu[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?fe(`${e}/hooks/${r}`):`context-mode hook vscode-copilot ${t.toLowerCase()}`}var Et,Bu,FL,UL,n_=v(()=>{"use strict";xr();Et={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Bu={[Et.PRE_TOOL_USE]:"pretooluse.mjs",[Et.POST_TOOL_USE]:"posttooluse.mjs",[Et.PRE_COMPACT]:"precompact.mjs",[Et.SESSION_START]:"sessionstart.mjs"},FL=[Et.PRE_TOOL_USE,Et.SESSION_START],UL=[Et.POST_TOOL_USE,Et.PRE_COMPACT]});var o_={};Le(o_,{VSCodeCopilotAdapter:()=>Gu});import{readFileSync as Vu,mkdirSync as W$,accessSync as G$,existsSync as K$,constants as J$}from"node:fs";import{resolve as ls,join as qi}from"node:path";import{homedir as Wu}from"node:os";var Gu,s_=v(()=>{"use strict";qu();n_();Gu=class extends no{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:Et,HOOK_SCRIPTS:Bu,buildHookCommand:r_};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=ls(".github","context-mode","sessions"),r=qi(Wu(),".vscode","context-mode","sessions"),n=K$(ls(".github"))?e:r;return W$(n,{recursive:!0}),n}validateHooks(e){let r=[],n=ls(".github","hooks");try{G$(n,J$.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=ls(n,"context-mode.json");try{let s=Vu(o,"utf-8"),a=JSON.parse(s).hooks;a?.[Et.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?.[Et.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=ls(".vscode","mcp.json"),r=Vu(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=[qi(Wu(),".vscode","extensions"),qi(Wu(),".vscode-insiders","extensions")];for(let r of e)try{let n=Vu(qi(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}}});function i_(t,e){let r=Ku[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?fe(`${e}/hooks/jetbrains-copilot/${r}`):`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var Tt,Ku,KL,JL,a_=v(()=>{"use strict";xr();Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Ku={[Tt.PRE_TOOL_USE]:"pretooluse.mjs",[Tt.POST_TOOL_USE]:"posttooluse.mjs",[Tt.PRE_COMPACT]:"precompact.mjs",[Tt.SESSION_START]:"sessionstart.mjs"},KL=[Tt.PRE_TOOL_USE,Tt.SESSION_START],JL=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT]});var c_={};Le(c_,{JetBrainsCopilotAdapter:()=>Ju});import{readFileSync as Y$}from"node:fs";var Ju,u_=v(()=>{"use strict";qu();a_();Ju=class extends no{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:Tt,HOOK_SCRIPTS:Ku,buildHookCommand:i_};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}validateHooks(e){let r=[];try{let n=Y$(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[Tt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[Tt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function Bi(t,e){let r=Yu[e],n=Pt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function Pt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var he,Yu,X$,Xu,l_,d_,p_=v(()=>{"use strict";he={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},Yu={[he.PRE_TOOL_USE]:"pretooluse.mjs",[he.POST_TOOL_USE]:"posttooluse.mjs",[he.SESSION_START]:"sessionstart.mjs",[he.STOP]:"stop.mjs"},X$=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Xu=X$.join("|"),l_=[he.PRE_TOOL_USE],d_=[he.POST_TOOL_USE]});var h_={};Le(h_,{CursorAdapter:()=>tl});import{readFileSync as Qu,writeFileSync as Q$,mkdirSync as eE,accessSync as tE,chmodSync as rE,constants as nE,existsSync as m_}from"node:fs";import{execSync as oE}from"node:child_process";import{resolve as oo,join as Vi}from"node:path";import{homedir as el}from"node:os";var f_,tl,g_=v(()=>{"use strict";qt();p_();f_="/Library/Application Support/Cursor/hooks.json",tl=class extends Oe{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return oo(".cursor","hooks.json")}generateHookConfig(e){return{[he.PRE_TOOL_USE]:[{type:"command",command:Pt(he.PRE_TOOL_USE),matcher:Xu,loop_limit:null,failClosed:!1}],[he.POST_TOOL_USE]:[{type:"command",command:Pt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[he.SESSION_START]:[{type:"command",command:Pt(he.SESSION_START),loop_limit:null,failClosed:!1}],[he.STOP]:[{type:"command",command:Pt(he.STOP),loop_limit:null,failClosed:!1}],[he.AFTER_AGENT_RESPONSE]:[{type:"command",command:Pt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Qu(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();eE(oo(".cursor"),{recursive:!0}),Q$(r,JSON.stringify(e,null,2)+`
13
+ `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of l_){let i=o[s],a=Array.isArray(i)&&i.some(c=>Bi(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of d_){let i=o[s],a=Array.isArray(i)&&i.some(c=>Bi(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return m_(f_)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[oo(".cursor","mcp.json"),Vi(el(),".cursor","mcp.json")];for(let r of e)try{let n=Qu(r,"utf-8"),o=JSON.parse(n),s=o.mcpServers??o.servers;if(!s)continue;if(Object.entries(s).some(([a,c])=>a.includes("context-mode")?!0:!c||typeof c!="object"?!1:c.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${r}`}}catch{continue}return{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return oE("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,he.PRE_TOOL_USE,{type:"command",command:Pt(he.PRE_TOOL_USE),matcher:Xu,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.POST_TOOL_USE,{type:"command",command:Pt(he.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.SESSION_START,{type:"command",command:Pt(he.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.STOP,{type:"command",command:Pt(he.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,he.AFTER_AGENT_RESPONSE,{type:"command",command:Pt(he.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=Vi(e,"hooks","cursor");for(let o of Object.values(Yu)){let s=oo(n,o);try{tE(s,nE.R_OK),rE(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Vi(el(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(f_),e}getProjectDir(e){return e.cwd||e.workspace_roots?.[0]||process.env.CURSOR_CWD||process.cwd()}extractSessionId(e){return e.conversation_id?e.conversation_id:e.session_id?e.session_id:process.env.CURSOR_SESSION_ID?process.env.CURSOR_SESSION_ID:process.env.CURSOR_TRACE_ID?process.env.CURSOR_TRACE_ID:`pid-${process.ppid}`}loadNativeHookConfig(){for(let e of this.getCandidateHookConfigPaths())try{let r=Qu(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[oo(".claude","settings.json"),oo(".claude","settings.local.json"),Vi(el(),".claude","settings.json")].some(r=>m_(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Bi(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var x_={};Le(x_,{AntigravityAdapter:()=>nl});import{readFileSync as Wi,writeFileSync as sE,mkdirSync as iE}from"node:fs";import{resolve as rl,dirname as __}from"node:path";import{fileURLToPath as aE}from"node:url";import{homedir as y_}from"node:os";var nl,v_=v(()=>{"use strict";qt();nl=class extends Oe{constructor(){super([".gemini"])}name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return rl(y_(),".gemini","antigravity","mcp_config.json")}generateHookConfig(e){return{}}readSettings(){try{let e=Wi(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();iE(__(r),{recursive:!0}),sE(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Antigravity does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Wi(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.gemini/antigravity/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.gemini/antigravity/mcp_config.json"}}}getInstalledVersion(){try{let e=rl(y_(),".gemini","extensions","context-mode","package.json");return JSON.parse(Wi(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=rl(__(aE(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Wi(e,"utf-8")}catch{return`# context-mode
14
14
 
15
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function us(t,e){let r=x_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function ls(t,e){let r=x_[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Ie,x_,iE,rl,s2,i2,v_=v(()=>{"use strict";Ie={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},x_={[Ie.PRE_TOOL_USE]:"pretooluse.mjs",[Ie.POST_TOOL_USE]:"posttooluse.mjs"},iE=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],rl=iE.join("|"),s2=[Ie.PRE_TOOL_USE],i2=[Ie.POST_TOOL_USE]});var w_={};Me(w_,{KiroAdapter:()=>nl});import{readFileSync as no,writeFileSync as S_,mkdirSync as b_}from"node:fs";import{resolve as oo,dirname as k_}from"node:path";import{fileURLToPath as aE}from"node:url";import{homedir as Vi}from"node:os";var nl,$_=v(()=>{"use strict";Ht();v_();nl=class extends Re{constructor(){super([".kiro"])}name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return oo(Vi(),".kiro","settings","mcp.json")}generateHookConfig(e){return{[Ie.PRE_TOOL_USE]:[{matcher:rl,hooks:[{type:"command",command:ls(Ie.PRE_TOOL_USE,e)}]}],[Ie.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ls(Ie.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=no(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();b_(k_(r),{recursive:!0}),S_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=oo(Vi(),".kiro","agents","default.json");try{let s=JSON.parse(no(n,"utf-8")).hooks??{};for(let i of[Ie.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>us(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[Ie.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>us(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=no(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=oo(Vi(),".kiro","extensions","context-mode","package.json");return JSON.parse(no(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=oo(Vi(),".kiro","agents"),o=oo(n,"default.json");try{b_(n,{recursive:!0});let s={};try{s=JSON.parse(no(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Ie.PRE_TOOL_USE]??[];a.some(u=>us(u,Ie.PRE_TOOL_USE))||(a.push({matcher:rl,command:ls(Ie.PRE_TOOL_USE,e)}),i[Ie.PRE_TOOL_USE]=a,r.push(`Added ${Ie.PRE_TOOL_USE} hook to ${o}`));let c=i[Ie.POST_TOOL_USE]??[];c.some(u=>us(u,Ie.POST_TOOL_USE))||(c.push({matcher:"*",command:ls(Ie.POST_TOOL_USE,e)}),i[Ie.POST_TOOL_USE]=c,r.push(`Added ${Ie.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,S_(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=oo(k_(aE(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return no(e,"utf-8")}catch{return`# context-mode
15
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function ds(t,e){let r=S_[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function ps(t,e){let r=S_[t];return e&&r?fe(`${e}/hooks/kiro/${r}`):`context-mode hook kiro ${t.toLowerCase()}`}var Ae,S_,cE,ol,f2,h2,b_=v(()=>{"use strict";xr();Ae={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},S_={[Ae.PRE_TOOL_USE]:"pretooluse.mjs",[Ae.POST_TOOL_USE]:"posttooluse.mjs"},cE=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],ol=cE.join("|"),f2=[Ae.PRE_TOOL_USE],h2=[Ae.POST_TOOL_USE]});var E_={};Le(E_,{KiroAdapter:()=>sl});import{readFileSync as so,writeFileSync as k_,mkdirSync as w_}from"node:fs";import{resolve as io,dirname as $_}from"node:path";import{fileURLToPath as uE}from"node:url";import{homedir as Gi}from"node:os";var sl,T_=v(()=>{"use strict";qt();b_();sl=class extends Oe{constructor(){super([".kiro"])}name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return io(Gi(),".kiro","settings","mcp.json")}generateHookConfig(e){return{[Ae.PRE_TOOL_USE]:[{matcher:ol,hooks:[{type:"command",command:ps(Ae.PRE_TOOL_USE,e)}]}],[Ae.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ps(Ae.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=so(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();w_($_(r),{recursive:!0}),k_(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=io(Gi(),".kiro","agents","default.json");try{let s=JSON.parse(so(n,"utf-8")).hooks??{};for(let i of[Ae.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ds(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[Ae.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ds(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=so(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=io(Gi(),".kiro","extensions","context-mode","package.json");return JSON.parse(so(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=io(Gi(),".kiro","agents"),o=io(n,"default.json");try{w_(n,{recursive:!0});let s={};try{s=JSON.parse(so(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Ae.PRE_TOOL_USE]??[];a.some(u=>ds(u,Ae.PRE_TOOL_USE))||(a.push({matcher:ol,command:ps(Ae.PRE_TOOL_USE,e)}),i[Ae.PRE_TOOL_USE]=a,r.push(`Added ${Ae.PRE_TOOL_USE} hook to ${o}`));let c=i[Ae.POST_TOOL_USE]??[];c.some(u=>ds(u,Ae.POST_TOOL_USE))||(c.push({matcher:"*",command:ps(Ae.POST_TOOL_USE,e)}),i[Ae.POST_TOOL_USE]=c,r.push(`Added ${Ae.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,k_(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=io($_(uE(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return so(e,"utf-8")}catch{return`# context-mode
16
16
 
17
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var P_={};Me(P_,{ZedAdapter:()=>sl});import{readFileSync as ol,writeFileSync as cE,mkdirSync as uE}from"node:fs";import{resolve as E_,dirname as T_}from"node:path";import{fileURLToPath as lE}from"node:url";import{homedir as dE}from"node:os";var sl,R_=v(()=>{"use strict";Ht();sl=class extends Re{constructor(){super([".config","zed"])}name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return E_(dE(),".config","zed","settings.json")}generateHookConfig(e){return{}}readSettings(){try{let e=ol(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();uE(T_(r),{recursive:!0}),cE(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=ol(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=E_(T_(lE(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return ol(e,"utf-8")}catch{return`# context-mode
17
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var O_={};Le(O_,{ZedAdapter:()=>al});import{readFileSync as il,writeFileSync as lE,mkdirSync as dE}from"node:fs";import{resolve as P_,dirname as R_}from"node:path";import{fileURLToPath as pE}from"node:url";import{homedir as mE}from"node:os";var al,C_=v(()=>{"use strict";qt();al=class extends Oe{constructor(){super([".config","zed"])}name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return P_(mE(),".config","zed","settings.json")}generateHookConfig(e){return{}}readSettings(){try{let e=il(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();dE(R_(r),{recursive:!0}),lE(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=il(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=P_(R_(pE(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return il(e,"utf-8")}catch{return`# context-mode
18
18
 
19
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var I_={};Me(I_,{QwenCodeAdapter:()=>il});import{readFileSync as pE,existsSync as mE}from"node:fs";import{resolve as O_,join as fE}from"node:path";import{homedir as C_}from"node:os";var il,A_=v(()=>{"use strict";Eu();il=class extends Qn{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return O_(C_(),".qwen","settings.json")}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|"),hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}]}}readSettings(){try{let e=pE(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=sg("node:fs");r(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){let e=this.readSettings();if(!e)return"not installed";let r=e.hooks;if(!r)return"not installed";let n=["pretooluse.mjs","posttooluse.mjs","precompact.mjs","sessionstart.mjs","userpromptsubmit.mjs"];for(let[,o]of Object.entries(r))if(Array.isArray(o)){for(let s of o)if(s.hooks?.some(a=>a.command&&n.some(c=>a.command.includes(c))))return"installed (hooks configured)"}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let i of Object.keys(n)){let a=n[i];if(!Array.isArray(a))continue;let c=a.filter(l=>{let m=l.hooks??[];return m.some(p=>p.command&&/context-mode|pretooluse|posttooluse|precompact|sessionstart|userpromptsubmit/i.test(p.command))?m.every(p=>{if(!p.command)return!0;let h=p.command.match(/node\s+"?([^"]+\.mjs)"?/);return h?mE(h[1]):!0}):!0}),u=a.length-c.length;u>0&&(n[i]=c,o.push(`Removed ${u} stale ${i} hook(s)`))}let s=[{name:"PreToolUse",script:"pretooluse.mjs",matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|")},{name:"SessionStart",script:"sessionstart.mjs",matcher:""}];for(let{name:i,script:a,matcher:c}of s){let u={matcher:c,hooks:[{type:"command",command:`node ${e}/hooks/${a}`}]},l=n[i];if(l&&Array.isArray(l)){let d=l.findIndex(m=>m.hooks?.some(p=>p.command?.includes(a))??!1);d>=0?(l[d]=u,o.push(`Updated ${i} hook`)):(l.push(u),o.push(`Added ${i} hook`)),n[i]=l}else n[i]=[u],o.push(`Created ${i} hooks`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:O_(fE(C_(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var z_={};Me(z_,{PLATFORM_ENV_VARS:()=>N_,detectPlatform:()=>dn,getAdapter:()=>ds});import{existsSync as Pt}from"node:fs";import{resolve as Rt}from"node:path";import{homedir as hE}from"node:os";function dn(t){if(t?.name){let n=Og[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of N_)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=hE();return Pt(Rt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Pt(Rt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Pt(Rt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Pt(Rt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Pt(Rt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Pt(Rt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Pt(Rt(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:Pt(Rt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Pt(Rt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Pt(Rt(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:Pt(Rt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Pt(Rt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function ds(t){let e=t??dn().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Iu(),Cu));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Ug(),Fg));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Bg(),qg));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Kg(),Gg));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Xg(),Yg));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(n_(),r_));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(a_(),i_));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(f_(),m_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(y_(),__));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>($_(),w_));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(R_(),P_));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(A_(),I_));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Iu(),Cu));return new r}}}var N_,al=v(()=>{"use strict";Cg();N_=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["openclaw",["OPENCLAW_HOME","OPENCLAW_CLI"]],["kilo",["KILO","KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["codex",["CODEX_CI","CODEX_THREAD_ID"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY","IDEA_HOME","JETBRAINS_CLIENT_ID"]],["qwen-code",["QWEN_PROJECT_DIR","QWEN_SESSION_ID"]]]});var te,cl,O,or,ps=v(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(te||(te={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(cl||(cl={}));O=te.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),or=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}}});var w,gE,ct,Wi=v(()=>{ps();w=te.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"]),gE=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),ct=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,te.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()}};ct.create=t=>new ct(t)});var _E,yr,ul=v(()=>{Wi();ps();_E=(t,e)=>{let r;switch(t.code){case w.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case w.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,te.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:r=`Unrecognized key(s) in object: ${te.joinValues(t.keys,", ")}`;break;case w.invalid_union:r="Invalid input";break;case w.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${te.joinValues(t.options)}`;break;case w.invalid_enum_value:r=`Invalid enum value. Expected ${te.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}"`:te.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,te.assertNever(t)}return{message:r}},yr=_E});function yE(t){j_=t}function so(){return j_}var j_,Gi=v(()=>{ul();j_=yr});function P(t,e){let r=so(),n=ms({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===yr?void 0:yr].filter(o=>!!o)});t.common.issues.push(n)}var ms,xE,qe,M,pn,Ye,Ki,Ji,jr,io,ll=v(()=>{Gi();ul();ms=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}},xE=[];qe=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 M;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 M;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}}},M=Object.freeze({status:"aborted"}),pn=t=>({status:"dirty",value:t}),Ye=t=>({status:"valid",value:t}),Ki=t=>t.status==="aborted",Ji=t=>t.status==="dirty",jr=t=>t.status==="valid",io=t=>typeof Promise<"u"&&t instanceof Promise});var D_=v(()=>{});var A,M_=v(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(A||(A={}))});function G(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 Z_(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 jE(t){return new RegExp(`^${Z_(t)}$`)}function H_(t){let e=`${U_}T${Z_(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 DE(t,e){return!!((e==="v4"||!e)&&RE.test(t)||(e==="v6"||!e)&&CE.test(t))}function ME(t,e){if(!$E.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 LE(t,e){return!!((e==="v4"||!e)&&OE.test(t)||(e==="v6"||!e)&&IE.test(t))}function FE(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 ao(t){if(t instanceof lt){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=ut.create(ao(n))}return new lt({...t._def,shape:()=>e})}else return t instanceof Sr?new Sr({...t._def,type:ao(t.element)}):t instanceof ut?ut.create(ao(t.unwrap())):t instanceof ir?ir.create(ao(t.unwrap())):t instanceof sr?sr.create(t.items.map(e=>ao(e))):t}function pl(t,e){let r=or(t),n=or(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=te.objectKeys(e),s=te.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=pl(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===O.array&&n===O.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=pl(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===O.date&&n===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function q_(t,e){return new kn({values:t,typeName:$.ZodEnum,...G(e)})}function F_(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function B_(t,e={},r){return t?Mr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=F_(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=F_(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Mr.create()}var Ot,L_,Y,vE,SE,bE,kE,wE,$E,EE,TE,PE,dl,RE,OE,CE,IE,AE,NE,U_,zE,Dr,mn,fn,hn,gn,co,_n,yn,Mr,vr,Bt,uo,Sr,lt,xn,xr,Yi,vn,sr,Xi,lo,po,Qi,Sn,bn,kn,wn,Lr,Ct,ut,ir,$n,En,mo,UE,fs,hs,Tn,ZE,$,HE,V_,W_,qE,BE,G_,VE,WE,GE,KE,JE,YE,XE,QE,eT,ml,tT,rT,nT,oT,sT,iT,aT,cT,uT,lT,dT,pT,mT,fT,hT,gT,_T,yT,xT,vT,ST,bT,kT,wT,K_=v(()=>{Wi();Gi();M_();ll();ps();Ot=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}},L_=(t,e)=>{if(jr(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 ct(t.common.issues);return this._error=r,this._error}}};Y=class{get description(){return this._def.description}_getType(e){return or(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new qe,ctx:{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(io(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:or(e)},o=this._parseSync({data:e,path:n.path,parent:n});return L_(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:or(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return jr(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=>jr(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:or(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(io(o)?o:Promise.resolve(o));return L_(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 Ct({schema:this,typeName:$.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return ut.create(this,this._def)}nullable(){return ir.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Sr.create(this)}promise(){return Lr.create(this,this._def)}or(e){return xn.create([this,e],this._def)}and(e){return vn.create(this,e,this._def)}transform(e){return new Ct({...G(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new $n({...G(this._def),innerType:this,defaultValue:r,typeName:$.ZodDefault})}brand(){return new fs({typeName:$.ZodBranded,type:this,...G(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new En({...G(this._def),innerType:this,catchValue:r,typeName:$.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return hs.create(this,e)}readonly(){return Tn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},vE=/^c[^\s-]{8,}$/i,SE=/^[0-9a-z]+$/,bE=/^[0-9A-HJKMNP-TV-Z]{26}$/i,kE=/^[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,wE=/^[a-z0-9_-]{21}$/i,$E=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,EE=/^[-+]?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)?)??$/,TE=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,PE="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",RE=/^(?:(?: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])$/,OE=/^(?:(?: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])$/,CE=/^(([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]))$/,IE=/^(([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])$/,AE=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,NE=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,U_="((\\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])))",zE=new RegExp(`^${U_}$`);Dr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.string,received:s.parsedType}),M}let n=new qe,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")TE.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")dl||(dl=new RegExp(PE,"u")),dl.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")kE.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")wE.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")vE.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")SE.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")bE.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"?H_(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"?zE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?jE(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"?EE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?DE(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"?ME(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"?LE(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"?AE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?NE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:w.invalid_string,message:s.message}),n.dirty()):te.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:w.invalid_string,...A.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...A.errToObj(e)})}url(e){return this._addCheck({kind:"url",...A.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...A.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...A.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...A.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...A.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...A.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...A.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...A.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...A.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...A.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...A.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...A.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...A.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...A.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...A.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...A.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...A.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...A.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...A.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...A.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...A.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...A.errToObj(r)})}nonempty(e){return this.min(1,A.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Dr.create=t=>new Dr({checks:[],typeName:$.ZodString,coerce:t?.coerce??!1,...G(t)});mn=class t extends Y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==O.number){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.number,received:s.parsedType}),M}let n,o=new qe;for(let s of this._def.checks)s.kind==="int"?te.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"?FE(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()):te.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:A.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:A.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:A.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:A.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&te.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)}};mn.create=t=>new mn({checks:[],typeName:$.ZodNumber,coerce:t?.coerce||!1,...G(t)});fn=class t extends Y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==O.bigint)return this._getInvalidInput(e);let n,o=new qe;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()):te.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:O.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};fn.create=t=>new fn({checks:[],typeName:$.ZodBigInt,coerce:t?.coerce??!1,...G(t)});hn=class extends Y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.boolean,received:n.parsedType}),M}return Ye(e.data)}};hn.create=t=>new hn({typeName:$.ZodBoolean,coerce:t?.coerce||!1,...G(t)});gn=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_date}),M}let n=new qe,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()):te.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:A.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:A.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};gn.create=t=>new gn({checks:[],coerce:t?.coerce||!1,typeName:$.ZodDate,...G(t)});co=class extends Y{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.symbol,received:n.parsedType}),M}return Ye(e.data)}};co.create=t=>new co({typeName:$.ZodSymbol,...G(t)});_n=class extends Y{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.undefined,received:n.parsedType}),M}return Ye(e.data)}};_n.create=t=>new _n({typeName:$.ZodUndefined,...G(t)});yn=class extends Y{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.null,received:n.parsedType}),M}return Ye(e.data)}};yn.create=t=>new yn({typeName:$.ZodNull,...G(t)});Mr=class extends Y{constructor(){super(...arguments),this._any=!0}_parse(e){return Ye(e.data)}};Mr.create=t=>new Mr({typeName:$.ZodAny,...G(t)});vr=class extends Y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ye(e.data)}};vr.create=t=>new vr({typeName:$.ZodUnknown,...G(t)});Bt=class extends Y{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:O.never,received:r.parsedType}),M}};Bt.create=t=>new Bt({typeName:$.ZodNever,...G(t)});uo=class extends Y{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.void,received:n.parsedType}),M}return Ye(e.data)}};uo.create=t=>new uo({typeName:$.ZodVoid,...G(t)});Sr=class t extends Y{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return P(r,{code:w.invalid_type,expected:O.array,received:r.parsedType}),M;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 Ot(r,i,r.path,a)))).then(i=>qe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Ot(r,i,r.path,a)));return qe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:A.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:A.toString(r)}})}nonempty(e){return this.min(1,e)}};Sr.create=(t,e)=>new Sr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...G(e)});lt=class t extends Y{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=te.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let u=this._getOrReturnCtx(e);return P(u,{code:w.invalid_type,expected:O.object,received:u.parsedType}),M}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Bt&&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 Ot(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Bt){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 Ot(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>qe.mergeObjectSync(n,u)):qe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return A.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:A.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:$.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of te.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 te.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return ao(this)}partial(e){let r={};for(let n of te.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 te.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof ut;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return q_(te.objectKeys(this.shape))}};lt.create=(t,e)=>new lt({shape:()=>t,unknownKeys:"strip",catchall:Bt.create(),typeName:$.ZodObject,...G(e)});lt.strictCreate=(t,e)=>new lt({shape:()=>t,unknownKeys:"strict",catchall:Bt.create(),typeName:$.ZodObject,...G(e)});lt.lazycreate=(t,e)=>new lt({shape:t,unknownKeys:"strip",catchall:Bt.create(),typeName:$.ZodObject,...G(e)});xn=class extends Y{_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 ct(a.ctx.common.issues));return P(r,{code:w.invalid_union,unionErrors:i}),M}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 ct(c));return P(r,{code:w.invalid_union,unionErrors:a}),M}}get options(){return this._def.options}};xn.create=(t,e)=>new xn({options:t,typeName:$.ZodUnion,...G(e)});xr=t=>t instanceof Sn?xr(t.schema):t instanceof Ct?xr(t.innerType()):t instanceof bn?[t.value]:t instanceof kn?t.options:t instanceof wn?te.objectValues(t.enum):t instanceof $n?xr(t._def.innerType):t instanceof _n?[void 0]:t instanceof yn?[null]:t instanceof ut?[void 0,...xr(t.unwrap())]:t instanceof ir?[null,...xr(t.unwrap())]:t instanceof fs||t instanceof Tn?xr(t.unwrap()):t instanceof En?xr(t._def.innerType):[],Yi=class t extends Y{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return P(r,{code:w.invalid_type,expected:O.object,received:r.parsedType}),M;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]}),M)}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=xr(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:$.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...G(n)})}};vn=class extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Ki(s)||Ki(i))return M;let a=pl(s.value,i.value);return a.valid?((Ji(s)||Ji(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:w.invalid_intersection_types}),M)};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}))}};vn.create=(t,e,r)=>new vn({left:t,right:e,typeName:$.ZodIntersection,...G(r)});sr=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return P(n,{code:w.invalid_type,expected:O.array,received:n.parsedType}),M;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"}),M;!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 Ot(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>qe.mergeArray(r,i)):qe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};sr.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new sr({items:t,typeName:$.ZodTuple,rest:null,...G(e)})};Xi=class t extends Y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.object)return P(n,{code:w.invalid_type,expected:O.object,received:n.parsedType}),M;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Ot(n,a,n.path,a)),value:i._parse(new Ot(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?qe.mergeObjectAsync(r,o):qe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Y?new t({keyType:e,valueType:r,typeName:$.ZodRecord,...G(n)}):new t({keyType:Dr.create(),valueType:e,typeName:$.ZodRecord,...G(r)})}},lo=class extends Y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.map)return P(n,{code:w.invalid_type,expected:O.map,received:n.parsedType}),M;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new Ot(n,a,n.path,[u,"key"])),value:s._parse(new Ot(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 M;(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 M;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};lo.create=(t,e,r)=>new lo({valueType:e,keyType:t,typeName:$.ZodMap,...G(r)});po=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return P(n,{code:w.invalid_type,expected:O.set,received:n.parsedType}),M;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 M;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 Ot(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:A.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};po.create=(t,e)=>new po({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...G(e)});Qi=class t extends Y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return P(r,{code:w.invalid_type,expected:O.function,received:r.parsedType}),M;function n(a,c){return ms({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,so(),yr].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:c}})}function o(a,c){return ms({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,so(),yr].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 Lr){let a=this;return Ye(async function(...c){let u=new ct([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(o(d,f)),u})})}else{let a=this;return Ye(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new ct([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new ct([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:sr.create(e).rest(vr.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||sr.create([]).rest(vr.create()),returns:r||vr.create(),typeName:$.ZodFunction,...G(n)})}},Sn=class extends Y{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})}};Sn.create=(t,e)=>new Sn({getter:t,typeName:$.ZodLazy,...G(e)});bn=class extends Y{_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}),M}return{status:"valid",value:e.data}}get value(){return this._def.value}};bn.create=(t,e)=>new bn({value:t,typeName:$.ZodLiteral,...G(e)});kn=class t extends Y{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:te.joinValues(n),received:r.parsedType,code:w.invalid_type}),M}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}),M}return Ye(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})}};kn.create=q_;wn=class extends Y{_parse(e){let r=te.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=te.objectValues(r);return P(n,{expected:te.joinValues(o),received:n.parsedType,code:w.invalid_type}),M}if(this._cache||(this._cache=new Set(te.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=te.objectValues(r);return P(n,{received:n.data,code:w.invalid_enum_value,options:o}),M}return Ye(e.data)}get enum(){return this._def.values}};wn.create=(t,e)=>new wn({values:t,typeName:$.ZodNativeEnum,...G(e)});Lr=class extends Y{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return P(r,{code:w.invalid_type,expected:O.promise,received:r.parsedType}),M;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return Ye(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Lr.create=(t,e)=>new Lr({type:t,typeName:$.ZodPromise,...G(e)});Ct=class extends Y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{P(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return M;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?M:c.status==="dirty"?pn(c.value):r.value==="dirty"?pn(c.value):c});{if(r.value==="aborted")return M;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?M:a.status==="dirty"?pn(a.value):r.value==="dirty"?pn(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"?M:(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"?M:(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(!jr(i))return M;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=>jr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):M);te.assertNever(o)}};Ct.create=(t,e,r)=>new Ct({schema:t,typeName:$.ZodEffects,effect:e,...G(r)});Ct.createWithPreprocess=(t,e,r)=>new Ct({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...G(r)});ut=class extends Y{_parse(e){return this._getType(e)===O.undefined?Ye(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ut.create=(t,e)=>new ut({innerType:t,typeName:$.ZodOptional,...G(e)});ir=class extends Y{_parse(e){return this._getType(e)===O.null?Ye(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ir.create=(t,e)=>new ir({innerType:t,typeName:$.ZodNullable,...G(e)});$n=class extends Y{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===O.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};$n.create=(t,e)=>new $n({innerType:t,typeName:$.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...G(e)});En=class extends Y{_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 io(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ct(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new ct(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};En.create=(t,e)=>new En({innerType:t,typeName:$.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...G(e)});mo=class extends Y{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};mo.create=t=>new mo({typeName:$.ZodNaN,...G(t)});UE=Symbol("zod_brand"),fs=class extends Y{_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}},hs=class t extends Y{_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"?M:s.status==="dirty"?(r.dirty(),pn(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"?M:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:$.ZodPipeline})}},Tn=class extends Y{_parse(e){let r=this._def.innerType._parse(e),n=o=>(jr(o)&&(o.value=Object.freeze(o.value)),o);return io(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Tn.create=(t,e)=>new Tn({innerType:t,typeName:$.ZodReadonly,...G(e)});ZE={object:lt.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"})($||($={}));HE=(t,e={message:`Input not instance of ${t.name}`})=>B_(r=>r instanceof t,e),V_=Dr.create,W_=mn.create,qE=mo.create,BE=fn.create,G_=hn.create,VE=gn.create,WE=co.create,GE=_n.create,KE=yn.create,JE=Mr.create,YE=vr.create,XE=Bt.create,QE=uo.create,eT=Sr.create,ml=lt.create,tT=lt.strictCreate,rT=xn.create,nT=Yi.create,oT=vn.create,sT=sr.create,iT=Xi.create,aT=lo.create,cT=po.create,uT=Qi.create,lT=Sn.create,dT=bn.create,pT=kn.create,mT=wn.create,fT=Lr.create,hT=Ct.create,gT=ut.create,_T=ir.create,yT=Ct.createWithPreprocess,xT=hs.create,vT=()=>V_().optional(),ST=()=>W_().optional(),bT=()=>G_().optional(),kT={string:(t=>Dr.create({...t,coerce:!0})),number:(t=>mn.create({...t,coerce:!0})),boolean:(t=>hn.create({...t,coerce:!0})),bigint:(t=>fn.create({...t,coerce:!0})),date:(t=>gn.create({...t,coerce:!0}))},wT=M});var q={};Me(q,{BRAND:()=>UE,DIRTY:()=>pn,EMPTY_PATH:()=>xE,INVALID:()=>M,NEVER:()=>wT,OK:()=>Ye,ParseStatus:()=>qe,Schema:()=>Y,ZodAny:()=>Mr,ZodArray:()=>Sr,ZodBigInt:()=>fn,ZodBoolean:()=>hn,ZodBranded:()=>fs,ZodCatch:()=>En,ZodDate:()=>gn,ZodDefault:()=>$n,ZodDiscriminatedUnion:()=>Yi,ZodEffects:()=>Ct,ZodEnum:()=>kn,ZodError:()=>ct,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>Qi,ZodIntersection:()=>vn,ZodIssueCode:()=>w,ZodLazy:()=>Sn,ZodLiteral:()=>bn,ZodMap:()=>lo,ZodNaN:()=>mo,ZodNativeEnum:()=>wn,ZodNever:()=>Bt,ZodNull:()=>yn,ZodNullable:()=>ir,ZodNumber:()=>mn,ZodObject:()=>lt,ZodOptional:()=>ut,ZodParsedType:()=>O,ZodPipeline:()=>hs,ZodPromise:()=>Lr,ZodReadonly:()=>Tn,ZodRecord:()=>Xi,ZodSchema:()=>Y,ZodSet:()=>po,ZodString:()=>Dr,ZodSymbol:()=>co,ZodTransformer:()=>Ct,ZodTuple:()=>sr,ZodType:()=>Y,ZodUndefined:()=>_n,ZodUnion:()=>xn,ZodUnknown:()=>vr,ZodVoid:()=>uo,addIssueToContext:()=>P,any:()=>JE,array:()=>eT,bigint:()=>BE,boolean:()=>G_,coerce:()=>kT,custom:()=>B_,date:()=>VE,datetimeRegex:()=>H_,defaultErrorMap:()=>yr,discriminatedUnion:()=>nT,effect:()=>hT,enum:()=>pT,function:()=>uT,getErrorMap:()=>so,getParsedType:()=>or,instanceof:()=>HE,intersection:()=>oT,isAborted:()=>Ki,isAsync:()=>io,isDirty:()=>Ji,isValid:()=>jr,late:()=>ZE,lazy:()=>lT,literal:()=>dT,makeIssue:()=>ms,map:()=>aT,nan:()=>qE,nativeEnum:()=>mT,never:()=>XE,null:()=>KE,nullable:()=>_T,number:()=>W_,object:()=>ml,objectUtil:()=>cl,oboolean:()=>bT,onumber:()=>ST,optional:()=>gT,ostring:()=>vT,pipeline:()=>xT,preprocess:()=>yT,promise:()=>fT,quotelessJson:()=>gE,record:()=>iT,set:()=>cT,setErrorMap:()=>yE,strictObject:()=>tT,string:()=>V_,symbol:()=>WE,transformer:()=>hT,tuple:()=>sT,undefined:()=>GE,union:()=>rT,unknown:()=>YE,util:()=>te,void:()=>QE});var ea=v(()=>{Gi();ll();D_();ps();K_();Wi()});var gs=v(()=>{ea()});function b(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}function yt(t){return t&&Object.assign(ta,t),ta}var ET,br,ta,fo=v(()=>{ET=Object.freeze({status:"aborted"});br=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ta={}});var re={};Me(re,{BIGINT_FORMAT_RANGES:()=>Y_,Class:()=>hl,NUMBER_FORMAT_RANGES:()=>bl,aborted:()=>Rn,allowsEval:()=>xl,assert:()=>CT,assertEqual:()=>TT,assertIs:()=>RT,assertNever:()=>OT,assertNotEqual:()=>PT,assignProp:()=>yl,cached:()=>xs,captureStackTrace:()=>na,cleanEnum:()=>qT,cleanRegex:()=>Ss,clone:()=>xt,createTransparentProxy:()=>DT,defineLazy:()=>ge,esc:()=>Pn,escapeRegex:()=>Fr,extend:()=>FT,finalizeIssue:()=>Vt,floatSafeRemainder:()=>_l,getElementAtPath:()=>IT,getEnumValues:()=>ys,getLengthableOrigin:()=>bs,getParsedType:()=>jT,getSizableOrigin:()=>X_,isObject:()=>ho,isPlainObject:()=>go,issue:()=>kl,joinValues:()=>ra,jsonStringifyReplacer:()=>gl,merge:()=>UT,normalizeParams:()=>L,nullish:()=>vs,numKeys:()=>zT,omit:()=>LT,optionalKeys:()=>Sl,partial:()=>ZT,pick:()=>MT,prefixIssues:()=>ar,primitiveTypes:()=>J_,promiseAllObject:()=>AT,propertyKeyTypes:()=>vl,randomString:()=>NT,required:()=>HT,stringifyPrimitive:()=>oa,unwrapMessage:()=>_s});function TT(t){return t}function PT(t){return t}function RT(t){}function OT(t){throw new Error}function CT(t){}function ys(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 ra(t,e="|"){return t.map(r=>oa(r)).join(e)}function gl(t,e){return typeof e=="bigint"?e.toString():e}function xs(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function vs(t){return t==null}function Ss(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function _l(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 ge(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 yl(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function IT(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function AT(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 NT(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Pn(t){return JSON.stringify(t)}function ho(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function go(t){if(ho(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(ho(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function zT(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function Fr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function xt(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 DT(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 oa(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Sl(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function MT(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 xt(t,{...t._zod.def,shape:r,checks:[]})}function LT(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 xt(t,{...t._zod.def,shape:r,checks:[]})}function FT(t,e){if(!go(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 yl(this,"shape",n),n},checks:[]};return xt(t,r)}function UT(t,e){return xt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return yl(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function ZT(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 xt(e,{...e._zod.def,shape:o,checks:[]})}function HT(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 xt(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 ar(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function _s(t){return typeof t=="string"?t:t?.message}function Vt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=_s(t.inst?._zod.def?.error?.(t))??_s(e?.error?.(t))??_s(r.customError?.(t))??_s(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function X_(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function bs(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function kl(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function qT(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var na,xl,jT,vl,J_,bl,Y_,hl,cr=v(()=>{na=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};xl=xs(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});jT=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}`)}},vl=new Set(["string","number","symbol"]),J_=new Set(["string","number","bigint","boolean","symbol","undefined"]);bl={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]},Y_={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};hl=class{constructor(...e){}}});function wl(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function $l(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var Q_,sa,ks,El=v(()=>{fo();cr();Q_=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,gl,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},sa=b("$ZodError",Q_),ks=b("$ZodError",Q_,{Parent:Error})});var Tl,Pl,Rl,Ol,Cl,On,Il,Cn,Al=v(()=>{fo();El();cr();Tl=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 br;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Vt(c,s,yt())));throw na(a,o?.callee),a}return i.value},Pl=Tl(ks),Rl=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=>Vt(c,s,yt())));throw na(a,o?.callee),a}return i.value},Ol=Rl(ks),Cl=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 br;return s.issues.length?{success:!1,error:new(t??sa)(s.issues.map(i=>Vt(i,o,yt())))}:{success:!0,data:s.value}},On=Cl(ks),Il=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=>Vt(i,o,yt())))}:{success:!0,data:s.value}},Cn=Il(ks)});function uy(){return new RegExp(VT,"u")}function xy(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 vy(t){return new RegExp(`^${xy(t)}$`)}function Sy(t){let e=xy({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(`^${_y}T(?:${n})$`)}var ey,ty,ry,ny,oy,sy,iy,ay,Nl,cy,VT,ly,dy,py,my,fy,zl,hy,gy,_y,yy,by,ky,wy,$y,Ey,Ty,Py,aa=v(()=>{ey=/^[cC][^\s-]{8,}$/,ty=/^[0-9a-z]+$/,ry=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ny=/^[0-9a-vA-V]{20}$/,oy=/^[A-Za-z0-9]{27}$/,sy=/^[a-zA-Z0-9_-]{21}$/,iy=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,ay=/^([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})$/,Nl=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,cy=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,VT="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";ly=/^(?:(?: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])$/,dy=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,py=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,my=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,fy=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,zl=/^[A-Za-z0-9_-]*$/,hy=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,gy=/^\+(?:[0-9]){6,14}[0-9]$/,_y="(?:(?:\\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])))",yy=new RegExp(`^${_y}$`);by=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},ky=/^\d+$/,wy=/^-?\d+(?:\.\d+)?/i,$y=/true|false/i,Ey=/null/i,Ty=/^[^A-Z]*$/,Py=/^[^a-z]*$/});var Be,Ry,jl,Dl,Oy,Cy,Iy,Ay,Ny,ws,zy,jy,Dy,My,Ly,Fy,Uy,ca=v(()=>{fo();aa();cr();Be=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Ry={number:"number",bigint:"bigint",object:"date"},jl=b("$ZodCheckLessThan",(t,e)=>{Be.init(t,e);let r=Ry[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})}}),Dl=b("$ZodCheckGreaterThan",(t,e)=>{Be.init(t,e);let r=Ry[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})}}),Oy=b("$ZodCheckMultipleOf",(t,e)=>{Be.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):_l(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})}}),Cy=b("$ZodCheckNumberFormat",(t,e)=>{Be.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=bl[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=ky)}),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})}}),Iy=b("$ZodCheckMaxLength",(t,e)=>{var r;Be.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!vs(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=bs(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Ay=b("$ZodCheckMinLength",(t,e)=>{var r;Be.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!vs(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=bs(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Ny=b("$ZodCheckLengthEquals",(t,e)=>{var r;Be.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!vs(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=bs(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})}}),ws=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Be.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=()=>{})}),zy=b("$ZodCheckRegex",(t,e)=>{ws.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})}}),jy=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ty),ws.init(t,e)}),Dy=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Py),ws.init(t,e)}),My=b("$ZodCheckIncludes",(t,e)=>{Be.init(t,e);let r=Fr(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})}}),Ly=b("$ZodCheckStartsWith",(t,e)=>{Be.init(t,e);let r=new RegExp(`^${Fr(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})}}),Fy=b("$ZodCheckEndsWith",(t,e)=>{Be.init(t,e);let r=new RegExp(`.*${Fr(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})}}),Uy=b("$ZodCheckOverwrite",(t,e)=>{Be.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var ua,Ml=v(()=>{ua=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
19
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var N_={};Le(N_,{QwenCodeAdapter:()=>cl});import{readFileSync as fE,existsSync as hE}from"node:fs";import{resolve as I_,join as gE}from"node:path";import{homedir as A_}from"node:os";var cl,z_=v(()=>{"use strict";Pu();xr();cl=class extends to{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return I_(A_(),".qwen","settings.json")}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|"),hooks:[{type:"command",command:fe(`${e}/hooks/pretooluse.mjs`)}]}],PostToolUse:[{matcher:"run_shell_command|read_file|write_file|edit|glob|grep_search|todo_write|agent|ask_user_question|mcp__",hooks:[{type:"command",command:fe(`${e}/hooks/posttooluse.mjs`)}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/sessionstart.mjs`)}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/precompact.mjs`)}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:fe(`${e}/hooks/userpromptsubmit.mjs`)}]}]}}readSettings(){try{let e=fE(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=ag("node:fs");r(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){let e=this.readSettings();if(!e)return"not installed";let r=e.hooks;if(!r)return"not installed";let n=["pretooluse.mjs","posttooluse.mjs","precompact.mjs","sessionstart.mjs","userpromptsubmit.mjs"];for(let[,o]of Object.entries(r))if(Array.isArray(o)){for(let s of o)if(s.hooks?.some(a=>a.command&&n.some(c=>a.command.includes(c))))return"installed (hooks configured)"}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let i of Object.keys(n)){let a=n[i];if(!Array.isArray(a))continue;let c=a.filter(l=>{let m=l.hooks??[];return m.some(p=>p.command&&/context-mode|pretooluse|posttooluse|precompact|sessionstart|userpromptsubmit/i.test(p.command))?m.every(p=>{if(!p.command)return!0;let h=p.command.match(/"[^"]+"\s+"([^"]+\.mjs)"/),g=p.command.match(/node\s+"?([^"]+\.mjs)"?/),_=h||g;return _?hE(_[1]):!0}):!0}),u=a.length-c.length;u>0&&(n[i]=c,o.push(`Removed ${u} stale ${i} hook(s)`))}let s=[{name:"PreToolUse",script:"pretooluse.mjs",matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].join("|")},{name:"SessionStart",script:"sessionstart.mjs",matcher:""}];for(let{name:i,script:a,matcher:c}of s){let u={matcher:c,hooks:[{type:"command",command:fe(`${e}/hooks/${a}`)}]},l=n[i];if(l&&Array.isArray(l)){let d=l.findIndex(m=>m.hooks?.some(p=>p.command?.includes(a))??!1);d>=0?(l[d]=u,o.push(`Updated ${i} hook`)):(l.push(u),o.push(`Added ${i} hook`)),n[i]=l}else n[i]=[u],o.push(`Created ${i} hooks`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:I_(gE(A_(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var D_={};Le(D_,{PLATFORM_ENV_VARS:()=>j_,detectPlatform:()=>mn,getAdapter:()=>ms});import{existsSync as Rt}from"node:fs";import{resolve as Ot}from"node:path";import{homedir as _E}from"node:os";function mn(t){if(t?.name){let n=Ig[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of j_)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=_E();return Rt(Ot(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Rt(Ot(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Rt(Ot(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Rt(Ot(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Rt(Ot(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Rt(Ot(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Rt(Ot(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:Rt(Ot(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Rt(Ot(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Rt(Ot(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:Rt(Ot(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Rt(Ot(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function ms(t){let e=t??mn().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Nu(),Au));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Hg(),Zg));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Wg(),Vg));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Yg(),Jg));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(e_(),Qg));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(s_(),o_));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(u_(),c_));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(g_(),h_));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(v_(),x_));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(T_(),E_));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(C_(),O_));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(z_(),N_));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Nu(),Au));return new r}}}var j_,ul=v(()=>{"use strict";Ag();j_=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["openclaw",["OPENCLAW_HOME","OPENCLAW_CLI"]],["kilo",["KILO","KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["codex",["CODEX_CI","CODEX_THREAD_ID"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY","IDEA_HOME","JETBRAINS_CLIENT_ID"]],["qwen-code",["QWEN_PROJECT_DIR","QWEN_SESSION_ID"]]]});var te,ll,O,sr,fs=v(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(te||(te={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(ll||(ll={}));O=te.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),sr=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}}});var w,yE,ut,Ki=v(()=>{fs();w=te.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),yE=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),ut=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,te.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()}};ut.create=t=>new ut(t)});var xE,vr,dl=v(()=>{Ki();fs();xE=(t,e)=>{let r;switch(t.code){case w.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case w.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,te.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:r=`Unrecognized key(s) in object: ${te.joinValues(t.keys,", ")}`;break;case w.invalid_union:r="Invalid input";break;case w.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${te.joinValues(t.options)}`;break;case w.invalid_enum_value:r=`Invalid enum value. Expected ${te.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}"`:te.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,te.assertNever(t)}return{message:r}},vr=xE});function vE(t){M_=t}function ao(){return M_}var M_,Ji=v(()=>{dl();M_=vr});function P(t,e){let r=ao(),n=hs({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===vr?void 0:vr].filter(o=>!!o)});t.common.issues.push(n)}var hs,SE,Be,M,fn,Xe,Yi,Xi,Mr,co,pl=v(()=>{Ji();dl();hs=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}},SE=[];Be=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 M;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 M;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}}},M=Object.freeze({status:"aborted"}),fn=t=>({status:"dirty",value:t}),Xe=t=>({status:"valid",value:t}),Yi=t=>t.status==="aborted",Xi=t=>t.status==="dirty",Mr=t=>t.status==="valid",co=t=>typeof Promise<"u"&&t instanceof Promise});var L_=v(()=>{});var A,F_=v(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(A||(A={}))});function G(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 q_(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 ME(t){return new RegExp(`^${q_(t)}$`)}function B_(t){let e=`${H_}T${q_(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 LE(t,e){return!!((e==="v4"||!e)&&CE.test(t)||(e==="v6"||!e)&&AE.test(t))}function FE(t,e){if(!TE.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 UE(t,e){return!!((e==="v4"||!e)&&IE.test(t)||(e==="v6"||!e)&&NE.test(t))}function ZE(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 uo(t){if(t instanceof dt){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=lt.create(uo(n))}return new dt({...t._def,shape:()=>e})}else return t instanceof kr?new kr({...t._def,type:uo(t.element)}):t instanceof lt?lt.create(uo(t.unwrap())):t instanceof ar?ar.create(uo(t.unwrap())):t instanceof ir?ir.create(t.items.map(e=>uo(e))):t}function fl(t,e){let r=sr(t),n=sr(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&n===O.object){let o=te.objectKeys(e),s=te.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=fl(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===O.array&&n===O.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=fl(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===O.date&&n===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function V_(t,e){return new $n({values:t,typeName:$.ZodEnum,...G(e)})}function Z_(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function W_(t,e={},r){return t?Fr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Z_(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Z_(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Fr.create()}var Ct,U_,Y,bE,kE,wE,$E,EE,TE,PE,RE,OE,ml,CE,IE,AE,NE,zE,jE,H_,DE,Lr,hn,gn,_n,yn,lo,xn,vn,Fr,br,Vt,po,kr,dt,Sn,Sr,Qi,bn,ir,ea,mo,fo,ta,kn,wn,$n,En,Ur,It,lt,ar,Tn,Pn,ho,HE,gs,_s,Rn,qE,$,BE,G_,K_,VE,WE,J_,GE,KE,JE,YE,XE,QE,eT,tT,rT,hl,nT,oT,sT,iT,aT,cT,uT,lT,dT,pT,mT,fT,hT,gT,_T,yT,xT,vT,ST,bT,kT,wT,$T,ET,Y_=v(()=>{Ki();Ji();F_();pl();fs();Ct=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}},U_=(t,e)=>{if(Mr(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 ut(t.common.issues);return this._error=r,this._error}}};Y=class{get description(){return this._def.description}_getType(e){return sr(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:sr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Be,ctx:{common:e.parent.common,data:e.data,parsedType:sr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(co(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:sr(e)},o=this._parseSync({data:e,path:n.path,parent:n});return U_(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:sr(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Mr(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=>Mr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:sr(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(co(o)?o:Promise.resolve(o));return U_(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 It({schema:this,typeName:$.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return lt.create(this,this._def)}nullable(){return ar.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return kr.create(this)}promise(){return Ur.create(this,this._def)}or(e){return Sn.create([this,e],this._def)}and(e){return bn.create(this,e,this._def)}transform(e){return new It({...G(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Tn({...G(this._def),innerType:this,defaultValue:r,typeName:$.ZodDefault})}brand(){return new gs({typeName:$.ZodBranded,type:this,...G(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Pn({...G(this._def),innerType:this,catchValue:r,typeName:$.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return _s.create(this,e)}readonly(){return Rn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},bE=/^c[^\s-]{8,}$/i,kE=/^[0-9a-z]+$/,wE=/^[0-9A-HJKMNP-TV-Z]{26}$/i,$E=/^[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,EE=/^[a-z0-9_-]{21}$/i,TE=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,PE=/^[-+]?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)?)??$/,RE=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,OE="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",CE=/^(?:(?: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])$/,IE=/^(?:(?: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])$/,AE=/^(([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]))$/,NE=/^(([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])$/,zE=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,jE=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,H_="((\\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])))",DE=new RegExp(`^${H_}$`);Lr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.string,received:s.parsedType}),M}let n=new Be,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")RE.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")ml||(ml=new RegExp(OE,"u")),ml.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")$E.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")EE.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")bE.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")kE.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")wE.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"?B_(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"?DE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?ME(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"?PE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?LE(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"?FE(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"?UE(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"?zE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:w.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?jE.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:w.invalid_string,message:s.message}),n.dirty()):te.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:w.invalid_string,...A.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...A.errToObj(e)})}url(e){return this._addCheck({kind:"url",...A.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...A.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...A.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...A.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...A.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...A.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...A.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...A.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...A.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...A.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...A.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...A.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...A.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...A.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...A.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...A.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...A.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...A.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...A.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...A.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...A.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...A.errToObj(r)})}nonempty(e){return this.min(1,A.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Lr.create=t=>new Lr({checks:[],typeName:$.ZodString,coerce:t?.coerce??!1,...G(t)});hn=class t extends Y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==O.number){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.number,received:s.parsedType}),M}let n,o=new Be;for(let s of this._def.checks)s.kind==="int"?te.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"?ZE(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()):te.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:A.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:A.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:A.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:A.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&te.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)}};hn.create=t=>new hn({checks:[],typeName:$.ZodNumber,coerce:t?.coerce||!1,...G(t)});gn=class t extends Y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==O.bigint)return this._getInvalidInput(e);let n,o=new Be;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()):te.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:O.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,A.toString(r))}gt(e,r){return this.setLimit("min",e,!1,A.toString(r))}lte(e,r){return this.setLimit("max",e,!0,A.toString(r))}lt(e,r){return this.setLimit("max",e,!1,A.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:A.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:A.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:A.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:A.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:A.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:A.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};gn.create=t=>new gn({checks:[],typeName:$.ZodBigInt,coerce:t?.coerce??!1,...G(t)});_n=class extends Y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.boolean,received:n.parsedType}),M}return Xe(e.data)}};_n.create=t=>new _n({typeName:$.ZodBoolean,coerce:t?.coerce||!1,...G(t)});yn=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:O.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_date}),M}let n=new Be,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()):te.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:A.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:A.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};yn.create=t=>new yn({checks:[],coerce:t?.coerce||!1,typeName:$.ZodDate,...G(t)});lo=class extends Y{_parse(e){if(this._getType(e)!==O.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.symbol,received:n.parsedType}),M}return Xe(e.data)}};lo.create=t=>new lo({typeName:$.ZodSymbol,...G(t)});xn=class extends Y{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.undefined,received:n.parsedType}),M}return Xe(e.data)}};xn.create=t=>new xn({typeName:$.ZodUndefined,...G(t)});vn=class extends Y{_parse(e){if(this._getType(e)!==O.null){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.null,received:n.parsedType}),M}return Xe(e.data)}};vn.create=t=>new vn({typeName:$.ZodNull,...G(t)});Fr=class extends Y{constructor(){super(...arguments),this._any=!0}_parse(e){return Xe(e.data)}};Fr.create=t=>new Fr({typeName:$.ZodAny,...G(t)});br=class extends Y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Xe(e.data)}};br.create=t=>new br({typeName:$.ZodUnknown,...G(t)});Vt=class extends Y{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:O.never,received:r.parsedType}),M}};Vt.create=t=>new Vt({typeName:$.ZodNever,...G(t)});po=class extends Y{_parse(e){if(this._getType(e)!==O.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.void,received:n.parsedType}),M}return Xe(e.data)}};po.create=t=>new po({typeName:$.ZodVoid,...G(t)});kr=class t extends Y{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==O.array)return P(r,{code:w.invalid_type,expected:O.array,received:r.parsedType}),M;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 Ct(r,i,r.path,a)))).then(i=>Be.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Ct(r,i,r.path,a)));return Be.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:A.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:A.toString(r)}})}nonempty(e){return this.min(1,e)}};kr.create=(t,e)=>new kr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...G(e)});dt=class t extends Y{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=te.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let u=this._getOrReturnCtx(e);return P(u,{code:w.invalid_type,expected:O.object,received:u.parsedType}),M}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Vt&&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 Ct(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof Vt){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 Ct(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Be.mergeObjectSync(n,u)):Be.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return A.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:A.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:$.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of te.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 te.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return uo(this)}partial(e){let r={};for(let n of te.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 te.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof lt;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return V_(te.objectKeys(this.shape))}};dt.create=(t,e)=>new dt({shape:()=>t,unknownKeys:"strip",catchall:Vt.create(),typeName:$.ZodObject,...G(e)});dt.strictCreate=(t,e)=>new dt({shape:()=>t,unknownKeys:"strict",catchall:Vt.create(),typeName:$.ZodObject,...G(e)});dt.lazycreate=(t,e)=>new dt({shape:t,unknownKeys:"strip",catchall:Vt.create(),typeName:$.ZodObject,...G(e)});Sn=class extends Y{_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 ut(a.ctx.common.issues));return P(r,{code:w.invalid_union,unionErrors:i}),M}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 ut(c));return P(r,{code:w.invalid_union,unionErrors:a}),M}}get options(){return this._def.options}};Sn.create=(t,e)=>new Sn({options:t,typeName:$.ZodUnion,...G(e)});Sr=t=>t instanceof kn?Sr(t.schema):t instanceof It?Sr(t.innerType()):t instanceof wn?[t.value]:t instanceof $n?t.options:t instanceof En?te.objectValues(t.enum):t instanceof Tn?Sr(t._def.innerType):t instanceof xn?[void 0]:t instanceof vn?[null]:t instanceof lt?[void 0,...Sr(t.unwrap())]:t instanceof ar?[null,...Sr(t.unwrap())]:t instanceof gs||t instanceof Rn?Sr(t.unwrap()):t instanceof Pn?Sr(t._def.innerType):[],Qi=class t extends Y{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return P(r,{code:w.invalid_type,expected:O.object,received:r.parsedType}),M;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]}),M)}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=Sr(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:$.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...G(n)})}};bn=class extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Yi(s)||Yi(i))return M;let a=fl(s.value,i.value);return a.valid?((Xi(s)||Xi(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:w.invalid_intersection_types}),M)};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}))}};bn.create=(t,e,r)=>new bn({left:t,right:e,typeName:$.ZodIntersection,...G(r)});ir=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.array)return P(n,{code:w.invalid_type,expected:O.array,received:n.parsedType}),M;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"}),M;!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 Ct(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Be.mergeArray(r,i)):Be.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ir.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ir({items:t,typeName:$.ZodTuple,rest:null,...G(e)})};ea=class t extends Y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.object)return P(n,{code:w.invalid_type,expected:O.object,received:n.parsedType}),M;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Ct(n,a,n.path,a)),value:i._parse(new Ct(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Be.mergeObjectAsync(r,o):Be.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Y?new t({keyType:e,valueType:r,typeName:$.ZodRecord,...G(n)}):new t({keyType:Lr.create(),valueType:e,typeName:$.ZodRecord,...G(r)})}},mo=class extends Y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.map)return P(n,{code:w.invalid_type,expected:O.map,received:n.parsedType}),M;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new Ct(n,a,n.path,[u,"key"])),value:s._parse(new Ct(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 M;(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 M;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};mo.create=(t,e,r)=>new mo({valueType:e,keyType:t,typeName:$.ZodMap,...G(r)});fo=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==O.set)return P(n,{code:w.invalid_type,expected:O.set,received:n.parsedType}),M;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 M;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 Ct(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:A.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:A.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};fo.create=(t,e)=>new fo({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...G(e)});ta=class t extends Y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return P(r,{code:w.invalid_type,expected:O.function,received:r.parsedType}),M;function n(a,c){return hs({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,ao(),vr].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:c}})}function o(a,c){return hs({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,ao(),vr].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 Ur){let a=this;return Xe(async function(...c){let u=new ut([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(o(d,f)),u})})}else{let a=this;return Xe(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new ut([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new ut([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ir.create(e).rest(br.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||ir.create([]).rest(br.create()),returns:r||br.create(),typeName:$.ZodFunction,...G(n)})}},kn=class extends Y{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})}};kn.create=(t,e)=>new kn({getter:t,typeName:$.ZodLazy,...G(e)});wn=class extends Y{_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}),M}return{status:"valid",value:e.data}}get value(){return this._def.value}};wn.create=(t,e)=>new wn({value:t,typeName:$.ZodLiteral,...G(e)});$n=class t extends Y{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:te.joinValues(n),received:r.parsedType,code:w.invalid_type}),M}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}),M}return Xe(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})}};$n.create=V_;En=class extends Y{_parse(e){let r=te.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==O.string&&n.parsedType!==O.number){let o=te.objectValues(r);return P(n,{expected:te.joinValues(o),received:n.parsedType,code:w.invalid_type}),M}if(this._cache||(this._cache=new Set(te.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=te.objectValues(r);return P(n,{received:n.data,code:w.invalid_enum_value,options:o}),M}return Xe(e.data)}get enum(){return this._def.values}};En.create=(t,e)=>new En({values:t,typeName:$.ZodNativeEnum,...G(e)});Ur=class extends Y{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return P(r,{code:w.invalid_type,expected:O.promise,received:r.parsedType}),M;let n=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return Xe(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ur.create=(t,e)=>new Ur({type:t,typeName:$.ZodPromise,...G(e)});It=class extends Y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{P(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return M;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?M:c.status==="dirty"?fn(c.value):r.value==="dirty"?fn(c.value):c});{if(r.value==="aborted")return M;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?M:a.status==="dirty"?fn(a.value):r.value==="dirty"?fn(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"?M:(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"?M:(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(!Mr(i))return M;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=>Mr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):M);te.assertNever(o)}};It.create=(t,e,r)=>new It({schema:t,typeName:$.ZodEffects,effect:e,...G(r)});It.createWithPreprocess=(t,e,r)=>new It({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...G(r)});lt=class extends Y{_parse(e){return this._getType(e)===O.undefined?Xe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};lt.create=(t,e)=>new lt({innerType:t,typeName:$.ZodOptional,...G(e)});ar=class extends Y{_parse(e){return this._getType(e)===O.null?Xe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ar.create=(t,e)=>new ar({innerType:t,typeName:$.ZodNullable,...G(e)});Tn=class extends Y{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===O.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Tn.create=(t,e)=>new Tn({innerType:t,typeName:$.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...G(e)});Pn=class extends Y{_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 co(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ut(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new ut(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Pn.create=(t,e)=>new Pn({innerType:t,typeName:$.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...G(e)});ho=class extends Y{_parse(e){if(this._getType(e)!==O.nan){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:O.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};ho.create=t=>new ho({typeName:$.ZodNaN,...G(t)});HE=Symbol("zod_brand"),gs=class extends Y{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},_s=class t extends Y{_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"?M:s.status==="dirty"?(r.dirty(),fn(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"?M:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:$.ZodPipeline})}},Rn=class extends Y{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Mr(o)&&(o.value=Object.freeze(o.value)),o);return co(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Rn.create=(t,e)=>new Rn({innerType:t,typeName:$.ZodReadonly,...G(e)});qE={object:dt.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"})($||($={}));BE=(t,e={message:`Input not instance of ${t.name}`})=>W_(r=>r instanceof t,e),G_=Lr.create,K_=hn.create,VE=ho.create,WE=gn.create,J_=_n.create,GE=yn.create,KE=lo.create,JE=xn.create,YE=vn.create,XE=Fr.create,QE=br.create,eT=Vt.create,tT=po.create,rT=kr.create,hl=dt.create,nT=dt.strictCreate,oT=Sn.create,sT=Qi.create,iT=bn.create,aT=ir.create,cT=ea.create,uT=mo.create,lT=fo.create,dT=ta.create,pT=kn.create,mT=wn.create,fT=$n.create,hT=En.create,gT=Ur.create,_T=It.create,yT=lt.create,xT=ar.create,vT=It.createWithPreprocess,ST=_s.create,bT=()=>G_().optional(),kT=()=>K_().optional(),wT=()=>J_().optional(),$T={string:(t=>Lr.create({...t,coerce:!0})),number:(t=>hn.create({...t,coerce:!0})),boolean:(t=>_n.create({...t,coerce:!0})),bigint:(t=>gn.create({...t,coerce:!0})),date:(t=>yn.create({...t,coerce:!0}))},ET=M});var q={};Le(q,{BRAND:()=>HE,DIRTY:()=>fn,EMPTY_PATH:()=>SE,INVALID:()=>M,NEVER:()=>ET,OK:()=>Xe,ParseStatus:()=>Be,Schema:()=>Y,ZodAny:()=>Fr,ZodArray:()=>kr,ZodBigInt:()=>gn,ZodBoolean:()=>_n,ZodBranded:()=>gs,ZodCatch:()=>Pn,ZodDate:()=>yn,ZodDefault:()=>Tn,ZodDiscriminatedUnion:()=>Qi,ZodEffects:()=>It,ZodEnum:()=>$n,ZodError:()=>ut,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>ta,ZodIntersection:()=>bn,ZodIssueCode:()=>w,ZodLazy:()=>kn,ZodLiteral:()=>wn,ZodMap:()=>mo,ZodNaN:()=>ho,ZodNativeEnum:()=>En,ZodNever:()=>Vt,ZodNull:()=>vn,ZodNullable:()=>ar,ZodNumber:()=>hn,ZodObject:()=>dt,ZodOptional:()=>lt,ZodParsedType:()=>O,ZodPipeline:()=>_s,ZodPromise:()=>Ur,ZodReadonly:()=>Rn,ZodRecord:()=>ea,ZodSchema:()=>Y,ZodSet:()=>fo,ZodString:()=>Lr,ZodSymbol:()=>lo,ZodTransformer:()=>It,ZodTuple:()=>ir,ZodType:()=>Y,ZodUndefined:()=>xn,ZodUnion:()=>Sn,ZodUnknown:()=>br,ZodVoid:()=>po,addIssueToContext:()=>P,any:()=>XE,array:()=>rT,bigint:()=>WE,boolean:()=>J_,coerce:()=>$T,custom:()=>W_,date:()=>GE,datetimeRegex:()=>B_,defaultErrorMap:()=>vr,discriminatedUnion:()=>sT,effect:()=>_T,enum:()=>fT,function:()=>dT,getErrorMap:()=>ao,getParsedType:()=>sr,instanceof:()=>BE,intersection:()=>iT,isAborted:()=>Yi,isAsync:()=>co,isDirty:()=>Xi,isValid:()=>Mr,late:()=>qE,lazy:()=>pT,literal:()=>mT,makeIssue:()=>hs,map:()=>uT,nan:()=>VE,nativeEnum:()=>hT,never:()=>eT,null:()=>YE,nullable:()=>xT,number:()=>K_,object:()=>hl,objectUtil:()=>ll,oboolean:()=>wT,onumber:()=>kT,optional:()=>yT,ostring:()=>bT,pipeline:()=>ST,preprocess:()=>vT,promise:()=>gT,quotelessJson:()=>yE,record:()=>cT,set:()=>lT,setErrorMap:()=>vE,strictObject:()=>nT,string:()=>G_,symbol:()=>KE,transformer:()=>_T,tuple:()=>aT,undefined:()=>JE,union:()=>oT,unknown:()=>QE,util:()=>te,void:()=>tT});var ra=v(()=>{Ji();pl();L_();fs();Y_();Ki()});var ys=v(()=>{ra()});function b(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}function xt(t){return t&&Object.assign(na,t),na}var PT,wr,na,go=v(()=>{PT=Object.freeze({status:"aborted"});wr=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},na={}});var re={};Le(re,{BIGINT_FORMAT_RANGES:()=>Q_,Class:()=>_l,NUMBER_FORMAT_RANGES:()=>wl,aborted:()=>Cn,allowsEval:()=>Sl,assert:()=>AT,assertEqual:()=>RT,assertIs:()=>CT,assertNever:()=>IT,assertNotEqual:()=>OT,assignProp:()=>vl,cached:()=>Ss,captureStackTrace:()=>sa,cleanEnum:()=>VT,cleanRegex:()=>ks,clone:()=>vt,createTransparentProxy:()=>LT,defineLazy:()=>_e,esc:()=>On,escapeRegex:()=>Zr,extend:()=>ZT,finalizeIssue:()=>Wt,floatSafeRemainder:()=>xl,getElementAtPath:()=>NT,getEnumValues:()=>vs,getLengthableOrigin:()=>ws,getParsedType:()=>MT,getSizableOrigin:()=>ey,isObject:()=>_o,isPlainObject:()=>yo,issue:()=>$l,joinValues:()=>oa,jsonStringifyReplacer:()=>yl,merge:()=>HT,normalizeParams:()=>L,nullish:()=>bs,numKeys:()=>DT,omit:()=>UT,optionalKeys:()=>kl,partial:()=>qT,pick:()=>FT,prefixIssues:()=>cr,primitiveTypes:()=>X_,promiseAllObject:()=>zT,propertyKeyTypes:()=>bl,randomString:()=>jT,required:()=>BT,stringifyPrimitive:()=>ia,unwrapMessage:()=>xs});function RT(t){return t}function OT(t){return t}function CT(t){}function IT(t){throw new Error}function AT(t){}function vs(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 oa(t,e="|"){return t.map(r=>ia(r)).join(e)}function yl(t,e){return typeof e=="bigint"?e.toString():e}function Ss(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function bs(t){return t==null}function ks(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function xl(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 _e(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 vl(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function NT(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function zT(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 jT(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function On(t){return JSON.stringify(t)}function _o(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function yo(t){if(_o(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(_o(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function DT(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function Zr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function vt(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 LT(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 ia(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function kl(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}function FT(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 vt(t,{...t._zod.def,shape:r,checks:[]})}function UT(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 vt(t,{...t._zod.def,shape:r,checks:[]})}function ZT(t,e){if(!yo(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 vl(this,"shape",n),n},checks:[]};return vt(t,r)}function HT(t,e){return vt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return vl(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function qT(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 vt(e,{...e._zod.def,shape:o,checks:[]})}function BT(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 vt(e,{...e._zod.def,shape:o,checks:[]})}function Cn(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function cr(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function xs(t){return typeof t=="string"?t:t?.message}function Wt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=xs(t.inst?._zod.def?.error?.(t))??xs(e?.error?.(t))??xs(r.customError?.(t))??xs(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function ey(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function ws(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function $l(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function VT(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var sa,Sl,MT,bl,X_,wl,Q_,_l,ur=v(()=>{sa=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};Sl=Ss(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});MT=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}`)}},bl=new Set(["string","number","symbol"]),X_=new Set(["string","number","bigint","boolean","symbol","undefined"]);wl={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]},Q_={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};_l=class{constructor(...e){}}});function El(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 Tl(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 ty,aa,$s,Pl=v(()=>{go();ur();ty=(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,yl,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},aa=b("$ZodError",ty),$s=b("$ZodError",ty,{Parent:Error})});var Rl,Ol,Cl,Il,Al,In,Nl,An,zl=v(()=>{go();Pl();ur();Rl=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 wr;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>Wt(c,s,xt())));throw sa(a,o?.callee),a}return i.value},Ol=Rl($s),Cl=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=>Wt(c,s,xt())));throw sa(a,o?.callee),a}return i.value},Il=Cl($s),Al=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 wr;return s.issues.length?{success:!1,error:new(t??aa)(s.issues.map(i=>Wt(i,o,xt())))}:{success:!0,data:s.value}},In=Al($s),Nl=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=>Wt(i,o,xt())))}:{success:!0,data:s.value}},An=Nl($s)});function dy(){return new RegExp(GT,"u")}function Sy(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function by(t){return new RegExp(`^${Sy(t)}$`)}function ky(t){let e=Sy({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(`^${xy}T(?:${n})$`)}var ry,ny,oy,sy,iy,ay,cy,uy,jl,ly,GT,py,my,fy,hy,gy,Dl,_y,yy,xy,vy,wy,$y,Ey,Ty,Py,Ry,Oy,ua=v(()=>{ry=/^[cC][^\s-]{8,}$/,ny=/^[0-9a-z]+$/,oy=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,sy=/^[0-9a-vA-V]{20}$/,iy=/^[A-Za-z0-9]{27}$/,ay=/^[a-zA-Z0-9_-]{21}$/,cy=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,uy=/^([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})$/,jl=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)$/,ly=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,GT="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";py=/^(?:(?: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])$/,my=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,fy=/^((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])$/,hy=/^(([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])$/,gy=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Dl=/^[A-Za-z0-9_-]*$/,_y=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,yy=/^\+(?:[0-9]){6,14}[0-9]$/,xy="(?:(?:\\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])))",vy=new RegExp(`^${xy}$`);wy=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},$y=/^\d+$/,Ey=/^-?\d+(?:\.\d+)?/i,Ty=/true|false/i,Py=/null/i,Ry=/^[^A-Z]*$/,Oy=/^[^a-z]*$/});var Ve,Cy,Ml,Ll,Iy,Ay,Ny,zy,jy,Es,Dy,My,Ly,Fy,Uy,Zy,Hy,la=v(()=>{go();ua();ur();Ve=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Cy={number:"number",bigint:"bigint",object:"date"},Ml=b("$ZodCheckLessThan",(t,e)=>{Ve.init(t,e);let r=Cy[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})}}),Ll=b("$ZodCheckGreaterThan",(t,e)=>{Ve.init(t,e);let r=Cy[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})}}),Iy=b("$ZodCheckMultipleOf",(t,e)=>{Ve.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):xl(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})}}),Ay=b("$ZodCheckNumberFormat",(t,e)=>{Ve.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=wl[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=$y)}),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})}}),Ny=b("$ZodCheckMaxLength",(t,e)=>{var r;Ve.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!bs(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=ws(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),zy=b("$ZodCheckMinLength",(t,e)=>{var r;Ve.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!bs(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=ws(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),jy=b("$ZodCheckLengthEquals",(t,e)=>{var r;Ve.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!bs(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=ws(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})}}),Es=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Ve.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=()=>{})}),Dy=b("$ZodCheckRegex",(t,e)=>{Es.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})}}),My=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ry),Es.init(t,e)}),Ly=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Oy),Es.init(t,e)}),Fy=b("$ZodCheckIncludes",(t,e)=>{Ve.init(t,e);let r=Zr(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})}}),Uy=b("$ZodCheckStartsWith",(t,e)=>{Ve.init(t,e);let r=new RegExp(`^${Zr(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})}}),Zy=b("$ZodCheckEndsWith",(t,e)=>{Ve.init(t,e);let r=new RegExp(`.*${Zr(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})}}),Hy=b("$ZodCheckOverwrite",(t,e)=>{Ve.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var da,Fl=v(()=>{da=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
20
20
  `).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
21
- `))}}});var Hy,Ll=v(()=>{Hy={major:4,minor:0,patch:0}});function nx(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function WT(t){if(!zl.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return nx(r)}function GT(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 qy(t,e,r){t.issues.length&&e.issues.push(...ar(r,t.issues)),e.value[r]=t.value}function la(t,e,r){t.issues.length&&e.issues.push(...ar(r,t.issues)),e.value[r]=t.value}function By(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(...ar(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function Vy(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=>Vt(s,n,yt())))}),e}function Fl(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(go(t)&&go(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=Fl(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=Fl(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 Wy(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=Fl(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 Gy(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function Ky(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 Jy(t,e,r){return Rn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function Yy(t){return t.value=Object.freeze(t.value),t}function Xy(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(kl(o))}}var de,$s,_e,Ul,Zl,Hl,ql,Bl,Vl,Wl,Gl,Kl,Jl,Yl,Qy,ex,tx,rx,Xl,Ql,ed,td,rd,nd,od,sd,da,id,ad,cd,ud,ld,dd,pa,ma,pd,md,fd,hd,gd,_d,yd,xd,vd,Sd,bd,kd,wd,$d,Ed,ox=v(()=>{ca();fo();Ml();Al();aa();cr();Ll();cr();de=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Hy;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,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new br;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,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 br;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=On(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Cn(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),$s=b("$ZodString",(t,e)=>{de.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??by(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}}),_e=b("$ZodStringFormat",(t,e)=>{ws.init(t,e),$s.init(t,e)}),Ul=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=ay),_e.init(t,e)}),Zl=b("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Nl(n))}else e.pattern??(e.pattern=Nl());_e.init(t,e)}),Hl=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=cy),_e.init(t,e)}),ql=b("$ZodURL",(t,e)=>{_e.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:hy.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})}}}),Bl=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=uy()),_e.init(t,e)}),Vl=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=sy),_e.init(t,e)}),Wl=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=ey),_e.init(t,e)}),Gl=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=ty),_e.init(t,e)}),Kl=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=ry),_e.init(t,e)}),Jl=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=ny),_e.init(t,e)}),Yl=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=oy),_e.init(t,e)}),Qy=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Sy(e)),_e.init(t,e)}),ex=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=yy),_e.init(t,e)}),tx=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=vy(e)),_e.init(t,e)}),rx=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=iy),_e.init(t,e)}),Xl=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=ly),_e.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Ql=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=dy),_e.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})}}}),ed=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=py),_e.init(t,e)}),td=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=my),_e.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})}}});rd=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=fy),_e.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{nx(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});nd=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=zl),_e.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{WT(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),od=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=gy),_e.init(t,e)});sd=b("$ZodJWT",(t,e)=>{_e.init(t,e),t._zod.check=r=>{GT(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),da=b("$ZodNumber",(t,e)=>{de.init(t,e),t._zod.pattern=t._zod.bag.pattern??wy,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}}),id=b("$ZodNumber",(t,e)=>{Cy.init(t,e),da.init(t,e)}),ad=b("$ZodBoolean",(t,e)=>{de.init(t,e),t._zod.pattern=$y,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}}),cd=b("$ZodNull",(t,e)=>{de.init(t,e),t._zod.pattern=Ey,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}}),ud=b("$ZodUnknown",(t,e)=>{de.init(t,e),t._zod.parse=r=>r}),ld=b("$ZodNever",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});dd=b("$ZodArray",(t,e)=>{de.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=>qy(u,r,i))):qy(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});pa=b("$ZodObject",(t,e)=>{de.init(t,e);let r=xs(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof de))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let m=Sl(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});ge(t._zod,"propValues",()=>{let d=e.shape,m={};for(let f in d){let p=d[f]._zod;if(p.values){m[f]??(m[f]=new Set);for(let h of p.values)m[f].add(h)}}return m});let n=d=>{let m=new ua(["shape","payload","ctx"]),f=r.value,p=y=>{let x=Pn(y);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of f.keys)h[y]=`key_${g++}`;m.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let x=h[y];m.write(`const ${x} = ${p(y)};`);let k=Pn(y);m.write(`
21
+ `))}}});var By,Ul=v(()=>{By={major:4,minor:0,patch:0}});function sx(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function KT(t){if(!Dl.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return sx(r)}function JT(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 Vy(t,e,r){t.issues.length&&e.issues.push(...cr(r,t.issues)),e.value[r]=t.value}function pa(t,e,r){t.issues.length&&e.issues.push(...cr(r,t.issues)),e.value[r]=t.value}function Wy(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...cr(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function Gy(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=>Wt(s,n,xt())))}),e}function Zl(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(yo(t)&&yo(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=Zl(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=Zl(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 Ky(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Cn(t))return t;let n=Zl(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 Jy(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function Yy(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 Xy(t,e,r){return Cn(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function Qy(t){return t.value=Object.freeze(t.value),t}function ex(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($l(o))}}var de,Ts,ye,Hl,ql,Bl,Vl,Wl,Gl,Kl,Jl,Yl,Xl,Ql,tx,rx,nx,ox,ed,td,rd,nd,od,sd,id,ad,ma,cd,ud,ld,dd,pd,md,fa,ha,fd,hd,gd,_d,yd,xd,vd,Sd,bd,kd,wd,$d,Ed,Td,Pd,ix=v(()=>{la();go();Fl();zl();ua();ur();Ul();ur();de=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=By;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=Cn(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new wr;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,s.issues.length!==d&&(c||(c=Cn(s,d)))});else{if(s.issues.length===d)continue;c||(c=Cn(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 wr;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=In(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return An(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Ts=b("$ZodString",(t,e)=>{de.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??wy(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ye=b("$ZodStringFormat",(t,e)=>{Es.init(t,e),Ts.init(t,e)}),Hl=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=uy),ye.init(t,e)}),ql=b("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=jl(n))}else e.pattern??(e.pattern=jl());ye.init(t,e)}),Bl=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=ly),ye.init(t,e)}),Vl=b("$ZodURL",(t,e)=>{ye.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:_y.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})}}}),Wl=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=dy()),ye.init(t,e)}),Gl=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=ay),ye.init(t,e)}),Kl=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=ry),ye.init(t,e)}),Jl=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=ny),ye.init(t,e)}),Yl=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=oy),ye.init(t,e)}),Xl=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=sy),ye.init(t,e)}),Ql=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=iy),ye.init(t,e)}),tx=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=ky(e)),ye.init(t,e)}),rx=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=vy),ye.init(t,e)}),nx=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=by(e)),ye.init(t,e)}),ox=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=cy),ye.init(t,e)}),ed=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=py),ye.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),td=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=my),ye.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})}}}),rd=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=fy),ye.init(t,e)}),nd=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=hy),ye.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})}}});od=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=gy),ye.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{sx(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});sd=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Dl),ye.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{KT(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),id=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=yy),ye.init(t,e)});ad=b("$ZodJWT",(t,e)=>{ye.init(t,e),t._zod.check=r=>{JT(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),ma=b("$ZodNumber",(t,e)=>{de.init(t,e),t._zod.pattern=t._zod.bag.pattern??Ey,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}}),cd=b("$ZodNumber",(t,e)=>{Ay.init(t,e),ma.init(t,e)}),ud=b("$ZodBoolean",(t,e)=>{de.init(t,e),t._zod.pattern=Ty,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}}),ld=b("$ZodNull",(t,e)=>{de.init(t,e),t._zod.pattern=Py,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}}),dd=b("$ZodUnknown",(t,e)=>{de.init(t,e),t._zod.parse=r=>r}),pd=b("$ZodNever",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});md=b("$ZodArray",(t,e)=>{de.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=>Vy(u,r,i))):Vy(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});fa=b("$ZodObject",(t,e)=>{de.init(t,e);let r=Ss(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof de))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let m=kl(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});_e(t._zod,"propValues",()=>{let d=e.shape,m={};for(let f in d){let p=d[f]._zod;if(p.values){m[f]??(m[f]=new Set);for(let h of p.values)m[f].add(h)}}return m});let n=d=>{let m=new da(["shape","payload","ctx"]),f=r.value,p=y=>{let x=On(y);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of f.keys)h[y]=`key_${g++}`;m.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let x=h[y];m.write(`const ${x} = ${p(y)};`);let k=On(y);m.write(`
22
22
  if (${x}.issues.length) {
23
23
  if (input[${k}] === undefined) {
24
24
  if (${k} in input) {
@@ -40,23 +40,23 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
40
40
  `)}else{let x=h[y];m.write(`const ${x} = ${p(y)};`),m.write(`
41
41
  if (${x}.issues.length) payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
42
42
  ...iss,
43
- path: iss.path ? [${Pn(y)}, ...iss.path] : [${Pn(y)}]
44
- })));`),m.write(`newResult[${Pn(y)}] = ${x}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let _=m.compile();return(y,x)=>_(d,y,x)},o,s=ho,i=!ta.jitless,c=i&&xl.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let p=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let x=l.shape;for(let k of l.keys){let E=x[k],B=E._zod.run({value:f[k],issues:[]},m),H=E._zod.optin==="optional"&&E._zod.optout==="optional";B instanceof Promise?p.push(B.then(J=>H?By(J,d,k,f):la(J,d,k))):H?By(B,d,k,f):la(B,d,k)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,y=_.def.type;for(let x of Object.keys(f)){if(g.has(x))continue;if(y==="never"){h.push(x);continue}let k=_.run({value:f[x],issues:[]},m);k instanceof Promise?p.push(k.then(E=>la(E,d,x))):la(k,d,x)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});ma=b("$ZodUnion",(t,e)=>{de.init(t,e),ge(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ge(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ge(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ge(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=>Ss(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=>Vy(i,r,t,n)):Vy(s,r,t,n)}}),pd=b("$ZodDiscriminatedUnion",(t,e)=>{ma.init(t,e);let r=t._zod.parse;ge(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=xs(()=>{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(!ho(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)}}),md=b("$ZodIntersection",(t,e)=>{de.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])=>Wy(r,c,u)):Wy(r,s,i)}});fd=b("$ZodRecord",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!go(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(...ar(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...ar(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=>Vt(u,n,yt())),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(...ar(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...ar(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),hd=b("$ZodEnum",(t,e)=>{de.init(t,e);let r=ys(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>vl.has(typeof n)).map(n=>typeof n=="string"?Fr(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}}),gd=b("$ZodLiteral",(t,e)=>{de.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Fr(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}}),_d=b("$ZodTransform",(t,e)=>{de.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 br;return r.value=o,r}}),yd=b("$ZodOptional",(t,e)=>{de.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ge(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ge(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ss(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)}),xd=b("$ZodNullable",(t,e)=>{de.init(t,e),ge(t._zod,"optin",()=>e.innerType._zod.optin),ge(t._zod,"optout",()=>e.innerType._zod.optout),ge(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ss(r.source)}|null)$`):void 0}),ge(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)}),vd=b("$ZodDefault",(t,e)=>{de.init(t,e),t._zod.optin="optional",ge(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=>Gy(s,e)):Gy(o,e)}});Sd=b("$ZodPrefault",(t,e)=>{de.init(t,e),t._zod.optin="optional",ge(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))}),bd=b("$ZodNonOptional",(t,e)=>{de.init(t,e),ge(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=>Ky(s,t)):Ky(o,t)}});kd=b("$ZodCatch",(t,e)=>{de.init(t,e),t._zod.optin="optional",ge(t._zod,"optout",()=>e.innerType._zod.optout),ge(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=>Vt(i,n,yt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Vt(s,n,yt()))},input:r.value}),r.issues=[]),r)}}),wd=b("$ZodPipe",(t,e)=>{de.init(t,e),ge(t._zod,"values",()=>e.in._zod.values),ge(t._zod,"optin",()=>e.in._zod.optin),ge(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=>Jy(s,e,n)):Jy(o,e,n)}});$d=b("$ZodReadonly",(t,e)=>{de.init(t,e),ge(t._zod,"propValues",()=>e.innerType._zod.propValues),ge(t._zod,"values",()=>e.innerType._zod.values),ge(t._zod,"optin",()=>e.innerType._zod.optin),ge(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(Yy):Yy(o)}});Ed=b("$ZodCustom",(t,e)=>{Be.init(t,e),de.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=>Xy(s,r,n,t));Xy(o,r,n,t)}})});function sx(){return{localeError:JT()}}var KT,JT,ix=v(()=>{cr();KT=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},JT=()=>{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 ${KT(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${oa(n.values[0])}`:`Invalid option: expected one of ${ra(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":""}: ${ra(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 fa=v(()=>{});function ax(){return new Es}var Es,Ur,Pd=v(()=>{Es=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)}};Ur=ax()});function Rd(t,e){return new t({type:"string",...L(e)})}function Od(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...L(e)})}function ha(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...L(e)})}function Cd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...L(e)})}function Id(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...L(e)})}function Ad(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...L(e)})}function Nd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...L(e)})}function zd(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...L(e)})}function jd(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...L(e)})}function Dd(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...L(e)})}function Md(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...L(e)})}function Ld(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...L(e)})}function Fd(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...L(e)})}function Ud(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...L(e)})}function Zd(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...L(e)})}function Hd(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...L(e)})}function qd(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...L(e)})}function Bd(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...L(e)})}function Vd(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...L(e)})}function Wd(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...L(e)})}function Gd(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...L(e)})}function Kd(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...L(e)})}function Jd(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...L(e)})}function cx(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...L(e)})}function ux(t,e){return new t({type:"string",format:"date",check:"string_format",...L(e)})}function lx(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...L(e)})}function dx(t,e){return new t({type:"string",format:"duration",check:"string_format",...L(e)})}function Yd(t,e){return new t({type:"number",checks:[],...L(e)})}function Xd(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...L(e)})}function Qd(t,e){return new t({type:"boolean",...L(e)})}function ep(t,e){return new t({type:"null",...L(e)})}function tp(t){return new t({type:"unknown"})}function rp(t,e){return new t({type:"never",...L(e)})}function ga(t,e){return new jl({check:"less_than",...L(e),value:t,inclusive:!1})}function Ts(t,e){return new jl({check:"less_than",...L(e),value:t,inclusive:!0})}function _a(t,e){return new Dl({check:"greater_than",...L(e),value:t,inclusive:!1})}function Ps(t,e){return new Dl({check:"greater_than",...L(e),value:t,inclusive:!0})}function ya(t,e){return new Oy({check:"multiple_of",...L(e),value:t})}function xa(t,e){return new Iy({check:"max_length",...L(e),maximum:t})}function _o(t,e){return new Ay({check:"min_length",...L(e),minimum:t})}function va(t,e){return new Ny({check:"length_equals",...L(e),length:t})}function np(t,e){return new zy({check:"string_format",format:"regex",...L(e),pattern:t})}function op(t){return new jy({check:"string_format",format:"lowercase",...L(t)})}function sp(t){return new Dy({check:"string_format",format:"uppercase",...L(t)})}function ip(t,e){return new My({check:"string_format",format:"includes",...L(e),includes:t})}function ap(t,e){return new Ly({check:"string_format",format:"starts_with",...L(e),prefix:t})}function cp(t,e){return new Fy({check:"string_format",format:"ends_with",...L(e),suffix:t})}function In(t){return new Uy({check:"overwrite",tx:t})}function up(t){return In(e=>e.normalize(t))}function lp(){return In(t=>t.trim())}function dp(){return In(t=>t.toLowerCase())}function pp(){return In(t=>t.toUpperCase())}function px(t,e,r){return new t({type:"array",element:e,...L(r)})}function mp(t,e,r){let n=L(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function fp(t,e,r){return new t({type:"custom",check:"custom",fn:e,...L(r)})}var mx=v(()=>{ca();cr()});var fx=v(()=>{});function hp(t,e){if(t instanceof Es){let n=new Sa(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 Sa(e);return r.process(t),r.emit(t,e)}function Le(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 Le(o.element,r);case"object":{for(let s in o.shape)if(Le(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Le(s,r))return!0;return!1}case"intersection":return Le(o.left,r)||Le(o.right,r);case"tuple":{for(let s of o.items)if(Le(s,r))return!0;return!!(o.rest&&Le(o.rest,r))}case"record":return Le(o.keyType,r)||Le(o.valueType,r);case"map":return Le(o.keyType,r)||Le(o.valueType,r);case"set":return Le(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Le(o.innerType,r);case"lazy":return Le(o.getter(),r);case"default":return Le(o.innerType,r);case"prefault":return Le(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Le(o.in,r)||Le(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Sa,hx=v(()=>{Pd();cr();Sa=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Ur,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let p=f;p.type="string";let{minimum:h,maximum:g,format:_,patterns:y,contentEncoding:x}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),x&&(p.contentEncoding=x),y&&y.size>0){let k=[...y];k.length===1?p.pattern=k[0].source:k.length>1&&(a.schema.allOf=[...k.map(E=>({...this.target==="draft-7"?{type:"string"}:{},pattern:E.source}))])}break}case"number":{let p=f,{minimum:h,maximum:g,format:_,multipleOf:y,exclusiveMaximum:x,exclusiveMinimum:k}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof k=="number"&&(p.exclusiveMinimum=k),typeof h=="number"&&(p.minimum=h,typeof k=="number"&&(k>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof x=="number"&&(p.exclusiveMaximum=x),typeof g=="number"&&(p.maximum=g,typeof x=="number"&&(x<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);break}case"boolean":{let p=f;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{f.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=f;p.type="object",p.properties={};let h=o.shape;for(let y in h)p.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(y=>{let x=o.shape[y]._zod;return this.io==="input"?x.optin===void 0:x.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=f;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=x=>"allOf"in x&&Object.keys(x).length===1,y=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=f;p.type="array";let h=o.items.map((y,x)=>this.process(y,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=f;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=f,h=ys(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=f,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),y?y.length===1?(h.contentMediaType=y[0],Object.assign(p,h)):p.anyOf=y.map(x=>({...h,contentMediaType:x})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);f.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=f;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Le(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(h)return{ref:g(h)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let f=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:f+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let p=d.schema;for(let h in p)delete p[h];p.$ref=m};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
43
+ path: iss.path ? [${On(y)}, ...iss.path] : [${On(y)}]
44
+ })));`),m.write(`newResult[${On(y)}] = ${x}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let _=m.compile();return(y,x)=>_(d,y,x)},o,s=_o,i=!na.jitless,c=i&&Sl.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let p=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let x=l.shape;for(let k of l.keys){let E=x[k],B=E._zod.run({value:f[k],issues:[]},m),H=E._zod.optin==="optional"&&E._zod.optout==="optional";B instanceof Promise?p.push(B.then(J=>H?Wy(J,d,k,f):pa(J,d,k))):H?Wy(B,d,k,f):pa(B,d,k)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,y=_.def.type;for(let x of Object.keys(f)){if(g.has(x))continue;if(y==="never"){h.push(x);continue}let k=_.run({value:f[x],issues:[]},m);k instanceof Promise?p.push(k.then(E=>pa(E,d,x))):pa(k,d,x)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});ha=b("$ZodUnion",(t,e)=>{de.init(t,e),_e(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),_e(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),_e(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),_e(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=>ks(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=>Gy(i,r,t,n)):Gy(s,r,t,n)}}),fd=b("$ZodDiscriminatedUnion",(t,e)=>{ha.init(t,e);let r=t._zod.parse;_e(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=Ss(()=>{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(!_o(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)}}),hd=b("$ZodIntersection",(t,e)=>{de.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])=>Ky(r,c,u)):Ky(r,s,i)}});gd=b("$ZodRecord",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!yo(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...cr(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...cr(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>Wt(u,n,xt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...cr(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...cr(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),_d=b("$ZodEnum",(t,e)=>{de.init(t,e);let r=vs(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>bl.has(typeof n)).map(n=>typeof n=="string"?Zr(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}}),yd=b("$ZodLiteral",(t,e)=>{de.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Zr(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}}),xd=b("$ZodTransform",(t,e)=>{de.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 wr;return r.value=o,r}}),vd=b("$ZodOptional",(t,e)=>{de.init(t,e),t._zod.optin="optional",t._zod.optout="optional",_e(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),_e(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ks(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)}),Sd=b("$ZodNullable",(t,e)=>{de.init(t,e),_e(t._zod,"optin",()=>e.innerType._zod.optin),_e(t._zod,"optout",()=>e.innerType._zod.optout),_e(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ks(r.source)}|null)$`):void 0}),_e(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)}),bd=b("$ZodDefault",(t,e)=>{de.init(t,e),t._zod.optin="optional",_e(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=>Jy(s,e)):Jy(o,e)}});kd=b("$ZodPrefault",(t,e)=>{de.init(t,e),t._zod.optin="optional",_e(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))}),wd=b("$ZodNonOptional",(t,e)=>{de.init(t,e),_e(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=>Yy(s,t)):Yy(o,t)}});$d=b("$ZodCatch",(t,e)=>{de.init(t,e),t._zod.optin="optional",_e(t._zod,"optout",()=>e.innerType._zod.optout),_e(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=>Wt(i,n,xt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>Wt(s,n,xt()))},input:r.value}),r.issues=[]),r)}}),Ed=b("$ZodPipe",(t,e)=>{de.init(t,e),_e(t._zod,"values",()=>e.in._zod.values),_e(t._zod,"optin",()=>e.in._zod.optin),_e(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=>Xy(s,e,n)):Xy(o,e,n)}});Td=b("$ZodReadonly",(t,e)=>{de.init(t,e),_e(t._zod,"propValues",()=>e.innerType._zod.propValues),_e(t._zod,"values",()=>e.innerType._zod.values),_e(t._zod,"optin",()=>e.innerType._zod.optin),_e(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(Qy):Qy(o)}});Pd=b("$ZodCustom",(t,e)=>{Ve.init(t,e),de.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=>ex(s,r,n,t));ex(o,r,n,t)}})});function ax(){return{localeError:XT()}}var YT,XT,cx=v(()=>{ur();YT=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},XT=()=>{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 ${YT(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ia(n.values[0])}`:`Invalid option: expected one of ${oa(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":""}: ${oa(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 ga=v(()=>{});function ux(){return new Ps}var Ps,Hr,Od=v(()=>{Ps=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)}};Hr=ux()});function Cd(t,e){return new t({type:"string",...L(e)})}function Id(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...L(e)})}function _a(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...L(e)})}function Ad(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...L(e)})}function Nd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...L(e)})}function zd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...L(e)})}function jd(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...L(e)})}function Dd(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...L(e)})}function Md(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...L(e)})}function Ld(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...L(e)})}function Fd(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...L(e)})}function Ud(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...L(e)})}function Zd(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...L(e)})}function Hd(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...L(e)})}function qd(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...L(e)})}function Bd(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...L(e)})}function Vd(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...L(e)})}function Wd(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...L(e)})}function Gd(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...L(e)})}function Kd(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...L(e)})}function Jd(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...L(e)})}function Yd(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...L(e)})}function Xd(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...L(e)})}function lx(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...L(e)})}function dx(t,e){return new t({type:"string",format:"date",check:"string_format",...L(e)})}function px(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...L(e)})}function mx(t,e){return new t({type:"string",format:"duration",check:"string_format",...L(e)})}function Qd(t,e){return new t({type:"number",checks:[],...L(e)})}function ep(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...L(e)})}function tp(t,e){return new t({type:"boolean",...L(e)})}function rp(t,e){return new t({type:"null",...L(e)})}function np(t){return new t({type:"unknown"})}function op(t,e){return new t({type:"never",...L(e)})}function ya(t,e){return new Ml({check:"less_than",...L(e),value:t,inclusive:!1})}function Rs(t,e){return new Ml({check:"less_than",...L(e),value:t,inclusive:!0})}function xa(t,e){return new Ll({check:"greater_than",...L(e),value:t,inclusive:!1})}function Os(t,e){return new Ll({check:"greater_than",...L(e),value:t,inclusive:!0})}function va(t,e){return new Iy({check:"multiple_of",...L(e),value:t})}function Sa(t,e){return new Ny({check:"max_length",...L(e),maximum:t})}function xo(t,e){return new zy({check:"min_length",...L(e),minimum:t})}function ba(t,e){return new jy({check:"length_equals",...L(e),length:t})}function sp(t,e){return new Dy({check:"string_format",format:"regex",...L(e),pattern:t})}function ip(t){return new My({check:"string_format",format:"lowercase",...L(t)})}function ap(t){return new Ly({check:"string_format",format:"uppercase",...L(t)})}function cp(t,e){return new Fy({check:"string_format",format:"includes",...L(e),includes:t})}function up(t,e){return new Uy({check:"string_format",format:"starts_with",...L(e),prefix:t})}function lp(t,e){return new Zy({check:"string_format",format:"ends_with",...L(e),suffix:t})}function Nn(t){return new Hy({check:"overwrite",tx:t})}function dp(t){return Nn(e=>e.normalize(t))}function pp(){return Nn(t=>t.trim())}function mp(){return Nn(t=>t.toLowerCase())}function fp(){return Nn(t=>t.toUpperCase())}function fx(t,e,r){return new t({type:"array",element:e,...L(r)})}function hp(t,e,r){let n=L(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function gp(t,e,r){return new t({type:"custom",check:"custom",fn:e,...L(r)})}var hx=v(()=>{la();ur()});var gx=v(()=>{});function _p(t,e){if(t instanceof Ps){let n=new ka(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 ka(e);return r.process(t),r.emit(t,e)}function Fe(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 Fe(o.element,r);case"object":{for(let s in o.shape)if(Fe(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Fe(s,r))return!0;return!1}case"intersection":return Fe(o.left,r)||Fe(o.right,r);case"tuple":{for(let s of o.items)if(Fe(s,r))return!0;return!!(o.rest&&Fe(o.rest,r))}case"record":return Fe(o.keyType,r)||Fe(o.valueType,r);case"map":return Fe(o.keyType,r)||Fe(o.valueType,r);case"set":return Fe(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Fe(o.innerType,r);case"lazy":return Fe(o.getter(),r);case"default":return Fe(o.innerType,r);case"prefault":return Fe(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Fe(o.in,r)||Fe(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var ka,_x=v(()=>{Od();ur();ka=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Hr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let p=f;p.type="string";let{minimum:h,maximum:g,format:_,patterns:y,contentEncoding:x}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),x&&(p.contentEncoding=x),y&&y.size>0){let k=[...y];k.length===1?p.pattern=k[0].source:k.length>1&&(a.schema.allOf=[...k.map(E=>({...this.target==="draft-7"?{type:"string"}:{},pattern:E.source}))])}break}case"number":{let p=f,{minimum:h,maximum:g,format:_,multipleOf:y,exclusiveMaximum:x,exclusiveMinimum:k}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof k=="number"&&(p.exclusiveMinimum=k),typeof h=="number"&&(p.minimum=h,typeof k=="number"&&(k>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof x=="number"&&(p.exclusiveMaximum=x),typeof g=="number"&&(p.maximum=g,typeof x=="number"&&(x<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);break}case"boolean":{let p=f;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{f.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=f;p.type="object",p.properties={};let h=o.shape;for(let y in h)p.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(y=>{let x=o.shape[y]._zod;return this.io==="input"?x.optin===void 0:x.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=f;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=x=>"allOf"in x&&Object.keys(x).length===1,y=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=f;p.type="array";let h=o.items.map((y,x)=>this.process(y,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=f;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=f,h=vs(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=f,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),y?y.length===1?(h.contentMediaType=y[0],Object.assign(p,h)):p.anyOf=y.map(x=>({...h,contentMediaType:x})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);f.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=f;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Fe(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(h)return{ref:g(h)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let f=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:f+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let p=d.schema;for(let h in p)delete p[h];p.$ref=m};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
45
45
 
46
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let m=this.seen.get(l),f=m.def??m.schema,p={...f};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,p))}m.isParent||this.override({zodSchema:l,jsonSchema:f,path:m.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}}});var gx=v(()=>{});var nt=v(()=>{fo();Al();El();ox();ca();Ll();cr();aa();fa();Pd();Ml();fx();mx();hx();gx()});var gp=v(()=>{nt()});function _p(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new IP(r)}var CP,IP,_x=v(()=>{nt();nt();gp();CP=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");de.init(t,e),t.def=e,t.parse=(r,n)=>Pl(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>On(t,r,n),t.parseAsync=async(r,n)=>Ol(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Cn(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)=>xt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),IP=b("ZodMiniObject",(t,e)=>{pa.init(t,e),CP.init(t,e),re.defineLazy(t,"shape",()=>e.shape)})});var yx=v(()=>{});var xx=v(()=>{});var vx=v(()=>{});var Sx=v(()=>{nt();gp();_x();yx();nt();fa();xx();vx()});var bx=v(()=>{Sx()});var yp=v(()=>{bx()});function It(t){return!!t._zod}function Nn(t){let e=Object.values(t);if(e.length===0)return _p({});let r=e.every(It),n=e.every(o=>!It(o));if(r)return _p(t);if(n)return ml(t);throw new Error("Mixed Zod versions detected in object shape.")}function Zr(t,e){return It(t)?On(t,e):t.safeParse(e)}async function ba(t,e){return It(t)?await Cn(t,e):await t.safeParseAsync(e)}function Hr(t){if(!t)return;let e;if(It(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function yo(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 Nn(t)}}if(It(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 ka(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 wx(t){return t.description}function $x(t){if(It(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function wa(t){if(It(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 Rs=v(()=>{gs();yp()});var xp=v(()=>{nt()});var Os={};Me(Os,{ZodISODate:()=>Tx,ZodISODateTime:()=>Ex,ZodISODuration:()=>Rx,ZodISOTime:()=>Px,date:()=>Sp,datetime:()=>vp,duration:()=>kp,time:()=>bp});function vp(t){return cx(Ex,t)}function Sp(t){return ux(Tx,t)}function bp(t){return lx(Px,t)}function kp(t){return dx(Rx,t)}var Ex,Tx,Px,Rx,wp=v(()=>{nt();$p();Ex=b("ZodISODateTime",(t,e)=>{Qy.init(t,e),we.init(t,e)});Tx=b("ZodISODate",(t,e)=>{ex.init(t,e),we.init(t,e)});Px=b("ZodISOTime",(t,e)=>{tx.init(t,e),we.init(t,e)});Rx=b("ZodISODuration",(t,e)=>{rx.init(t,e),we.init(t,e)})});var Ox,uU,Cs,Ep=v(()=>{nt();nt();Ox=(t,e)=>{sa.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>$l(t,r)},flatten:{value:r=>wl(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},uU=b("ZodError",Ox),Cs=b("ZodError",Ox,{Parent:Error})});var Cx,Ix,Ax,Nx,Tp=v(()=>{nt();Ep();Cx=Tl(Cs),Ix=Rl(Cs),Ax=Cl(Cs),Nx=Il(Cs)});function S(t){return Rd(ZP,t)}function ue(t){return Yd(Lx,t)}function jx(t){return Xd(iR,t)}function Ue(t){return Qd(aR,t)}function Fx(t){return ep(cR,t)}function $e(){return tp(uR)}function dR(t){return rp(lR,t)}function ne(t,e){return px(pR,t,e)}function C(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new Ux(r)}function ot(t,e){return new Ux({type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},catchall:$e(),...re.normalizeParams(e)})}function xe(t,e){return new Zx({type:"union",options:t,...re.normalizeParams(e)})}function Op(t,e,r){return new mR({type:"union",options:e,discriminator:t,...re.normalizeParams(r)})}function Ea(t,e){return new fR({type:"intersection",left:t,right:e})}function ye(t,e,r){return new hR({type:"record",keyType:t,valueType:e,...re.normalizeParams(r)})}function dt(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Pp({type:"enum",entries:r,...re.normalizeParams(e)})}function z(t,e){return new gR({type:"literal",values:Array.isArray(t)?t:[t],...re.normalizeParams(e)})}function Hx(t){return new _R({type:"transform",transform:t})}function Ee(t){return new qx({type:"optional",innerType:t})}function Dx(t){return new yR({type:"nullable",innerType:t})}function vR(t,e){return new xR({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function bR(t,e){return new SR({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function kR(t,e){return new Bx({type:"nonoptional",innerType:t,...re.normalizeParams(e)})}function $R(t,e){return new wR({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function Rp(t,e){return new ER({type:"pipe",in:t,out:e})}function PR(t){return new TR({type:"readonly",innerType:t})}function RR(t){let e=new Be({check:"custom"});return e._zod.check=t,e}function Wx(t,e){return mp(Vx,t??(()=>!0),e)}function OR(t,e={}){return fp(Vx,t,e)}function CR(t){let e=RR(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(re.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(re.issue(o))}},t(r.value,r)));return e}function Cp(t,e){return Rp(Hx(t),e)}var Pe,Mx,ZP,we,HP,zx,$a,qP,BP,VP,WP,GP,KP,JP,YP,XP,QP,eR,tR,rR,nR,oR,sR,Lx,iR,aR,cR,uR,lR,pR,Ux,Zx,mR,fR,hR,Pp,gR,_R,qx,yR,xR,SR,Bx,wR,ER,TR,Vx,$p=v(()=>{nt();nt();xp();wp();Tp();Pe=b("ZodType",(t,e)=>(de.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)=>xt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Cx(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Ax(t,r,n),t.parseAsync=async(r,n)=>Ix(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Nx(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(OR(r,n)),t.superRefine=r=>t.check(CR(r)),t.overwrite=r=>t.check(In(r)),t.optional=()=>Ee(t),t.nullable=()=>Dx(t),t.nullish=()=>Ee(Dx(t)),t.nonoptional=r=>kR(t,r),t.array=()=>ne(t),t.or=r=>xe([t,r]),t.and=r=>Ea(t,r),t.transform=r=>Rp(t,Hx(r)),t.default=r=>vR(t,r),t.prefault=r=>bR(t,r),t.catch=r=>$R(t,r),t.pipe=r=>Rp(t,r),t.readonly=()=>PR(t),t.describe=r=>{let n=t.clone();return Ur.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Ur.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Ur.get(t);let n=t.clone();return Ur.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Mx=b("_ZodString",(t,e)=>{$s.init(t,e),Pe.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(np(...n)),t.includes=(...n)=>t.check(ip(...n)),t.startsWith=(...n)=>t.check(ap(...n)),t.endsWith=(...n)=>t.check(cp(...n)),t.min=(...n)=>t.check(_o(...n)),t.max=(...n)=>t.check(xa(...n)),t.length=(...n)=>t.check(va(...n)),t.nonempty=(...n)=>t.check(_o(1,...n)),t.lowercase=n=>t.check(op(n)),t.uppercase=n=>t.check(sp(n)),t.trim=()=>t.check(lp()),t.normalize=(...n)=>t.check(up(...n)),t.toLowerCase=()=>t.check(dp()),t.toUpperCase=()=>t.check(pp())}),ZP=b("ZodString",(t,e)=>{$s.init(t,e),Mx.init(t,e),t.email=r=>t.check(Od(HP,r)),t.url=r=>t.check(zd(qP,r)),t.jwt=r=>t.check(Jd(sR,r)),t.emoji=r=>t.check(jd(BP,r)),t.guid=r=>t.check(ha(zx,r)),t.uuid=r=>t.check(Cd($a,r)),t.uuidv4=r=>t.check(Id($a,r)),t.uuidv6=r=>t.check(Ad($a,r)),t.uuidv7=r=>t.check(Nd($a,r)),t.nanoid=r=>t.check(Dd(VP,r)),t.guid=r=>t.check(ha(zx,r)),t.cuid=r=>t.check(Md(WP,r)),t.cuid2=r=>t.check(Ld(GP,r)),t.ulid=r=>t.check(Fd(KP,r)),t.base64=r=>t.check(Wd(rR,r)),t.base64url=r=>t.check(Gd(nR,r)),t.xid=r=>t.check(Ud(JP,r)),t.ksuid=r=>t.check(Zd(YP,r)),t.ipv4=r=>t.check(Hd(XP,r)),t.ipv6=r=>t.check(qd(QP,r)),t.cidrv4=r=>t.check(Bd(eR,r)),t.cidrv6=r=>t.check(Vd(tR,r)),t.e164=r=>t.check(Kd(oR,r)),t.datetime=r=>t.check(vp(r)),t.date=r=>t.check(Sp(r)),t.time=r=>t.check(bp(r)),t.duration=r=>t.check(kp(r))});we=b("ZodStringFormat",(t,e)=>{_e.init(t,e),Mx.init(t,e)}),HP=b("ZodEmail",(t,e)=>{Hl.init(t,e),we.init(t,e)}),zx=b("ZodGUID",(t,e)=>{Ul.init(t,e),we.init(t,e)}),$a=b("ZodUUID",(t,e)=>{Zl.init(t,e),we.init(t,e)}),qP=b("ZodURL",(t,e)=>{ql.init(t,e),we.init(t,e)}),BP=b("ZodEmoji",(t,e)=>{Bl.init(t,e),we.init(t,e)}),VP=b("ZodNanoID",(t,e)=>{Vl.init(t,e),we.init(t,e)}),WP=b("ZodCUID",(t,e)=>{Wl.init(t,e),we.init(t,e)}),GP=b("ZodCUID2",(t,e)=>{Gl.init(t,e),we.init(t,e)}),KP=b("ZodULID",(t,e)=>{Kl.init(t,e),we.init(t,e)}),JP=b("ZodXID",(t,e)=>{Jl.init(t,e),we.init(t,e)}),YP=b("ZodKSUID",(t,e)=>{Yl.init(t,e),we.init(t,e)}),XP=b("ZodIPv4",(t,e)=>{Xl.init(t,e),we.init(t,e)}),QP=b("ZodIPv6",(t,e)=>{Ql.init(t,e),we.init(t,e)}),eR=b("ZodCIDRv4",(t,e)=>{ed.init(t,e),we.init(t,e)}),tR=b("ZodCIDRv6",(t,e)=>{td.init(t,e),we.init(t,e)}),rR=b("ZodBase64",(t,e)=>{rd.init(t,e),we.init(t,e)}),nR=b("ZodBase64URL",(t,e)=>{nd.init(t,e),we.init(t,e)}),oR=b("ZodE164",(t,e)=>{od.init(t,e),we.init(t,e)}),sR=b("ZodJWT",(t,e)=>{sd.init(t,e),we.init(t,e)}),Lx=b("ZodNumber",(t,e)=>{da.init(t,e),Pe.init(t,e),t.gt=(n,o)=>t.check(_a(n,o)),t.gte=(n,o)=>t.check(Ps(n,o)),t.min=(n,o)=>t.check(Ps(n,o)),t.lt=(n,o)=>t.check(ga(n,o)),t.lte=(n,o)=>t.check(Ts(n,o)),t.max=(n,o)=>t.check(Ts(n,o)),t.int=n=>t.check(jx(n)),t.safe=n=>t.check(jx(n)),t.positive=n=>t.check(_a(0,n)),t.nonnegative=n=>t.check(Ps(0,n)),t.negative=n=>t.check(ga(0,n)),t.nonpositive=n=>t.check(Ts(0,n)),t.multipleOf=(n,o)=>t.check(ya(n,o)),t.step=(n,o)=>t.check(ya(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});iR=b("ZodNumberFormat",(t,e)=>{id.init(t,e),Lx.init(t,e)});aR=b("ZodBoolean",(t,e)=>{ad.init(t,e),Pe.init(t,e)});cR=b("ZodNull",(t,e)=>{cd.init(t,e),Pe.init(t,e)});uR=b("ZodUnknown",(t,e)=>{ud.init(t,e),Pe.init(t,e)});lR=b("ZodNever",(t,e)=>{ld.init(t,e),Pe.init(t,e)});pR=b("ZodArray",(t,e)=>{dd.init(t,e),Pe.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(_o(r,n)),t.nonempty=r=>t.check(_o(1,r)),t.max=(r,n)=>t.check(xa(r,n)),t.length=(r,n)=>t.check(va(r,n)),t.unwrap=()=>t.element});Ux=b("ZodObject",(t,e)=>{pa.init(t,e),Pe.init(t,e),re.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>dt(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:dR()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>re.extend(t,r),t.merge=r=>re.merge(t,r),t.pick=r=>re.pick(t,r),t.omit=r=>re.omit(t,r),t.partial=(...r)=>re.partial(qx,t,r[0]),t.required=(...r)=>re.required(Bx,t,r[0])});Zx=b("ZodUnion",(t,e)=>{ma.init(t,e),Pe.init(t,e),t.options=e.options});mR=b("ZodDiscriminatedUnion",(t,e)=>{Zx.init(t,e),pd.init(t,e)});fR=b("ZodIntersection",(t,e)=>{md.init(t,e),Pe.init(t,e)});hR=b("ZodRecord",(t,e)=>{fd.init(t,e),Pe.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});Pp=b("ZodEnum",(t,e)=>{hd.init(t,e),Pe.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 Pp({...e,checks:[],...re.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 Pp({...e,checks:[],...re.normalizeParams(o),entries:s})}});gR=b("ZodLiteral",(t,e)=>{gd.init(t,e),Pe.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]}})});_R=b("ZodTransform",(t,e)=>{_d.init(t,e),Pe.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(re.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(re.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});qx=b("ZodOptional",(t,e)=>{yd.init(t,e),Pe.init(t,e),t.unwrap=()=>t._zod.def.innerType});yR=b("ZodNullable",(t,e)=>{xd.init(t,e),Pe.init(t,e),t.unwrap=()=>t._zod.def.innerType});xR=b("ZodDefault",(t,e)=>{vd.init(t,e),Pe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});SR=b("ZodPrefault",(t,e)=>{Sd.init(t,e),Pe.init(t,e),t.unwrap=()=>t._zod.def.innerType});Bx=b("ZodNonOptional",(t,e)=>{bd.init(t,e),Pe.init(t,e),t.unwrap=()=>t._zod.def.innerType});wR=b("ZodCatch",(t,e)=>{kd.init(t,e),Pe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});ER=b("ZodPipe",(t,e)=>{wd.init(t,e),Pe.init(t,e),t.in=e.in,t.out=e.out});TR=b("ZodReadonly",(t,e)=>{$d.init(t,e),Pe.init(t,e)});Vx=b("ZodCustom",(t,e)=>{Ed.init(t,e),Pe.init(t,e)})});var Gx=v(()=>{});var Kx=v(()=>{});var Jx=v(()=>{nt();$p();xp();Ep();Tp();Gx();nt();ix();fa();wp();Kx();yt(sx())});var Yx=v(()=>{Jx()});var Xx=v(()=>{Yx()});function hv(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function gv(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Ap,Qx,qr,Pa,Fe,ev,tv,$U,NR,zR,Np,vt,Is,rv,Ve,At,Nt,We,Ra,nv,zp,ov,sv,jp,As,D,Dp,iv,av,EU,Oa,jR,Ca,DR,Ns,xo,cv,MR,LR,FR,UR,ZR,HR,Mp,qR,BR,Lp,Ia,VR,WR,Aa,GR,zs,js,KR,Ds,vo,JR,Ms,Na,za,ja,TU,Da,Ma,La,uv,lv,dv,Fp,pv,Ls,So,mv,YR,bo,XR,ko,QR,Up,eO,Fa,tO,rO,nO,oO,sO,iO,aO,cO,uO,lO,wo,dO,pO,Ua,Zp,Hp,qp,mO,fO,hO,Bp,gO,_O,yO,xO,vO,fv,Za,SO,Ha,PU,bO,$o,kO,RU,Fs,wO,Vp,$O,EO,TO,PO,RO,OO,CO,Ta,IO,AO,NO,Us,Wp,zO,jO,DO,MO,LO,FO,UO,ZO,HO,qO,BO,VO,WO,GO,KO,JO,YO,XO,Eo,QO,eC,tC,qa,rC,nC,oC,Gp,sC,OU,CU,IU,AU,NU,zU,N,Ip,zn=v(()=>{Xx();Ap="2025-11-25",Qx=[Ap,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],qr="io.modelcontextprotocol/related-task",Pa="2.0",Fe=Wx(t=>t!==null&&(typeof t=="object"||typeof t=="function")),ev=xe([S(),ue().int()]),tv=S(),$U=ot({ttl:ue().optional(),pollInterval:ue().optional()}),NR=C({ttl:ue().optional()}),zR=C({taskId:S()}),Np=ot({progressToken:ev.optional(),[qr]:zR.optional()}),vt=C({_meta:Np.optional()}),Is=vt.extend({task:NR.optional()}),rv=t=>Is.safeParse(t).success,Ve=C({method:S(),params:vt.loose().optional()}),At=C({_meta:Np.optional()}),Nt=C({method:S(),params:At.loose().optional()}),We=ot({_meta:Np.optional()}),Ra=xe([S(),ue().int()]),nv=C({jsonrpc:z(Pa),id:Ra,...Ve.shape}).strict(),zp=t=>nv.safeParse(t).success,ov=C({jsonrpc:z(Pa),...Nt.shape}).strict(),sv=t=>ov.safeParse(t).success,jp=C({jsonrpc:z(Pa),id:Ra,result:We}).strict(),As=t=>jp.safeParse(t).success;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(D||(D={}));Dp=C({jsonrpc:z(Pa),id:Ra.optional(),error:C({code:ue().int(),message:S(),data:$e().optional()})}).strict(),iv=t=>Dp.safeParse(t).success,av=xe([nv,ov,jp,Dp]),EU=xe([jp,Dp]),Oa=We.strict(),jR=At.extend({requestId:Ra.optional(),reason:S().optional()}),Ca=Nt.extend({method:z("notifications/cancelled"),params:jR}),DR=C({src:S(),mimeType:S().optional(),sizes:ne(S()).optional(),theme:dt(["light","dark"]).optional()}),Ns=C({icons:ne(DR).optional()}),xo=C({name:S(),title:S().optional()}),cv=xo.extend({...xo.shape,...Ns.shape,version:S(),websiteUrl:S().optional(),description:S().optional()}),MR=Ea(C({applyDefaults:Ue().optional()}),ye(S(),$e())),LR=Cp(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ea(C({form:MR.optional(),url:Fe.optional()}),ye(S(),$e()).optional())),FR=ot({list:Fe.optional(),cancel:Fe.optional(),requests:ot({sampling:ot({createMessage:Fe.optional()}).optional(),elicitation:ot({create:Fe.optional()}).optional()}).optional()}),UR=ot({list:Fe.optional(),cancel:Fe.optional(),requests:ot({tools:ot({call:Fe.optional()}).optional()}).optional()}),ZR=C({experimental:ye(S(),Fe).optional(),sampling:C({context:Fe.optional(),tools:Fe.optional()}).optional(),elicitation:LR.optional(),roots:C({listChanged:Ue().optional()}).optional(),tasks:FR.optional(),extensions:ye(S(),Fe).optional()}),HR=vt.extend({protocolVersion:S(),capabilities:ZR,clientInfo:cv}),Mp=Ve.extend({method:z("initialize"),params:HR}),qR=C({experimental:ye(S(),Fe).optional(),logging:Fe.optional(),completions:Fe.optional(),prompts:C({listChanged:Ue().optional()}).optional(),resources:C({subscribe:Ue().optional(),listChanged:Ue().optional()}).optional(),tools:C({listChanged:Ue().optional()}).optional(),tasks:UR.optional(),extensions:ye(S(),Fe).optional()}),BR=We.extend({protocolVersion:S(),capabilities:qR,serverInfo:cv,instructions:S().optional()}),Lp=Nt.extend({method:z("notifications/initialized"),params:At.optional()}),Ia=Ve.extend({method:z("ping"),params:vt.optional()}),VR=C({progress:ue(),total:Ee(ue()),message:Ee(S())}),WR=C({...At.shape,...VR.shape,progressToken:ev}),Aa=Nt.extend({method:z("notifications/progress"),params:WR}),GR=vt.extend({cursor:tv.optional()}),zs=Ve.extend({params:GR.optional()}),js=We.extend({nextCursor:tv.optional()}),KR=dt(["working","input_required","completed","failed","cancelled"]),Ds=C({taskId:S(),status:KR,ttl:xe([ue(),Fx()]),createdAt:S(),lastUpdatedAt:S(),pollInterval:Ee(ue()),statusMessage:Ee(S())}),vo=We.extend({task:Ds}),JR=At.merge(Ds),Ms=Nt.extend({method:z("notifications/tasks/status"),params:JR}),Na=Ve.extend({method:z("tasks/get"),params:vt.extend({taskId:S()})}),za=We.merge(Ds),ja=Ve.extend({method:z("tasks/result"),params:vt.extend({taskId:S()})}),TU=We.loose(),Da=zs.extend({method:z("tasks/list")}),Ma=js.extend({tasks:ne(Ds)}),La=Ve.extend({method:z("tasks/cancel"),params:vt.extend({taskId:S()})}),uv=We.merge(Ds),lv=C({uri:S(),mimeType:Ee(S()),_meta:ye(S(),$e()).optional()}),dv=lv.extend({text:S()}),Fp=S().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),pv=lv.extend({blob:Fp}),Ls=dt(["user","assistant"]),So=C({audience:ne(Ls).optional(),priority:ue().min(0).max(1).optional(),lastModified:Os.datetime({offset:!0}).optional()}),mv=C({...xo.shape,...Ns.shape,uri:S(),description:Ee(S()),mimeType:Ee(S()),size:Ee(ue()),annotations:So.optional(),_meta:Ee(ot({}))}),YR=C({...xo.shape,...Ns.shape,uriTemplate:S(),description:Ee(S()),mimeType:Ee(S()),annotations:So.optional(),_meta:Ee(ot({}))}),bo=zs.extend({method:z("resources/list")}),XR=js.extend({resources:ne(mv)}),ko=zs.extend({method:z("resources/templates/list")}),QR=js.extend({resourceTemplates:ne(YR)}),Up=vt.extend({uri:S()}),eO=Up,Fa=Ve.extend({method:z("resources/read"),params:eO}),tO=We.extend({contents:ne(xe([dv,pv]))}),rO=Nt.extend({method:z("notifications/resources/list_changed"),params:At.optional()}),nO=Up,oO=Ve.extend({method:z("resources/subscribe"),params:nO}),sO=Up,iO=Ve.extend({method:z("resources/unsubscribe"),params:sO}),aO=At.extend({uri:S()}),cO=Nt.extend({method:z("notifications/resources/updated"),params:aO}),uO=C({name:S(),description:Ee(S()),required:Ee(Ue())}),lO=C({...xo.shape,...Ns.shape,description:Ee(S()),arguments:Ee(ne(uO)),_meta:Ee(ot({}))}),wo=zs.extend({method:z("prompts/list")}),dO=js.extend({prompts:ne(lO)}),pO=vt.extend({name:S(),arguments:ye(S(),S()).optional()}),Ua=Ve.extend({method:z("prompts/get"),params:pO}),Zp=C({type:z("text"),text:S(),annotations:So.optional(),_meta:ye(S(),$e()).optional()}),Hp=C({type:z("image"),data:Fp,mimeType:S(),annotations:So.optional(),_meta:ye(S(),$e()).optional()}),qp=C({type:z("audio"),data:Fp,mimeType:S(),annotations:So.optional(),_meta:ye(S(),$e()).optional()}),mO=C({type:z("tool_use"),name:S(),id:S(),input:ye(S(),$e()),_meta:ye(S(),$e()).optional()}),fO=C({type:z("resource"),resource:xe([dv,pv]),annotations:So.optional(),_meta:ye(S(),$e()).optional()}),hO=mv.extend({type:z("resource_link")}),Bp=xe([Zp,Hp,qp,hO,fO]),gO=C({role:Ls,content:Bp}),_O=We.extend({description:S().optional(),messages:ne(gO)}),yO=Nt.extend({method:z("notifications/prompts/list_changed"),params:At.optional()}),xO=C({title:S().optional(),readOnlyHint:Ue().optional(),destructiveHint:Ue().optional(),idempotentHint:Ue().optional(),openWorldHint:Ue().optional()}),vO=C({taskSupport:dt(["required","optional","forbidden"]).optional()}),fv=C({...xo.shape,...Ns.shape,description:S().optional(),inputSchema:C({type:z("object"),properties:ye(S(),Fe).optional(),required:ne(S()).optional()}).catchall($e()),outputSchema:C({type:z("object"),properties:ye(S(),Fe).optional(),required:ne(S()).optional()}).catchall($e()).optional(),annotations:xO.optional(),execution:vO.optional(),_meta:ye(S(),$e()).optional()}),Za=zs.extend({method:z("tools/list")}),SO=js.extend({tools:ne(fv)}),Ha=We.extend({content:ne(Bp).default([]),structuredContent:ye(S(),$e()).optional(),isError:Ue().optional()}),PU=Ha.or(We.extend({toolResult:$e()})),bO=Is.extend({name:S(),arguments:ye(S(),$e()).optional()}),$o=Ve.extend({method:z("tools/call"),params:bO}),kO=Nt.extend({method:z("notifications/tools/list_changed"),params:At.optional()}),RU=C({autoRefresh:Ue().default(!0),debounceMs:ue().int().nonnegative().default(300)}),Fs=dt(["debug","info","notice","warning","error","critical","alert","emergency"]),wO=vt.extend({level:Fs}),Vp=Ve.extend({method:z("logging/setLevel"),params:wO}),$O=At.extend({level:Fs,logger:S().optional(),data:$e()}),EO=Nt.extend({method:z("notifications/message"),params:$O}),TO=C({name:S().optional()}),PO=C({hints:ne(TO).optional(),costPriority:ue().min(0).max(1).optional(),speedPriority:ue().min(0).max(1).optional(),intelligencePriority:ue().min(0).max(1).optional()}),RO=C({mode:dt(["auto","required","none"]).optional()}),OO=C({type:z("tool_result"),toolUseId:S().describe("The unique identifier for the corresponding tool call."),content:ne(Bp).default([]),structuredContent:C({}).loose().optional(),isError:Ue().optional(),_meta:ye(S(),$e()).optional()}),CO=Op("type",[Zp,Hp,qp]),Ta=Op("type",[Zp,Hp,qp,mO,OO]),IO=C({role:Ls,content:xe([Ta,ne(Ta)]),_meta:ye(S(),$e()).optional()}),AO=Is.extend({messages:ne(IO),modelPreferences:PO.optional(),systemPrompt:S().optional(),includeContext:dt(["none","thisServer","allServers"]).optional(),temperature:ue().optional(),maxTokens:ue().int(),stopSequences:ne(S()).optional(),metadata:Fe.optional(),tools:ne(fv).optional(),toolChoice:RO.optional()}),NO=Ve.extend({method:z("sampling/createMessage"),params:AO}),Us=We.extend({model:S(),stopReason:Ee(dt(["endTurn","stopSequence","maxTokens"]).or(S())),role:Ls,content:CO}),Wp=We.extend({model:S(),stopReason:Ee(dt(["endTurn","stopSequence","maxTokens","toolUse"]).or(S())),role:Ls,content:xe([Ta,ne(Ta)])}),zO=C({type:z("boolean"),title:S().optional(),description:S().optional(),default:Ue().optional()}),jO=C({type:z("string"),title:S().optional(),description:S().optional(),minLength:ue().optional(),maxLength:ue().optional(),format:dt(["email","uri","date","date-time"]).optional(),default:S().optional()}),DO=C({type:dt(["number","integer"]),title:S().optional(),description:S().optional(),minimum:ue().optional(),maximum:ue().optional(),default:ue().optional()}),MO=C({type:z("string"),title:S().optional(),description:S().optional(),enum:ne(S()),default:S().optional()}),LO=C({type:z("string"),title:S().optional(),description:S().optional(),oneOf:ne(C({const:S(),title:S()})),default:S().optional()}),FO=C({type:z("string"),title:S().optional(),description:S().optional(),enum:ne(S()),enumNames:ne(S()).optional(),default:S().optional()}),UO=xe([MO,LO]),ZO=C({type:z("array"),title:S().optional(),description:S().optional(),minItems:ue().optional(),maxItems:ue().optional(),items:C({type:z("string"),enum:ne(S())}),default:ne(S()).optional()}),HO=C({type:z("array"),title:S().optional(),description:S().optional(),minItems:ue().optional(),maxItems:ue().optional(),items:C({anyOf:ne(C({const:S(),title:S()}))}),default:ne(S()).optional()}),qO=xe([ZO,HO]),BO=xe([FO,UO,qO]),VO=xe([BO,zO,jO,DO]),WO=Is.extend({mode:z("form").optional(),message:S(),requestedSchema:C({type:z("object"),properties:ye(S(),VO),required:ne(S()).optional()})}),GO=Is.extend({mode:z("url"),message:S(),elicitationId:S(),url:S().url()}),KO=xe([WO,GO]),JO=Ve.extend({method:z("elicitation/create"),params:KO}),YO=At.extend({elicitationId:S()}),XO=Nt.extend({method:z("notifications/elicitation/complete"),params:YO}),Eo=We.extend({action:dt(["accept","decline","cancel"]),content:Cp(t=>t===null?void 0:t,ye(S(),xe([S(),ue(),Ue(),ne(S())])).optional())}),QO=C({type:z("ref/resource"),uri:S()}),eC=C({type:z("ref/prompt"),name:S()}),tC=vt.extend({ref:xe([eC,QO]),argument:C({name:S(),value:S()}),context:C({arguments:ye(S(),S()).optional()}).optional()}),qa=Ve.extend({method:z("completion/complete"),params:tC});rC=We.extend({completion:ot({values:ne(S()).max(100),total:Ee(ue().int()),hasMore:Ee(Ue())})}),nC=C({uri:S().startsWith("file://"),name:S().optional(),_meta:ye(S(),$e()).optional()}),oC=Ve.extend({method:z("roots/list"),params:vt.optional()}),Gp=We.extend({roots:ne(nC)}),sC=Nt.extend({method:z("notifications/roots/list_changed"),params:At.optional()}),OU=xe([Ia,Mp,qa,Vp,Ua,wo,bo,ko,Fa,oO,iO,$o,Za,Na,ja,Da,La]),CU=xe([Ca,Aa,Lp,sC,Ms]),IU=xe([Oa,Us,Wp,Eo,Gp,za,Ma,vo]),AU=xe([Ia,NO,JO,oC,Na,ja,Da,La]),NU=xe([Ca,Aa,EO,cO,rO,kO,yO,Ms,XO]),zU=xe([Oa,BR,rC,_O,dO,XR,QR,tO,Ha,SO,za,Ma,vo]),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===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Ip(o.elicitations,r)}return new t(e,r,n)}},Ip=class extends N{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function Br(t){return t==="completed"||t==="failed"||t==="cancelled"}var _v=v(()=>{});var xv,yv,vv,Ba=v(()=>{xv=Symbol("Let zodToJsonSchema decide on which parser to use"),yv={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"},vv=t=>typeof t=="string"?{...yv,name:t}:{...yv,...t}});var Sv,Kp=v(()=>{Ba();Sv=t=>{let e=vv(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 Jp(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function oe(t,e,r,n,o){t[e]=r,Jp(t,e,n,o)}var Vr=v(()=>{});var Va,Wa=v(()=>{Va=(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 Te(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Va(e,t.currentPath):e.join("/")}}var zt=v(()=>{Wa()});function bv(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==$.ZodAny&&(r.items=U(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&oe(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&oe(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(oe(r,"minItems",t.exactLength.value,t.exactLength.message,e),oe(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var Yp=v(()=>{gs();Vr();je()});function kv(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?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}var Xp=v(()=>{Vr()});function wv(){return{type:"boolean"}}var Qp=v(()=>{});function Ga(t,e){return U(t.type._def,e)}var Ka=v(()=>{je()});var $v,em=v(()=>{je();$v=(t,e)=>U(t.innerType._def,e)});function tm(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>tm(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 iC(t,e)}}var iC,rm=v(()=>{Vr();iC=(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":oe(r,"minimum",n.value,n.message,e);break;case"max":oe(r,"maximum",n.value,n.message,e);break}return r}});function Ev(t,e){return{...U(t.innerType._def,e),default:t.defaultValue()}}var nm=v(()=>{je()});function Tv(t,e){return e.effectStrategy==="input"?U(t.schema._def,e):Te(e)}var om=v(()=>{je();zt()});function Pv(t){return{type:"string",enum:Array.from(t.values)}}var sm=v(()=>{});function Rv(t,e){let r=[U(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),U(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(aC(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 aC,im=v(()=>{je();aC=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function Ov(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 am=v(()=>{});function Ja(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":oe(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":Gt(r,"email",n.message,e);break;case"format:idn-email":Gt(r,"idn-email",n.message,e);break;case"pattern:zod":st(r,Wt.email,n.message,e);break}break;case"url":Gt(r,"uri",n.message,e);break;case"uuid":Gt(r,"uuid",n.message,e);break;case"regex":st(r,n.regex,n.message,e);break;case"cuid":st(r,Wt.cuid,n.message,e);break;case"cuid2":st(r,Wt.cuid2,n.message,e);break;case"startsWith":st(r,RegExp(`^${um(n.value,e)}`),n.message,e);break;case"endsWith":st(r,RegExp(`${um(n.value,e)}$`),n.message,e);break;case"datetime":Gt(r,"date-time",n.message,e);break;case"date":Gt(r,"date",n.message,e);break;case"time":Gt(r,"time",n.message,e);break;case"duration":Gt(r,"duration",n.message,e);break;case"length":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{st(r,RegExp(um(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Gt(r,"ipv4",n.message,e),n.version!=="v4"&&Gt(r,"ipv6",n.message,e);break}case"base64url":st(r,Wt.base64url,n.message,e);break;case"jwt":st(r,Wt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&st(r,Wt.ipv4Cidr,n.message,e),n.version!=="v4"&&st(r,Wt.ipv6Cidr,n.message,e);break}case"emoji":st(r,Wt.emoji(),n.message,e);break;case"ulid":{st(r,Wt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Gt(r,"binary",n.message,e);break}case"contentEncoding:base64":{oe(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{st(r,Wt.base64,n.message,e);break}}break}case"nanoid":st(r,Wt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function um(t,e){return e.patternStrategy==="escape"?uC(t):t}function uC(t){let e="";for(let r=0;r<t.length;r++)cC.has(t[r])||(e+="\\"),e+=t[r];return e}function Gt(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}}})):oe(t,"format",e,r,n)}function st(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:Cv(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):oe(t,"pattern",Cv(e,n),r,n)}function Cv(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
46
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let m=this.seen.get(l),f=m.def??m.schema,p={...f};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,p))}m.isParent||this.override({zodSchema:l,jsonSchema:f,path:m.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}}});var yx=v(()=>{});var ot=v(()=>{go();zl();Pl();ix();la();Ul();ur();ua();ga();Od();Fl();gx();hx();_x();yx()});var yp=v(()=>{ot()});function xp(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new NP(r)}var AP,NP,xx=v(()=>{ot();ot();yp();AP=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");de.init(t,e),t.def=e,t.parse=(r,n)=>Ol(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>In(t,r,n),t.parseAsync=async(r,n)=>Il(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>An(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)=>vt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))}),NP=b("ZodMiniObject",(t,e)=>{fa.init(t,e),AP.init(t,e),re.defineLazy(t,"shape",()=>e.shape)})});var vx=v(()=>{});var Sx=v(()=>{});var bx=v(()=>{});var kx=v(()=>{ot();yp();xx();vx();ot();ga();Sx();bx()});var wx=v(()=>{kx()});var vp=v(()=>{wx()});function At(t){return!!t._zod}function jn(t){let e=Object.values(t);if(e.length===0)return xp({});let r=e.every(At),n=e.every(o=>!At(o));if(r)return xp(t);if(n)return hl(t);throw new Error("Mixed Zod versions detected in object shape.")}function qr(t,e){return At(t)?In(t,e):t.safeParse(e)}async function wa(t,e){return At(t)?await An(t,e):await t.safeParseAsync(e)}function Br(t){if(!t)return;let e;if(At(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function vo(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 jn(t)}}if(At(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function $a(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Ex(t){return t.description}function Tx(t){if(At(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ea(t){if(At(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var Cs=v(()=>{ys();vp()});var Sp=v(()=>{ot()});var Is={};Le(Is,{ZodISODate:()=>Rx,ZodISODateTime:()=>Px,ZodISODuration:()=>Cx,ZodISOTime:()=>Ox,date:()=>kp,datetime:()=>bp,duration:()=>$p,time:()=>wp});function bp(t){return lx(Px,t)}function kp(t){return dx(Rx,t)}function wp(t){return px(Ox,t)}function $p(t){return mx(Cx,t)}var Px,Rx,Ox,Cx,Ep=v(()=>{ot();Tp();Px=b("ZodISODateTime",(t,e)=>{tx.init(t,e),$e.init(t,e)});Rx=b("ZodISODate",(t,e)=>{rx.init(t,e),$e.init(t,e)});Ox=b("ZodISOTime",(t,e)=>{nx.init(t,e),$e.init(t,e)});Cx=b("ZodISODuration",(t,e)=>{ox.init(t,e),$e.init(t,e)})});var Ix,xU,As,Pp=v(()=>{ot();ot();Ix=(t,e)=>{aa.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Tl(t,r)},flatten:{value:r=>El(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},xU=b("ZodError",Ix),As=b("ZodError",Ix,{Parent:Error})});var Ax,Nx,zx,jx,Rp=v(()=>{ot();Pp();Ax=Rl(As),Nx=Cl(As),zx=Al(As),jx=Nl(As)});function S(t){return Cd(qP,t)}function ue(t){return Qd(Ux,t)}function Mx(t){return ep(cR,t)}function Ze(t){return tp(uR,t)}function Zx(t){return rp(lR,t)}function Ee(){return np(dR)}function mR(t){return op(pR,t)}function ne(t,e){return fx(fR,t,e)}function C(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new Hx(r)}function st(t,e){return new Hx({type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},catchall:Ee(),...re.normalizeParams(e)})}function ve(t,e){return new qx({type:"union",options:t,...re.normalizeParams(e)})}function Ip(t,e,r){return new hR({type:"union",options:e,discriminator:t,...re.normalizeParams(r)})}function Pa(t,e){return new gR({type:"intersection",left:t,right:e})}function xe(t,e,r){return new _R({type:"record",keyType:t,valueType:e,...re.normalizeParams(r)})}function pt(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Op({type:"enum",entries:r,...re.normalizeParams(e)})}function z(t,e){return new yR({type:"literal",values:Array.isArray(t)?t:[t],...re.normalizeParams(e)})}function Bx(t){return new xR({type:"transform",transform:t})}function Te(t){return new Vx({type:"optional",innerType:t})}function Lx(t){return new vR({type:"nullable",innerType:t})}function bR(t,e){return new SR({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function wR(t,e){return new kR({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}function $R(t,e){return new Wx({type:"nonoptional",innerType:t,...re.normalizeParams(e)})}function TR(t,e){return new ER({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}function Cp(t,e){return new PR({type:"pipe",in:t,out:e})}function OR(t){return new RR({type:"readonly",innerType:t})}function CR(t){let e=new Ve({check:"custom"});return e._zod.check=t,e}function Kx(t,e){return hp(Gx,t??(()=>!0),e)}function IR(t,e={}){return gp(Gx,t,e)}function AR(t){let e=CR(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(re.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(re.issue(o))}},t(r.value,r)));return e}function Ap(t,e){return Cp(Bx(t),e)}var Re,Fx,qP,$e,BP,Dx,Ta,VP,WP,GP,KP,JP,YP,XP,QP,eR,tR,rR,nR,oR,sR,iR,aR,Ux,cR,uR,lR,dR,pR,fR,Hx,qx,hR,gR,_R,Op,yR,xR,Vx,vR,SR,kR,Wx,ER,PR,RR,Gx,Tp=v(()=>{ot();ot();Sp();Ep();Rp();Re=b("ZodType",(t,e)=>(de.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)=>vt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Ax(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>zx(t,r,n),t.parseAsync=async(r,n)=>Nx(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>jx(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(IR(r,n)),t.superRefine=r=>t.check(AR(r)),t.overwrite=r=>t.check(Nn(r)),t.optional=()=>Te(t),t.nullable=()=>Lx(t),t.nullish=()=>Te(Lx(t)),t.nonoptional=r=>$R(t,r),t.array=()=>ne(t),t.or=r=>ve([t,r]),t.and=r=>Pa(t,r),t.transform=r=>Cp(t,Bx(r)),t.default=r=>bR(t,r),t.prefault=r=>wR(t,r),t.catch=r=>TR(t,r),t.pipe=r=>Cp(t,r),t.readonly=()=>OR(t),t.describe=r=>{let n=t.clone();return Hr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Hr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Hr.get(t);let n=t.clone();return Hr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Fx=b("_ZodString",(t,e)=>{Ts.init(t,e),Re.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(sp(...n)),t.includes=(...n)=>t.check(cp(...n)),t.startsWith=(...n)=>t.check(up(...n)),t.endsWith=(...n)=>t.check(lp(...n)),t.min=(...n)=>t.check(xo(...n)),t.max=(...n)=>t.check(Sa(...n)),t.length=(...n)=>t.check(ba(...n)),t.nonempty=(...n)=>t.check(xo(1,...n)),t.lowercase=n=>t.check(ip(n)),t.uppercase=n=>t.check(ap(n)),t.trim=()=>t.check(pp()),t.normalize=(...n)=>t.check(dp(...n)),t.toLowerCase=()=>t.check(mp()),t.toUpperCase=()=>t.check(fp())}),qP=b("ZodString",(t,e)=>{Ts.init(t,e),Fx.init(t,e),t.email=r=>t.check(Id(BP,r)),t.url=r=>t.check(Dd(VP,r)),t.jwt=r=>t.check(Xd(aR,r)),t.emoji=r=>t.check(Md(WP,r)),t.guid=r=>t.check(_a(Dx,r)),t.uuid=r=>t.check(Ad(Ta,r)),t.uuidv4=r=>t.check(Nd(Ta,r)),t.uuidv6=r=>t.check(zd(Ta,r)),t.uuidv7=r=>t.check(jd(Ta,r)),t.nanoid=r=>t.check(Ld(GP,r)),t.guid=r=>t.check(_a(Dx,r)),t.cuid=r=>t.check(Fd(KP,r)),t.cuid2=r=>t.check(Ud(JP,r)),t.ulid=r=>t.check(Zd(YP,r)),t.base64=r=>t.check(Kd(oR,r)),t.base64url=r=>t.check(Jd(sR,r)),t.xid=r=>t.check(Hd(XP,r)),t.ksuid=r=>t.check(qd(QP,r)),t.ipv4=r=>t.check(Bd(eR,r)),t.ipv6=r=>t.check(Vd(tR,r)),t.cidrv4=r=>t.check(Wd(rR,r)),t.cidrv6=r=>t.check(Gd(nR,r)),t.e164=r=>t.check(Yd(iR,r)),t.datetime=r=>t.check(bp(r)),t.date=r=>t.check(kp(r)),t.time=r=>t.check(wp(r)),t.duration=r=>t.check($p(r))});$e=b("ZodStringFormat",(t,e)=>{ye.init(t,e),Fx.init(t,e)}),BP=b("ZodEmail",(t,e)=>{Bl.init(t,e),$e.init(t,e)}),Dx=b("ZodGUID",(t,e)=>{Hl.init(t,e),$e.init(t,e)}),Ta=b("ZodUUID",(t,e)=>{ql.init(t,e),$e.init(t,e)}),VP=b("ZodURL",(t,e)=>{Vl.init(t,e),$e.init(t,e)}),WP=b("ZodEmoji",(t,e)=>{Wl.init(t,e),$e.init(t,e)}),GP=b("ZodNanoID",(t,e)=>{Gl.init(t,e),$e.init(t,e)}),KP=b("ZodCUID",(t,e)=>{Kl.init(t,e),$e.init(t,e)}),JP=b("ZodCUID2",(t,e)=>{Jl.init(t,e),$e.init(t,e)}),YP=b("ZodULID",(t,e)=>{Yl.init(t,e),$e.init(t,e)}),XP=b("ZodXID",(t,e)=>{Xl.init(t,e),$e.init(t,e)}),QP=b("ZodKSUID",(t,e)=>{Ql.init(t,e),$e.init(t,e)}),eR=b("ZodIPv4",(t,e)=>{ed.init(t,e),$e.init(t,e)}),tR=b("ZodIPv6",(t,e)=>{td.init(t,e),$e.init(t,e)}),rR=b("ZodCIDRv4",(t,e)=>{rd.init(t,e),$e.init(t,e)}),nR=b("ZodCIDRv6",(t,e)=>{nd.init(t,e),$e.init(t,e)}),oR=b("ZodBase64",(t,e)=>{od.init(t,e),$e.init(t,e)}),sR=b("ZodBase64URL",(t,e)=>{sd.init(t,e),$e.init(t,e)}),iR=b("ZodE164",(t,e)=>{id.init(t,e),$e.init(t,e)}),aR=b("ZodJWT",(t,e)=>{ad.init(t,e),$e.init(t,e)}),Ux=b("ZodNumber",(t,e)=>{ma.init(t,e),Re.init(t,e),t.gt=(n,o)=>t.check(xa(n,o)),t.gte=(n,o)=>t.check(Os(n,o)),t.min=(n,o)=>t.check(Os(n,o)),t.lt=(n,o)=>t.check(ya(n,o)),t.lte=(n,o)=>t.check(Rs(n,o)),t.max=(n,o)=>t.check(Rs(n,o)),t.int=n=>t.check(Mx(n)),t.safe=n=>t.check(Mx(n)),t.positive=n=>t.check(xa(0,n)),t.nonnegative=n=>t.check(Os(0,n)),t.negative=n=>t.check(ya(0,n)),t.nonpositive=n=>t.check(Rs(0,n)),t.multipleOf=(n,o)=>t.check(va(n,o)),t.step=(n,o)=>t.check(va(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});cR=b("ZodNumberFormat",(t,e)=>{cd.init(t,e),Ux.init(t,e)});uR=b("ZodBoolean",(t,e)=>{ud.init(t,e),Re.init(t,e)});lR=b("ZodNull",(t,e)=>{ld.init(t,e),Re.init(t,e)});dR=b("ZodUnknown",(t,e)=>{dd.init(t,e),Re.init(t,e)});pR=b("ZodNever",(t,e)=>{pd.init(t,e),Re.init(t,e)});fR=b("ZodArray",(t,e)=>{md.init(t,e),Re.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(xo(r,n)),t.nonempty=r=>t.check(xo(1,r)),t.max=(r,n)=>t.check(Sa(r,n)),t.length=(r,n)=>t.check(ba(r,n)),t.unwrap=()=>t.element});Hx=b("ZodObject",(t,e)=>{fa.init(t,e),Re.init(t,e),re.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>pt(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:Ee()}),t.loose=()=>t.clone({...t._zod.def,catchall:Ee()}),t.strict=()=>t.clone({...t._zod.def,catchall:mR()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>re.extend(t,r),t.merge=r=>re.merge(t,r),t.pick=r=>re.pick(t,r),t.omit=r=>re.omit(t,r),t.partial=(...r)=>re.partial(Vx,t,r[0]),t.required=(...r)=>re.required(Wx,t,r[0])});qx=b("ZodUnion",(t,e)=>{ha.init(t,e),Re.init(t,e),t.options=e.options});hR=b("ZodDiscriminatedUnion",(t,e)=>{qx.init(t,e),fd.init(t,e)});gR=b("ZodIntersection",(t,e)=>{hd.init(t,e),Re.init(t,e)});_R=b("ZodRecord",(t,e)=>{gd.init(t,e),Re.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});Op=b("ZodEnum",(t,e)=>{_d.init(t,e),Re.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 Op({...e,checks:[],...re.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 Op({...e,checks:[],...re.normalizeParams(o),entries:s})}});yR=b("ZodLiteral",(t,e)=>{yd.init(t,e),Re.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});xR=b("ZodTransform",(t,e)=>{xd.init(t,e),Re.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(re.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(re.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});Vx=b("ZodOptional",(t,e)=>{vd.init(t,e),Re.init(t,e),t.unwrap=()=>t._zod.def.innerType});vR=b("ZodNullable",(t,e)=>{Sd.init(t,e),Re.init(t,e),t.unwrap=()=>t._zod.def.innerType});SR=b("ZodDefault",(t,e)=>{bd.init(t,e),Re.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});kR=b("ZodPrefault",(t,e)=>{kd.init(t,e),Re.init(t,e),t.unwrap=()=>t._zod.def.innerType});Wx=b("ZodNonOptional",(t,e)=>{wd.init(t,e),Re.init(t,e),t.unwrap=()=>t._zod.def.innerType});ER=b("ZodCatch",(t,e)=>{$d.init(t,e),Re.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});PR=b("ZodPipe",(t,e)=>{Ed.init(t,e),Re.init(t,e),t.in=e.in,t.out=e.out});RR=b("ZodReadonly",(t,e)=>{Td.init(t,e),Re.init(t,e)});Gx=b("ZodCustom",(t,e)=>{Pd.init(t,e),Re.init(t,e)})});var Jx=v(()=>{});var Yx=v(()=>{});var Xx=v(()=>{ot();Tp();Sp();Pp();Rp();Jx();ot();cx();ga();Ep();Yx();xt(ax())});var Qx=v(()=>{Xx()});var ev=v(()=>{Qx()});function _v(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function yv(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var zp,tv,Vr,Oa,Ue,rv,nv,zU,jR,DR,jp,St,Ns,ov,We,Nt,zt,Ge,Ca,sv,Dp,iv,av,Mp,zs,D,Lp,cv,uv,jU,Ia,MR,Aa,LR,js,So,lv,FR,UR,ZR,HR,qR,BR,Fp,VR,WR,Up,Na,GR,KR,za,JR,Ds,Ms,YR,Ls,bo,XR,Fs,ja,Da,Ma,DU,La,Fa,Ua,dv,pv,mv,Zp,fv,Us,ko,hv,QR,wo,eO,$o,tO,Hp,rO,Za,nO,oO,sO,iO,aO,cO,uO,lO,dO,pO,Eo,mO,fO,Ha,qp,Bp,Vp,hO,gO,_O,Wp,yO,xO,vO,SO,bO,gv,qa,kO,Ba,MU,wO,To,$O,LU,Zs,EO,Gp,TO,PO,RO,OO,CO,IO,AO,Ra,NO,zO,jO,Hs,Kp,DO,MO,LO,FO,UO,ZO,HO,qO,BO,VO,WO,GO,KO,JO,YO,XO,QO,eC,Po,tC,rC,nC,Va,oC,sC,iC,Jp,aC,FU,UU,ZU,HU,qU,BU,N,Np,Dn=v(()=>{ev();zp="2025-11-25",tv=[zp,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Vr="io.modelcontextprotocol/related-task",Oa="2.0",Ue=Kx(t=>t!==null&&(typeof t=="object"||typeof t=="function")),rv=ve([S(),ue().int()]),nv=S(),zU=st({ttl:ue().optional(),pollInterval:ue().optional()}),jR=C({ttl:ue().optional()}),DR=C({taskId:S()}),jp=st({progressToken:rv.optional(),[Vr]:DR.optional()}),St=C({_meta:jp.optional()}),Ns=St.extend({task:jR.optional()}),ov=t=>Ns.safeParse(t).success,We=C({method:S(),params:St.loose().optional()}),Nt=C({_meta:jp.optional()}),zt=C({method:S(),params:Nt.loose().optional()}),Ge=st({_meta:jp.optional()}),Ca=ve([S(),ue().int()]),sv=C({jsonrpc:z(Oa),id:Ca,...We.shape}).strict(),Dp=t=>sv.safeParse(t).success,iv=C({jsonrpc:z(Oa),...zt.shape}).strict(),av=t=>iv.safeParse(t).success,Mp=C({jsonrpc:z(Oa),id:Ca,result:Ge}).strict(),zs=t=>Mp.safeParse(t).success;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(D||(D={}));Lp=C({jsonrpc:z(Oa),id:Ca.optional(),error:C({code:ue().int(),message:S(),data:Ee().optional()})}).strict(),cv=t=>Lp.safeParse(t).success,uv=ve([sv,iv,Mp,Lp]),jU=ve([Mp,Lp]),Ia=Ge.strict(),MR=Nt.extend({requestId:Ca.optional(),reason:S().optional()}),Aa=zt.extend({method:z("notifications/cancelled"),params:MR}),LR=C({src:S(),mimeType:S().optional(),sizes:ne(S()).optional(),theme:pt(["light","dark"]).optional()}),js=C({icons:ne(LR).optional()}),So=C({name:S(),title:S().optional()}),lv=So.extend({...So.shape,...js.shape,version:S(),websiteUrl:S().optional(),description:S().optional()}),FR=Pa(C({applyDefaults:Ze().optional()}),xe(S(),Ee())),UR=Ap(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Pa(C({form:FR.optional(),url:Ue.optional()}),xe(S(),Ee()).optional())),ZR=st({list:Ue.optional(),cancel:Ue.optional(),requests:st({sampling:st({createMessage:Ue.optional()}).optional(),elicitation:st({create:Ue.optional()}).optional()}).optional()}),HR=st({list:Ue.optional(),cancel:Ue.optional(),requests:st({tools:st({call:Ue.optional()}).optional()}).optional()}),qR=C({experimental:xe(S(),Ue).optional(),sampling:C({context:Ue.optional(),tools:Ue.optional()}).optional(),elicitation:UR.optional(),roots:C({listChanged:Ze().optional()}).optional(),tasks:ZR.optional(),extensions:xe(S(),Ue).optional()}),BR=St.extend({protocolVersion:S(),capabilities:qR,clientInfo:lv}),Fp=We.extend({method:z("initialize"),params:BR}),VR=C({experimental:xe(S(),Ue).optional(),logging:Ue.optional(),completions:Ue.optional(),prompts:C({listChanged:Ze().optional()}).optional(),resources:C({subscribe:Ze().optional(),listChanged:Ze().optional()}).optional(),tools:C({listChanged:Ze().optional()}).optional(),tasks:HR.optional(),extensions:xe(S(),Ue).optional()}),WR=Ge.extend({protocolVersion:S(),capabilities:VR,serverInfo:lv,instructions:S().optional()}),Up=zt.extend({method:z("notifications/initialized"),params:Nt.optional()}),Na=We.extend({method:z("ping"),params:St.optional()}),GR=C({progress:ue(),total:Te(ue()),message:Te(S())}),KR=C({...Nt.shape,...GR.shape,progressToken:rv}),za=zt.extend({method:z("notifications/progress"),params:KR}),JR=St.extend({cursor:nv.optional()}),Ds=We.extend({params:JR.optional()}),Ms=Ge.extend({nextCursor:nv.optional()}),YR=pt(["working","input_required","completed","failed","cancelled"]),Ls=C({taskId:S(),status:YR,ttl:ve([ue(),Zx()]),createdAt:S(),lastUpdatedAt:S(),pollInterval:Te(ue()),statusMessage:Te(S())}),bo=Ge.extend({task:Ls}),XR=Nt.merge(Ls),Fs=zt.extend({method:z("notifications/tasks/status"),params:XR}),ja=We.extend({method:z("tasks/get"),params:St.extend({taskId:S()})}),Da=Ge.merge(Ls),Ma=We.extend({method:z("tasks/result"),params:St.extend({taskId:S()})}),DU=Ge.loose(),La=Ds.extend({method:z("tasks/list")}),Fa=Ms.extend({tasks:ne(Ls)}),Ua=We.extend({method:z("tasks/cancel"),params:St.extend({taskId:S()})}),dv=Ge.merge(Ls),pv=C({uri:S(),mimeType:Te(S()),_meta:xe(S(),Ee()).optional()}),mv=pv.extend({text:S()}),Zp=S().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),fv=pv.extend({blob:Zp}),Us=pt(["user","assistant"]),ko=C({audience:ne(Us).optional(),priority:ue().min(0).max(1).optional(),lastModified:Is.datetime({offset:!0}).optional()}),hv=C({...So.shape,...js.shape,uri:S(),description:Te(S()),mimeType:Te(S()),size:Te(ue()),annotations:ko.optional(),_meta:Te(st({}))}),QR=C({...So.shape,...js.shape,uriTemplate:S(),description:Te(S()),mimeType:Te(S()),annotations:ko.optional(),_meta:Te(st({}))}),wo=Ds.extend({method:z("resources/list")}),eO=Ms.extend({resources:ne(hv)}),$o=Ds.extend({method:z("resources/templates/list")}),tO=Ms.extend({resourceTemplates:ne(QR)}),Hp=St.extend({uri:S()}),rO=Hp,Za=We.extend({method:z("resources/read"),params:rO}),nO=Ge.extend({contents:ne(ve([mv,fv]))}),oO=zt.extend({method:z("notifications/resources/list_changed"),params:Nt.optional()}),sO=Hp,iO=We.extend({method:z("resources/subscribe"),params:sO}),aO=Hp,cO=We.extend({method:z("resources/unsubscribe"),params:aO}),uO=Nt.extend({uri:S()}),lO=zt.extend({method:z("notifications/resources/updated"),params:uO}),dO=C({name:S(),description:Te(S()),required:Te(Ze())}),pO=C({...So.shape,...js.shape,description:Te(S()),arguments:Te(ne(dO)),_meta:Te(st({}))}),Eo=Ds.extend({method:z("prompts/list")}),mO=Ms.extend({prompts:ne(pO)}),fO=St.extend({name:S(),arguments:xe(S(),S()).optional()}),Ha=We.extend({method:z("prompts/get"),params:fO}),qp=C({type:z("text"),text:S(),annotations:ko.optional(),_meta:xe(S(),Ee()).optional()}),Bp=C({type:z("image"),data:Zp,mimeType:S(),annotations:ko.optional(),_meta:xe(S(),Ee()).optional()}),Vp=C({type:z("audio"),data:Zp,mimeType:S(),annotations:ko.optional(),_meta:xe(S(),Ee()).optional()}),hO=C({type:z("tool_use"),name:S(),id:S(),input:xe(S(),Ee()),_meta:xe(S(),Ee()).optional()}),gO=C({type:z("resource"),resource:ve([mv,fv]),annotations:ko.optional(),_meta:xe(S(),Ee()).optional()}),_O=hv.extend({type:z("resource_link")}),Wp=ve([qp,Bp,Vp,_O,gO]),yO=C({role:Us,content:Wp}),xO=Ge.extend({description:S().optional(),messages:ne(yO)}),vO=zt.extend({method:z("notifications/prompts/list_changed"),params:Nt.optional()}),SO=C({title:S().optional(),readOnlyHint:Ze().optional(),destructiveHint:Ze().optional(),idempotentHint:Ze().optional(),openWorldHint:Ze().optional()}),bO=C({taskSupport:pt(["required","optional","forbidden"]).optional()}),gv=C({...So.shape,...js.shape,description:S().optional(),inputSchema:C({type:z("object"),properties:xe(S(),Ue).optional(),required:ne(S()).optional()}).catchall(Ee()),outputSchema:C({type:z("object"),properties:xe(S(),Ue).optional(),required:ne(S()).optional()}).catchall(Ee()).optional(),annotations:SO.optional(),execution:bO.optional(),_meta:xe(S(),Ee()).optional()}),qa=Ds.extend({method:z("tools/list")}),kO=Ms.extend({tools:ne(gv)}),Ba=Ge.extend({content:ne(Wp).default([]),structuredContent:xe(S(),Ee()).optional(),isError:Ze().optional()}),MU=Ba.or(Ge.extend({toolResult:Ee()})),wO=Ns.extend({name:S(),arguments:xe(S(),Ee()).optional()}),To=We.extend({method:z("tools/call"),params:wO}),$O=zt.extend({method:z("notifications/tools/list_changed"),params:Nt.optional()}),LU=C({autoRefresh:Ze().default(!0),debounceMs:ue().int().nonnegative().default(300)}),Zs=pt(["debug","info","notice","warning","error","critical","alert","emergency"]),EO=St.extend({level:Zs}),Gp=We.extend({method:z("logging/setLevel"),params:EO}),TO=Nt.extend({level:Zs,logger:S().optional(),data:Ee()}),PO=zt.extend({method:z("notifications/message"),params:TO}),RO=C({name:S().optional()}),OO=C({hints:ne(RO).optional(),costPriority:ue().min(0).max(1).optional(),speedPriority:ue().min(0).max(1).optional(),intelligencePriority:ue().min(0).max(1).optional()}),CO=C({mode:pt(["auto","required","none"]).optional()}),IO=C({type:z("tool_result"),toolUseId:S().describe("The unique identifier for the corresponding tool call."),content:ne(Wp).default([]),structuredContent:C({}).loose().optional(),isError:Ze().optional(),_meta:xe(S(),Ee()).optional()}),AO=Ip("type",[qp,Bp,Vp]),Ra=Ip("type",[qp,Bp,Vp,hO,IO]),NO=C({role:Us,content:ve([Ra,ne(Ra)]),_meta:xe(S(),Ee()).optional()}),zO=Ns.extend({messages:ne(NO),modelPreferences:OO.optional(),systemPrompt:S().optional(),includeContext:pt(["none","thisServer","allServers"]).optional(),temperature:ue().optional(),maxTokens:ue().int(),stopSequences:ne(S()).optional(),metadata:Ue.optional(),tools:ne(gv).optional(),toolChoice:CO.optional()}),jO=We.extend({method:z("sampling/createMessage"),params:zO}),Hs=Ge.extend({model:S(),stopReason:Te(pt(["endTurn","stopSequence","maxTokens"]).or(S())),role:Us,content:AO}),Kp=Ge.extend({model:S(),stopReason:Te(pt(["endTurn","stopSequence","maxTokens","toolUse"]).or(S())),role:Us,content:ve([Ra,ne(Ra)])}),DO=C({type:z("boolean"),title:S().optional(),description:S().optional(),default:Ze().optional()}),MO=C({type:z("string"),title:S().optional(),description:S().optional(),minLength:ue().optional(),maxLength:ue().optional(),format:pt(["email","uri","date","date-time"]).optional(),default:S().optional()}),LO=C({type:pt(["number","integer"]),title:S().optional(),description:S().optional(),minimum:ue().optional(),maximum:ue().optional(),default:ue().optional()}),FO=C({type:z("string"),title:S().optional(),description:S().optional(),enum:ne(S()),default:S().optional()}),UO=C({type:z("string"),title:S().optional(),description:S().optional(),oneOf:ne(C({const:S(),title:S()})),default:S().optional()}),ZO=C({type:z("string"),title:S().optional(),description:S().optional(),enum:ne(S()),enumNames:ne(S()).optional(),default:S().optional()}),HO=ve([FO,UO]),qO=C({type:z("array"),title:S().optional(),description:S().optional(),minItems:ue().optional(),maxItems:ue().optional(),items:C({type:z("string"),enum:ne(S())}),default:ne(S()).optional()}),BO=C({type:z("array"),title:S().optional(),description:S().optional(),minItems:ue().optional(),maxItems:ue().optional(),items:C({anyOf:ne(C({const:S(),title:S()}))}),default:ne(S()).optional()}),VO=ve([qO,BO]),WO=ve([ZO,HO,VO]),GO=ve([WO,DO,MO,LO]),KO=Ns.extend({mode:z("form").optional(),message:S(),requestedSchema:C({type:z("object"),properties:xe(S(),GO),required:ne(S()).optional()})}),JO=Ns.extend({mode:z("url"),message:S(),elicitationId:S(),url:S().url()}),YO=ve([KO,JO]),XO=We.extend({method:z("elicitation/create"),params:YO}),QO=Nt.extend({elicitationId:S()}),eC=zt.extend({method:z("notifications/elicitation/complete"),params:QO}),Po=Ge.extend({action:pt(["accept","decline","cancel"]),content:Ap(t=>t===null?void 0:t,xe(S(),ve([S(),ue(),Ze(),ne(S())])).optional())}),tC=C({type:z("ref/resource"),uri:S()}),rC=C({type:z("ref/prompt"),name:S()}),nC=St.extend({ref:ve([rC,tC]),argument:C({name:S(),value:S()}),context:C({arguments:xe(S(),S()).optional()}).optional()}),Va=We.extend({method:z("completion/complete"),params:nC});oC=Ge.extend({completion:st({values:ne(S()).max(100),total:Te(ue().int()),hasMore:Te(Ze())})}),sC=C({uri:S().startsWith("file://"),name:S().optional(),_meta:xe(S(),Ee()).optional()}),iC=We.extend({method:z("roots/list"),params:St.optional()}),Jp=Ge.extend({roots:ne(sC)}),aC=zt.extend({method:z("notifications/roots/list_changed"),params:Nt.optional()}),FU=ve([Na,Fp,Va,Gp,Ha,Eo,wo,$o,Za,iO,cO,To,qa,ja,Ma,La,Ua]),UU=ve([Aa,za,Up,aC,Fs]),ZU=ve([Ia,Hs,Kp,Po,Jp,Da,Fa,bo]),HU=ve([Na,jO,XO,iC,ja,Ma,La,Ua]),qU=ve([Aa,za,PO,lO,oO,$O,vO,Fs,eC]),BU=ve([Ia,WR,oC,xO,mO,eO,tO,nO,Ba,kO,Da,Fa,bo]),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===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Np(o.elicitations,r)}return new t(e,r,n)}},Np=class extends N{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}}});function Wr(t){return t==="completed"||t==="failed"||t==="cancelled"}var xv=v(()=>{});var Sv,vv,bv,Wa=v(()=>{Sv=Symbol("Let zodToJsonSchema decide on which parser to use"),vv={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},bv=t=>typeof t=="string"?{...vv,name:t}:{...vv,...t}});var kv,Yp=v(()=>{Wa();kv=t=>{let e=bv(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}}});function Xp(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function oe(t,e,r,n,o){t[e]=r,Xp(t,e,n,o)}var Gr=v(()=>{});var Ga,Ka=v(()=>{Ga=(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 Pe(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Ga(e,t.currentPath):e.join("/")}}var jt=v(()=>{Ka()});function wv(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==$.ZodAny&&(r.items=U(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&oe(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&oe(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(oe(r,"minItems",t.exactLength.value,t.exactLength.message,e),oe(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}var Qp=v(()=>{ys();Gr();De()});function $v(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?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}var em=v(()=>{Gr()});function Ev(){return{type:"boolean"}}var tm=v(()=>{});function Ja(t,e){return U(t.type._def,e)}var Ya=v(()=>{De()});var Tv,rm=v(()=>{De();Tv=(t,e)=>U(t.innerType._def,e)});function nm(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>nm(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 cC(t,e)}}var cC,om=v(()=>{Gr();cC=(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":oe(r,"minimum",n.value,n.message,e);break;case"max":oe(r,"maximum",n.value,n.message,e);break}return r}});function Pv(t,e){return{...U(t.innerType._def,e),default:t.defaultValue()}}var sm=v(()=>{De()});function Rv(t,e){return e.effectStrategy==="input"?U(t.schema._def,e):Pe(e)}var im=v(()=>{De();jt()});function Ov(t){return{type:"string",enum:Array.from(t.values)}}var am=v(()=>{});function Cv(t,e){let r=[U(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),U(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(uC(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 uC,cm=v(()=>{De();uC=t=>"type"in t&&t.type==="string"?!1:"allOf"in t});function Iv(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 um=v(()=>{});function Xa(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":oe(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":Kt(r,"email",n.message,e);break;case"format:idn-email":Kt(r,"idn-email",n.message,e);break;case"pattern:zod":it(r,Gt.email,n.message,e);break}break;case"url":Kt(r,"uri",n.message,e);break;case"uuid":Kt(r,"uuid",n.message,e);break;case"regex":it(r,n.regex,n.message,e);break;case"cuid":it(r,Gt.cuid,n.message,e);break;case"cuid2":it(r,Gt.cuid2,n.message,e);break;case"startsWith":it(r,RegExp(`^${dm(n.value,e)}`),n.message,e);break;case"endsWith":it(r,RegExp(`${dm(n.value,e)}$`),n.message,e);break;case"datetime":Kt(r,"date-time",n.message,e);break;case"date":Kt(r,"date",n.message,e);break;case"time":Kt(r,"time",n.message,e);break;case"duration":Kt(r,"duration",n.message,e);break;case"length":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{it(r,RegExp(dm(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Kt(r,"ipv4",n.message,e),n.version!=="v4"&&Kt(r,"ipv6",n.message,e);break}case"base64url":it(r,Gt.base64url,n.message,e);break;case"jwt":it(r,Gt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&it(r,Gt.ipv4Cidr,n.message,e),n.version!=="v4"&&it(r,Gt.ipv6Cidr,n.message,e);break}case"emoji":it(r,Gt.emoji(),n.message,e);break;case"ulid":{it(r,Gt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Kt(r,"binary",n.message,e);break}case"contentEncoding:base64":{oe(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{it(r,Gt.base64,n.message,e);break}}break}case"nanoid":it(r,Gt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function dm(t,e){return e.patternStrategy==="escape"?dC(t):t}function dC(t){let e="";for(let r=0;r<t.length;r++)lC.has(t[r])||(e+="\\"),e+=t[r];return e}function Kt(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}}})):oe(t,"format",e,r,n)}function it(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:Av(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):oe(t,"pattern",Av(e,n),r,n)}function Av(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
47
47
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
48
48
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
49
49
  `:`[${n[c]}\r
50
- ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}var cm,Wt,cC,Ya=v(()=>{Vr();Wt={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:()=>(cm===void 0&&(cm=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),cm),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-_]*$/};cC=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function Xa(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===$.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Te(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===$.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Ja(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===$.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===$.ZodBranded&&t.keyType._def.type._def.typeName===$.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Ga(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var Qa=v(()=>{gs();je();Ya();Ka();zt()});function Iv(t,e){if(e.mapStrategy==="record")return Xa(t,e);let r=U(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Te(e),n=U(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Te(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var lm=v(()=>{je();Qa();zt()});function Av(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 dm=v(()=>{});function Nv(t){return t.target==="openAi"?void 0:{not:Te({...t,currentPath:[...t.currentPath,"not"]})}}var pm=v(()=>{zt()});function zv(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var mm=v(()=>{});function Dv(t,e){if(e.target==="openApi3")return jv(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Zs&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Zs[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 jv(t,e)}var Zs,jv,ec=v(()=>{je();Zs={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};jv=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>U(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0}});function Mv(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:Zs[t.innerType._def.typeName],nullable:!0}:{type:[Zs[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=U(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=U(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var fm=v(()=>{je();ec()});function Lv(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",Jp(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}var hm=v(()=>{Vr()});function Fv(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=dC(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=U(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=lC(t,e);return i!==void 0&&(n.additionalProperties=i),n}function lC(t,e){if(t.catchall._def.typeName!=="ZodNever")return U(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function dC(t){try{return t.isOptional()}catch{return!0}}var gm=v(()=>{je()});var Uv,_m=v(()=>{je();zt();Uv=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return U(t.innerType._def,e);let r=U(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Te(e)},r]}:Te(e)}});var Zv,ym=v(()=>{je();Zv=(t,e)=>{if(e.pipeStrategy==="input")return U(t.in._def,e);if(e.pipeStrategy==="output")return U(t.out._def,e);let r=U(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=U(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function Hv(t,e){return U(t.type._def,e)}var xm=v(()=>{je()});function qv(t,e){let n={type:"array",uniqueItems:!0,items:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&oe(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&oe(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var vm=v(()=>{Vr();je()});function Bv(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>U(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:U(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>U(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var Sm=v(()=>{je()});function Vv(t){return{not:Te(t)}}var bm=v(()=>{zt()});function Wv(t){return Te(t)}var km=v(()=>{zt()});var Gv,wm=v(()=>{je();Gv=(t,e)=>U(t.innerType._def,e)});var Kv,$m=v(()=>{gs();zt();Yp();Xp();Qp();Ka();em();rm();nm();om();sm();im();am();lm();dm();pm();mm();fm();hm();gm();_m();ym();xm();Qa();vm();Ya();Sm();bm();ec();km();wm();Kv=(t,e,r)=>{switch(e){case $.ZodString:return Ja(t,r);case $.ZodNumber:return Lv(t,r);case $.ZodObject:return Fv(t,r);case $.ZodBigInt:return kv(t,r);case $.ZodBoolean:return wv();case $.ZodDate:return tm(t,r);case $.ZodUndefined:return Vv(r);case $.ZodNull:return zv(r);case $.ZodArray:return bv(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return Dv(t,r);case $.ZodIntersection:return Rv(t,r);case $.ZodTuple:return Bv(t,r);case $.ZodRecord:return Xa(t,r);case $.ZodLiteral:return Ov(t,r);case $.ZodEnum:return Pv(t);case $.ZodNativeEnum:return Av(t);case $.ZodNullable:return Mv(t,r);case $.ZodOptional:return Uv(t,r);case $.ZodMap:return Iv(t,r);case $.ZodSet:return qv(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return Hv(t,r);case $.ZodNaN:case $.ZodNever:return Nv(r);case $.ZodEffects:return Tv(t,r);case $.ZodAny:return Te(r);case $.ZodUnknown:return Wv(r);case $.ZodDefault:return Ev(t,r);case $.ZodBranded:return Ga(t,r);case $.ZodReadonly:return Gv(t,r);case $.ZodCatch:return $v(t,r);case $.ZodPipeline:return Zv(t,r);case $.ZodFunction:case $.ZodVoid:case $.ZodSymbol:return;default:return(n=>{})(e)}}});function U(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==xv)return a}if(n&&!r){let a=pC(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=Kv(t,t.typeName,e),i=typeof s=="function"?U(s(),e):s;if(i&&mC(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var pC,mC,je=v(()=>{Ba();$m();Wa();zt();pC=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Va(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`),Te(e)):e.$refStrategy==="seen"?Te(e):void 0}},mC=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var Jv=v(()=>{});var Em,Tm=v(()=>{je();Kp();zt();Em=(t,e)=>{let r=Sv(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:U(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Te(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=U(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Te(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 Yv=v(()=>{Ba();Kp();Vr();Wa();je();Jv();zt();Yp();Xp();Qp();Ka();em();rm();nm();om();sm();im();am();lm();dm();pm();mm();fm();hm();gm();_m();ym();xm();wm();Qa();vm();Ya();Sm();bm();ec();km();$m();Tm();Tm()});function fC(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Pm(t,e){return It(t)?hp(t,{target:fC(e?.target),io:e?.pipeStrategy??"input"}):Em(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Rm(t){let r=Hr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=wa(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Om(t,e){let r=Zr(t,e);if(!r.success)throw r.error;return r.data}var Cm=v(()=>{yp();Rs();Yv()});function Xv(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Qv(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];Xv(i)&&Xv(s)?r[o]={...i,...s}:r[o]=s}return r}var hC,tc,eS=v(()=>{Rs();zn();_v();Cm();hC=6e4,tc=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(Ca,r=>{this._oncancel(r)}),this.setNotificationHandler(Aa,r=>{this._onprogress(r)}),this.setRequestHandler(Ia,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Na,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ja,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,m=new N(d.error.code,d.error.message,d.error.data);l(m)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new N(D.InvalidParams,`Task not found: ${s}`);if(!Br(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Br(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[qr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Da,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(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(La,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(Br(o.status))throw new N(D.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new N(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof N?o:new N(D.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),N.fromError(D.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),As(s)||iv(s)?this._onresponse(s):zp(s)?this._onrequest(s,i):sv(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=N.fromError(D.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[qr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=rv(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,m)=>{if(i.signal.aborted)throw new N(D.ConnectionClosed,"Request was cancelled");let f={...m,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let p=f.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),As(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(As(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),As(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(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,vo,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new N(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Br(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(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new N(D.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof N?i:new N(D.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let m=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[qr]:c}});let p=y=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let x=y instanceof N?y:new N(D.RequestTimeout,String(y));l(x)};this._responseHandlers.set(m,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let x=Zr(r,y.result);x.success?u(x.data):l(x.error)}catch(x){l(x)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??hC,g=()=>p(N.fromError(D.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let y=x=>{let k=this._responseHandlers.get(m);k?k(x):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,y),this._enqueueTaskMessage(_,{type:"request",message:f,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(m),l(x)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(m),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},za,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},Ma,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},uv,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||{},[qr]: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||{},[qr]: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||{},[qr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Rm(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Om(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=Rm(e);this._notificationHandlers.set(n,o=>{let s=Om(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"&&zp(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new N(D.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new N(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new N(D.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new N(D.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Ms.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Br(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(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Br(a.status))throw new N(D.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Ms.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Br(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var Bs=R(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.regexpCode=ce.getEsmExportName=ce.getProperty=ce.safeStringify=ce.stringify=ce.strConcat=ce.addCodeArg=ce.str=ce._=ce.nil=ce._Code=ce.Name=ce.IDENTIFIER=ce._CodeOrName=void 0;var Hs=class{};ce._CodeOrName=Hs;ce.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var jn=class extends Hs{constructor(e){if(super(),!ce.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}}};ce.Name=jn;var jt=class extends Hs{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 jn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ce._Code=jt;ce.nil=new jt("");function tS(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Am(r,e[n]),r.push(t[++n]);return new jt(r)}ce._=tS;var Im=new jt("+");function rS(t,...e){let r=[qs(t[0])],n=0;for(;n<e.length;)r.push(Im),Am(r,e[n]),r.push(Im,qs(t[++n]));return gC(r),new jt(r)}ce.str=rS;function Am(t,e){e instanceof jt?t.push(...e._items):e instanceof jn?t.push(e):t.push(xC(e))}ce.addCodeArg=Am;function gC(t){let e=1;for(;e<t.length-1;){if(t[e]===Im){let r=_C(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function _C(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof jn||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 jn))return`"${t}${e.slice(1)}`}function yC(t,e){return e.emptyStr()?t:t.emptyStr()?e:rS`${t}${e}`}ce.strConcat=yC;function xC(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:qs(Array.isArray(t)?t.join(","):t)}function vC(t){return new jt(qs(t))}ce.stringify=vC;function qs(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ce.safeStringify=qs;function SC(t){return typeof t=="string"&&ce.IDENTIFIER.test(t)?new jt(`.${t}`):tS`[${t}]`}ce.getProperty=SC;function bC(t){if(typeof t=="string"&&ce.IDENTIFIER.test(t))return new jt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ce.getEsmExportName=bC;function kC(t){return new jt(t.toString())}ce.regexpCode=kC});var jm=R(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.ValueScope=mt.ValueScopeName=mt.Scope=mt.varKinds=mt.UsedValueState=void 0;var pt=Bs(),Nm=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},rc;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(rc||(mt.UsedValueState=rc={}));mt.varKinds={const:new pt.Name("const"),let:new pt.Name("let"),var:new pt.Name("var")};var nc=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof pt.Name?e:this.name(e)}name(e){return new pt.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}}};mt.Scope=nc;var oc=class extends pt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,pt._)`.${new pt.Name(r)}[${n}]`}};mt.ValueScopeName=oc;var wC=(0,pt._)`\n`,zm=class extends nc{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?wC:pt.nil}}get(){return this._scope}name(e){return new oc(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,pt._)`${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=pt.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,rc.Started);let l=r(u);if(l){let d=this.opts.es5?mt.varKinds.var:mt.varKinds.const;s=(0,pt._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,pt._)`${s}${l}${this.opts._n}`;else throw new Nm(u);c.set(u,rc.Completed)})}return s}};mt.ValueScope=zm});var X=R(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.or=Q.and=Q.not=Q.CodeGen=Q.operators=Q.varKinds=Q.ValueScopeName=Q.ValueScope=Q.Scope=Q.Name=Q.regexpCode=Q.stringify=Q.getProperty=Q.nil=Q.strConcat=Q.str=Q._=void 0;var se=Bs(),Kt=jm(),Wr=Bs();Object.defineProperty(Q,"_",{enumerable:!0,get:function(){return Wr._}});Object.defineProperty(Q,"str",{enumerable:!0,get:function(){return Wr.str}});Object.defineProperty(Q,"strConcat",{enumerable:!0,get:function(){return Wr.strConcat}});Object.defineProperty(Q,"nil",{enumerable:!0,get:function(){return Wr.nil}});Object.defineProperty(Q,"getProperty",{enumerable:!0,get:function(){return Wr.getProperty}});Object.defineProperty(Q,"stringify",{enumerable:!0,get:function(){return Wr.stringify}});Object.defineProperty(Q,"regexpCode",{enumerable:!0,get:function(){return Wr.regexpCode}});Object.defineProperty(Q,"Name",{enumerable:!0,get:function(){return Wr.Name}});var cc=jm();Object.defineProperty(Q,"Scope",{enumerable:!0,get:function(){return cc.Scope}});Object.defineProperty(Q,"ValueScope",{enumerable:!0,get:function(){return cc.ValueScope}});Object.defineProperty(Q,"ValueScopeName",{enumerable:!0,get:function(){return cc.ValueScopeName}});Object.defineProperty(Q,"varKinds",{enumerable:!0,get:function(){return cc.varKinds}});Q.operators={GT:new se._Code(">"),GTE:new se._Code(">="),LT:new se._Code("<"),LTE:new se._Code("<="),EQ:new se._Code("==="),NEQ:new se._Code("!=="),NOT:new se._Code("!"),OR:new se._Code("||"),AND:new se._Code("&&"),ADD:new se._Code("+")};var kr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Dm=class extends kr{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Kt.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=Po(this.rhs,e,r)),this}get names(){return this.rhs instanceof se._CodeOrName?this.rhs.names:{}}},sc=class extends kr{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 se.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Po(this.rhs,e,r),this}get names(){let e=this.lhs instanceof se.Name?{}:{...this.lhs.names};return ac(e,this.rhs)}},Mm=class extends sc{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Lm=class extends kr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Fm=class extends kr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Um=class extends kr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Zm=class extends kr{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=Po(this.code,e,r),this}get names(){return this.code instanceof se._CodeOrName?this.code.names:{}}},Vs=class extends kr{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)||($C(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Ln(e,r.names),{})}},wr=class extends Vs{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Hm=class extends Vs{},To=class extends wr{};To.kind="else";var Dn=class t extends wr{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 To(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(nS(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=Po(this.condition,e,r),this}get names(){let e=super.names;return ac(e,this.condition),this.else&&Ln(e,this.else.names),e}};Dn.kind="if";var Mn=class extends wr{};Mn.kind="for";var qm=class extends Mn{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=Po(this.iteration,e,r),this}get names(){return Ln(super.names,this.iteration.names)}},Bm=class extends Mn{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Kt.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=ac(super.names,this.from);return ac(e,this.to)}},ic=class extends Mn{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=Po(this.iterable,e,r),this}get names(){return Ln(super.names,this.iterable.names)}},Ws=class extends wr{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)}};Ws.kind="func";var Gs=class extends Vs{render(e){return"return "+super.render(e)}};Gs.kind="return";var Vm=class extends wr{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&&Ln(e,this.catch.names),this.finally&&Ln(e,this.finally.names),e}},Ks=class extends wr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Ks.kind="catch";var Js=class extends wr{render(e){return"finally"+super.render(e)}};Js.kind="finally";var Wm=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
51
- `:""},this._extScope=e,this._scope=new Kt.Scope({parent:e}),this._nodes=[new Hm]}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 Dm(e,s,n)),s}const(e,r,n){return this._def(Kt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Kt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Kt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new sc(e,r,n))}add(e,r){return this._leafNode(new Mm(e,Q.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==se.nil&&this._leafNode(new Zm(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,se.addCodeArg)(r,o));return r.push("}"),new se._Code(r)}if(e,r,n){if(this._blockNode(new Dn(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 Dn(e))}else(){return this._elseNode(new To)}endIf(){return this._endBlockNode(Dn,To)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new qm(e),r)}forRange(e,r,n,o,s=this.opts.es5?Kt.varKinds.var:Kt.varKinds.let){let i=this._scope.toName(e);return this._for(new Bm(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Kt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof se.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,se._)`${i}.length`,a=>{this.var(s,(0,se._)`${i}[${a}]`),n(s)})}return this._for(new ic("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Kt.varKinds.var:Kt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,se._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new ic("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Mn)}label(e){return this._leafNode(new Lm(e))}break(e){return this._leafNode(new Fm(e))}return(e){let r=new Gs;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Gs)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Vm;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Ks(s),r(s)}return n&&(this._currNode=o.finally=new Js,this.code(n)),this._endBlockNode(Ks,Js)}throw(e){return this._leafNode(new Um(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=se.nil,n,o){return this._blockNode(new Ws(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ws)}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 Dn))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}};Q.CodeGen=Wm;function Ln(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function ac(t,e){return e instanceof se._CodeOrName?Ln(t,e.names):t}function Po(t,e,r){if(t instanceof se.Name)return n(t);if(!o(t))return t;return new se._Code(t._items.reduce((s,i)=>(i instanceof se.Name&&(i=n(i)),i instanceof se._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 se._Code&&s._items.some(i=>i instanceof se.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function $C(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function nS(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,se._)`!${Gm(t)}`}Q.not=nS;var EC=oS(Q.operators.AND);function TC(...t){return t.reduce(EC)}Q.and=TC;var PC=oS(Q.operators.OR);function RC(...t){return t.reduce(PC)}Q.or=RC;function oS(t){return(e,r)=>e===se.nil?r:r===se.nil?e:(0,se._)`${Gm(e)} ${t} ${Gm(r)}`}function Gm(t){return t instanceof se.Name?t:(0,se._)`(${t})`}});var ie=R(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.checkStrictMode=ee.getErrorPath=ee.Type=ee.useFunc=ee.setEvaluated=ee.evaluatedPropsToName=ee.mergeEvaluated=ee.eachItem=ee.unescapeJsonPointer=ee.escapeJsonPointer=ee.escapeFragment=ee.unescapeFragment=ee.schemaRefOrVal=ee.schemaHasRulesButRef=ee.schemaHasRules=ee.checkUnknownRules=ee.alwaysValidSchema=ee.toHash=void 0;var he=X(),OC=Bs();function CC(t){let e={};for(let r of t)e[r]=!0;return e}ee.toHash=CC;function IC(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(aS(t,e),!cS(e,t.self.RULES.all))}ee.alwaysValidSchema=IC;function aS(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]||dS(t,`unknown keyword: "${s}"`)}ee.checkUnknownRules=aS;function cS(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ee.schemaHasRules=cS;function AC(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ee.schemaHasRulesButRef=AC;function NC({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,he._)`${r}`}return(0,he._)`${t}${e}${(0,he.getProperty)(n)}`}ee.schemaRefOrVal=NC;function zC(t){return uS(decodeURIComponent(t))}ee.unescapeFragment=zC;function jC(t){return encodeURIComponent(Jm(t))}ee.escapeFragment=jC;function Jm(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ee.escapeJsonPointer=Jm;function uS(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ee.unescapeJsonPointer=uS;function DC(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ee.eachItem=DC;function sS({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof he.Name?(s instanceof he.Name?t(o,s,i):e(o,s,i),i):s instanceof he.Name?(e(o,i,s),s):r(s,i);return a===he.Name&&!(c instanceof he.Name)?n(o,c):c}}ee.mergeEvaluated={props:sS({mergeNames:(t,e,r)=>t.if((0,he._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,he._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,he._)`${r} || {}`).code((0,he._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,he._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,he._)`${r} || {}`),Ym(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:lS}),items:sS({mergeNames:(t,e,r)=>t.if((0,he._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,he._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,he._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,he._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function lS(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,he._)`{}`);return e!==void 0&&Ym(t,r,e),r}ee.evaluatedPropsToName=lS;function Ym(t,e,r){Object.keys(r).forEach(n=>t.assign((0,he._)`${e}${(0,he.getProperty)(n)}`,!0))}ee.setEvaluated=Ym;var iS={};function MC(t,e){return t.scopeValue("func",{ref:e,code:iS[e.code]||(iS[e.code]=new OC._Code(e.code))})}ee.useFunc=MC;var Km;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Km||(ee.Type=Km={}));function LC(t,e,r){if(t instanceof he.Name){let n=e===Km.Num;return r?n?(0,he._)`"[" + ${t} + "]"`:(0,he._)`"['" + ${t} + "']"`:n?(0,he._)`"/" + ${t}`:(0,he._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,he.getProperty)(t).toString():"/"+Jm(t)}ee.getErrorPath=LC;function dS(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ee.checkStrictMode=dS});var $r=R(Xm=>{"use strict";Object.defineProperty(Xm,"__esModule",{value:!0});var Xe=X(),FC={data:new Xe.Name("data"),valCxt:new Xe.Name("valCxt"),instancePath:new Xe.Name("instancePath"),parentData:new Xe.Name("parentData"),parentDataProperty:new Xe.Name("parentDataProperty"),rootData:new Xe.Name("rootData"),dynamicAnchors:new Xe.Name("dynamicAnchors"),vErrors:new Xe.Name("vErrors"),errors:new Xe.Name("errors"),this:new Xe.Name("this"),self:new Xe.Name("self"),scope:new Xe.Name("scope"),json:new Xe.Name("json"),jsonPos:new Xe.Name("jsonPos"),jsonLen:new Xe.Name("jsonLen"),jsonPart:new Xe.Name("jsonPart")};Xm.default=FC});var Ys=R(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.extendErrors=Qe.resetErrorsCount=Qe.reportExtraError=Qe.reportError=Qe.keyword$DataError=Qe.keywordError=void 0;var ae=X(),uc=ie(),it=$r();Qe.keywordError={message:({keyword:t})=>(0,ae.str)`must pass "${t}" keyword validation`};Qe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ae.str)`"${t}" keyword must be ${e} ($data)`:(0,ae.str)`"${t}" keyword is invalid ($data)`};function UC(t,e=Qe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=fS(t,e,r);n??(i||a)?pS(s,c):mS(o,(0,ae._)`[${c}]`)}Qe.reportError=UC;function ZC(t,e=Qe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=fS(t,e,r);pS(o,a),s||i||mS(n,it.default.vErrors)}Qe.reportExtraError=ZC;function HC(t,e){t.assign(it.default.errors,e),t.if((0,ae._)`${it.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ae._)`${it.default.vErrors}.length`,e),()=>t.assign(it.default.vErrors,null)))}Qe.resetErrorsCount=HC;function qC({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,it.default.errors,a=>{t.const(i,(0,ae._)`${it.default.vErrors}[${a}]`),t.if((0,ae._)`${i}.instancePath === undefined`,()=>t.assign((0,ae._)`${i}.instancePath`,(0,ae.strConcat)(it.default.instancePath,s.errorPath))),t.assign((0,ae._)`${i}.schemaPath`,(0,ae.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ae._)`${i}.schema`,r),t.assign((0,ae._)`${i}.data`,n))})}Qe.extendErrors=qC;function pS(t,e){let r=t.const("err",e);t.if((0,ae._)`${it.default.vErrors} === null`,()=>t.assign(it.default.vErrors,(0,ae._)`[${r}]`),(0,ae._)`${it.default.vErrors}.push(${r})`),t.code((0,ae._)`${it.default.errors}++`)}function mS(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ae._)`new ${t.ValidationError}(${e})`):(r.assign((0,ae._)`${n}.errors`,e),r.return(!1))}var Fn={keyword:new ae.Name("keyword"),schemaPath:new ae.Name("schemaPath"),params:new ae.Name("params"),propertyName:new ae.Name("propertyName"),message:new ae.Name("message"),schema:new ae.Name("schema"),parentSchema:new ae.Name("parentSchema")};function fS(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ae._)`{}`:BC(t,e,r)}function BC(t,e,r={}){let{gen:n,it:o}=t,s=[VC(o,r),WC(t,r)];return GC(t,e,s),n.object(...s)}function VC({errorPath:t},{instancePath:e}){let r=e?(0,ae.str)`${t}${(0,uc.getErrorPath)(e,uc.Type.Str)}`:t;return[it.default.instancePath,(0,ae.strConcat)(it.default.instancePath,r)]}function WC({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ae.str)`${e}/${t}`;return r&&(o=(0,ae.str)`${o}${(0,uc.getErrorPath)(r,uc.Type.Str)}`),[Fn.schemaPath,o]}function GC(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,ae._)`{}`]),c.messages&&n.push([Fn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Fn.schema,i],[Fn.parentSchema,(0,ae._)`${l}${d}`],[it.default.data,s]),u&&n.push([Fn.propertyName,u])}});var gS=R(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});Ro.boolOrEmptySchema=Ro.topBoolOrEmptySchema=void 0;var KC=Ys(),JC=X(),YC=$r(),XC={message:"boolean schema is false"};function QC(t){let{gen:e,schema:r,validateName:n}=t;r===!1?hS(t,!1):typeof r=="object"&&r.$async===!0?e.return(YC.default.data):(e.assign((0,JC._)`${n}.errors`,null),e.return(!0))}Ro.topBoolOrEmptySchema=QC;function eI(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),hS(t)):r.var(e,!0)}Ro.boolOrEmptySchema=eI;function hS(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,KC.reportError)(o,XC,void 0,e)}});var Qm=R(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.getRules=Oo.isJSONType=void 0;var tI=["string","number","integer","boolean","null","object","array"],rI=new Set(tI);function nI(t){return typeof t=="string"&&rI.has(t)}Oo.isJSONType=nI;function oI(){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:{}}}Oo.getRules=oI});var ef=R(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.shouldUseRule=Gr.shouldUseGroup=Gr.schemaHasRulesForType=void 0;function sI({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&_S(t,n)}Gr.schemaHasRulesForType=sI;function _S(t,e){return e.rules.some(r=>yS(t,r))}Gr.shouldUseGroup=_S;function yS(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))}Gr.shouldUseRule=yS});var Xs=R(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.reportTypeError=et.checkDataTypes=et.checkDataType=et.coerceAndCheckDataType=et.getJSONTypes=et.getSchemaTypes=et.DataType=void 0;var iI=Qm(),aI=ef(),cI=Ys(),K=X(),xS=ie(),Co;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Co||(et.DataType=Co={}));function uI(t){let e=vS(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}et.getSchemaTypes=uI;function vS(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(iI.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}et.getJSONTypes=vS;function lI(t,e){let{gen:r,data:n,opts:o}=t,s=dI(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,aI.schemaHasRulesForType)(t,e[0]));if(i){let a=rf(e,n,o.strictNumbers,Co.Wrong);r.if(a,()=>{s.length?pI(t,e,s):nf(t)})}return i}et.coerceAndCheckDataType=lI;var SS=new Set(["string","number","integer","boolean","null"]);function dI(t,e){return e?t.filter(r=>SS.has(r)||e==="array"&&r==="array"):[]}function pI(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,K._)`typeof ${o}`),a=n.let("coerced",(0,K._)`undefined`);s.coerceTypes==="array"&&n.if((0,K._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,K._)`${o}[0]`).assign(i,(0,K._)`typeof ${o}`).if(rf(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,K._)`${a} !== undefined`);for(let u of r)(SS.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),nf(t),n.endIf(),n.if((0,K._)`${a} !== undefined`,()=>{n.assign(o,a),mI(t,a)});function c(u){switch(u){case"string":n.elseIf((0,K._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,K._)`"" + ${o}`).elseIf((0,K._)`${o} === null`).assign(a,(0,K._)`""`);return;case"number":n.elseIf((0,K._)`${i} == "boolean" || ${o} === null
50
+ ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}var lm,Gt,lC,Qa=v(()=>{Gr();Gt={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:()=>(lm===void 0&&(lm=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),lm),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-_]*$/};lC=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789")});function ec(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===$.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??Pe(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===$.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Xa(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===$.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===$.ZodBranded&&t.keyType._def.type._def.typeName===$.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Ja(t.keyType._def,e);return{...r,propertyNames:o}}}return r}var tc=v(()=>{ys();De();Qa();Ya();jt()});function Nv(t,e){if(e.mapStrategy==="record")return ec(t,e);let r=U(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Pe(e),n=U(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Pe(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}var pm=v(()=>{De();tc();jt()});function zv(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 mm=v(()=>{});function jv(t){return t.target==="openAi"?void 0:{not:Pe({...t,currentPath:[...t.currentPath,"not"]})}}var fm=v(()=>{jt()});function Dv(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var hm=v(()=>{});function Lv(t,e){if(e.target==="openApi3")return Mv(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in qs&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=qs[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 Mv(t,e)}var qs,Mv,rc=v(()=>{De();qs={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};Mv=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>U(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0}});function Fv(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:qs[t.innerType._def.typeName],nullable:!0}:{type:[qs[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=U(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=U(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}var gm=v(()=>{De();rc()});function Uv(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",Xp(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}var _m=v(()=>{Gr()});function Zv(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=mC(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=U(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=pC(t,e);return i!==void 0&&(n.additionalProperties=i),n}function pC(t,e){if(t.catchall._def.typeName!=="ZodNever")return U(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function mC(t){try{return t.isOptional()}catch{return!0}}var ym=v(()=>{De()});var Hv,xm=v(()=>{De();jt();Hv=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return U(t.innerType._def,e);let r=U(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Pe(e)},r]}:Pe(e)}});var qv,vm=v(()=>{De();qv=(t,e)=>{if(e.pipeStrategy==="input")return U(t.in._def,e);if(e.pipeStrategy==="output")return U(t.out._def,e);let r=U(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=U(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}}});function Bv(t,e){return U(t.type._def,e)}var Sm=v(()=>{De()});function Vv(t,e){let n={type:"array",uniqueItems:!0,items:U(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&oe(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&oe(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}var bm=v(()=>{Gr();De()});function Wv(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>U(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:U(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>U(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}var km=v(()=>{De()});function Gv(t){return{not:Pe(t)}}var wm=v(()=>{jt()});function Kv(t){return Pe(t)}var $m=v(()=>{jt()});var Jv,Em=v(()=>{De();Jv=(t,e)=>U(t.innerType._def,e)});var Yv,Tm=v(()=>{ys();jt();Qp();em();tm();Ya();rm();om();sm();im();am();cm();um();pm();mm();fm();hm();gm();_m();ym();xm();vm();Sm();tc();bm();Qa();km();wm();rc();$m();Em();Yv=(t,e,r)=>{switch(e){case $.ZodString:return Xa(t,r);case $.ZodNumber:return Uv(t,r);case $.ZodObject:return Zv(t,r);case $.ZodBigInt:return $v(t,r);case $.ZodBoolean:return Ev();case $.ZodDate:return nm(t,r);case $.ZodUndefined:return Gv(r);case $.ZodNull:return Dv(r);case $.ZodArray:return wv(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return Lv(t,r);case $.ZodIntersection:return Cv(t,r);case $.ZodTuple:return Wv(t,r);case $.ZodRecord:return ec(t,r);case $.ZodLiteral:return Iv(t,r);case $.ZodEnum:return Ov(t);case $.ZodNativeEnum:return zv(t);case $.ZodNullable:return Fv(t,r);case $.ZodOptional:return Hv(t,r);case $.ZodMap:return Nv(t,r);case $.ZodSet:return Vv(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return Bv(t,r);case $.ZodNaN:case $.ZodNever:return jv(r);case $.ZodEffects:return Rv(t,r);case $.ZodAny:return Pe(r);case $.ZodUnknown:return Kv(r);case $.ZodDefault:return Pv(t,r);case $.ZodBranded:return Ja(t,r);case $.ZodReadonly:return Jv(t,r);case $.ZodCatch:return Tv(t,r);case $.ZodPipeline:return qv(t,r);case $.ZodFunction:case $.ZodVoid:case $.ZodSymbol:return;default:return(n=>{})(e)}}});function U(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Sv)return a}if(n&&!r){let a=fC(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=Yv(t,t.typeName,e),i=typeof s=="function"?U(s(),e):s;if(i&&hC(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var fC,hC,De=v(()=>{Wa();Tm();Ka();jt();fC=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Ga(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`),Pe(e)):e.$refStrategy==="seen"?Pe(e):void 0}},hC=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r)});var Xv=v(()=>{});var Pm,Rm=v(()=>{De();Yp();jt();Pm=(t,e)=>{let r=kv(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:U(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??Pe(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=U(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??Pe(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 Qv=v(()=>{Wa();Yp();Gr();Ka();De();Xv();jt();Qp();em();tm();Ya();rm();om();sm();im();am();cm();um();pm();mm();fm();hm();gm();_m();ym();xm();vm();Sm();Em();tc();bm();Qa();km();wm();rc();$m();Tm();Rm();Rm()});function gC(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Om(t,e){return At(t)?_p(t,{target:gC(e?.target),io:e?.pipeStrategy??"input"}):Pm(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Cm(t){let r=Br(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ea(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Im(t,e){let r=qr(t,e);if(!r.success)throw r.error;return r.data}var Am=v(()=>{vp();Cs();Qv()});function eS(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function tS(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];eS(i)&&eS(s)?r[o]={...i,...s}:r[o]=s}return r}var _C,nc,rS=v(()=>{Cs();Dn();xv();Am();_C=6e4,nc=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(Aa,r=>{this._oncancel(r)}),this.setNotificationHandler(za,r=>{this._onprogress(r)}),this.setRequestHandler(Na,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ja,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Ma,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,m=new N(d.error.code,d.error.message,d.error.data);l(m)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new N(D.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,[Vr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(La,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(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ua,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(Wr(o.status))throw new N(D.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new N(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof N?o:new N(D.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),N.fromError(D.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),zs(s)||cv(s)?this._onresponse(s):Dp(s)?this._onrequest(s,i):av(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=N.fromError(D.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Vr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=ov(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,m)=>{if(i.signal.aborted)throw new N(D.ConnectionClosed,"Request was cancelled");let f={...m,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let p=f.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),zs(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(zs(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),zs(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(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,bo,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new N(D.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(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new N(D.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof N?i:new N(D.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let m=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Vr]:c}});let p=y=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let x=y instanceof N?y:new N(D.RequestTimeout,String(y));l(x)};this._responseHandlers.set(m,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let x=qr(r,y.result);x.success?u(x.data):l(x.error)}catch(x){l(x)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??_C,g=()=>p(N.fromError(D.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let y=x=>{let k=this._responseHandlers.get(m);k?k(x):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,y),this._enqueueTaskMessage(_,{type:"request",message:f,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(m),l(x)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(m),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Da,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},Fa,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},dv,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||{},[Vr]: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||{},[Vr]: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||{},[Vr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Cm(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Im(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=Cm(e);this._notificationHandlers.set(n,o=>{let s=Im(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"&&Dp(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new N(D.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new N(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new N(D.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new N(D.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Fs.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(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Wr(a.status))throw new N(D.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Fs.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Wr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}}});var Ws=R(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.regexpCode=ce.getEsmExportName=ce.getProperty=ce.safeStringify=ce.stringify=ce.strConcat=ce.addCodeArg=ce.str=ce._=ce.nil=ce._Code=ce.Name=ce.IDENTIFIER=ce._CodeOrName=void 0;var Bs=class{};ce._CodeOrName=Bs;ce.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Mn=class extends Bs{constructor(e){if(super(),!ce.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}}};ce.Name=Mn;var Dt=class extends Bs{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 Mn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ce._Code=Dt;ce.nil=new Dt("");function nS(t,...e){let r=[t[0]],n=0;for(;n<e.length;)zm(r,e[n]),r.push(t[++n]);return new Dt(r)}ce._=nS;var Nm=new Dt("+");function oS(t,...e){let r=[Vs(t[0])],n=0;for(;n<e.length;)r.push(Nm),zm(r,e[n]),r.push(Nm,Vs(t[++n]));return yC(r),new Dt(r)}ce.str=oS;function zm(t,e){e instanceof Dt?t.push(...e._items):e instanceof Mn?t.push(e):t.push(SC(e))}ce.addCodeArg=zm;function yC(t){let e=1;for(;e<t.length-1;){if(t[e]===Nm){let r=xC(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function xC(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Mn||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 Mn))return`"${t}${e.slice(1)}`}function vC(t,e){return e.emptyStr()?t:t.emptyStr()?e:oS`${t}${e}`}ce.strConcat=vC;function SC(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Vs(Array.isArray(t)?t.join(","):t)}function bC(t){return new Dt(Vs(t))}ce.stringify=bC;function Vs(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ce.safeStringify=Vs;function kC(t){return typeof t=="string"&&ce.IDENTIFIER.test(t)?new Dt(`.${t}`):nS`[${t}]`}ce.getProperty=kC;function wC(t){if(typeof t=="string"&&ce.IDENTIFIER.test(t))return new Dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ce.getEsmExportName=wC;function $C(t){return new Dt(t.toString())}ce.regexpCode=$C});var Mm=R(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.ValueScope=ft.ValueScopeName=ft.Scope=ft.varKinds=ft.UsedValueState=void 0;var mt=Ws(),jm=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},oc;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(oc||(ft.UsedValueState=oc={}));ft.varKinds={const:new mt.Name("const"),let:new mt.Name("let"),var:new mt.Name("var")};var sc=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof mt.Name?e:this.name(e)}name(e){return new mt.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}}};ft.Scope=sc;var ic=class extends mt.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,mt._)`.${new mt.Name(r)}[${n}]`}};ft.ValueScopeName=ic;var EC=(0,mt._)`\n`,Dm=class extends sc{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?EC:mt.nil}}get(){return this._scope}name(e){return new ic(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,mt._)`${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=mt.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,oc.Started);let l=r(u);if(l){let d=this.opts.es5?ft.varKinds.var:ft.varKinds.const;s=(0,mt._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,mt._)`${s}${l}${this.opts._n}`;else throw new jm(u);c.set(u,oc.Completed)})}return s}};ft.ValueScope=Dm});var X=R(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.or=Q.and=Q.not=Q.CodeGen=Q.operators=Q.varKinds=Q.ValueScopeName=Q.ValueScope=Q.Scope=Q.Name=Q.regexpCode=Q.stringify=Q.getProperty=Q.nil=Q.strConcat=Q.str=Q._=void 0;var se=Ws(),Jt=Mm(),Kr=Ws();Object.defineProperty(Q,"_",{enumerable:!0,get:function(){return Kr._}});Object.defineProperty(Q,"str",{enumerable:!0,get:function(){return Kr.str}});Object.defineProperty(Q,"strConcat",{enumerable:!0,get:function(){return Kr.strConcat}});Object.defineProperty(Q,"nil",{enumerable:!0,get:function(){return Kr.nil}});Object.defineProperty(Q,"getProperty",{enumerable:!0,get:function(){return Kr.getProperty}});Object.defineProperty(Q,"stringify",{enumerable:!0,get:function(){return Kr.stringify}});Object.defineProperty(Q,"regexpCode",{enumerable:!0,get:function(){return Kr.regexpCode}});Object.defineProperty(Q,"Name",{enumerable:!0,get:function(){return Kr.Name}});var lc=Mm();Object.defineProperty(Q,"Scope",{enumerable:!0,get:function(){return lc.Scope}});Object.defineProperty(Q,"ValueScope",{enumerable:!0,get:function(){return lc.ValueScope}});Object.defineProperty(Q,"ValueScopeName",{enumerable:!0,get:function(){return lc.ValueScopeName}});Object.defineProperty(Q,"varKinds",{enumerable:!0,get:function(){return lc.varKinds}});Q.operators={GT:new se._Code(">"),GTE:new se._Code(">="),LT:new se._Code("<"),LTE:new se._Code("<="),EQ:new se._Code("==="),NEQ:new se._Code("!=="),NOT:new se._Code("!"),OR:new se._Code("||"),AND:new se._Code("&&"),ADD:new se._Code("+")};var $r=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Lm=class extends $r{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Jt.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=Oo(this.rhs,e,r)),this}get names(){return this.rhs instanceof se._CodeOrName?this.rhs.names:{}}},ac=class extends $r{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof se.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Oo(this.rhs,e,r),this}get names(){let e=this.lhs instanceof se.Name?{}:{...this.lhs.names};return uc(e,this.rhs)}},Fm=class extends ac{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Um=class extends $r{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Zm=class extends $r{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Hm=class extends $r{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},qm=class extends $r{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Oo(this.code,e,r),this}get names(){return this.code instanceof se._CodeOrName?this.code.names:{}}},Gs=class extends $r{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(TC(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Un(e,r.names),{})}},Er=class extends Gs{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Bm=class extends Gs{},Ro=class extends Er{};Ro.kind="else";var Ln=class t extends Er{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 Ro(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(sS(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=Oo(this.condition,e,r),this}get names(){let e=super.names;return uc(e,this.condition),this.else&&Un(e,this.else.names),e}};Ln.kind="if";var Fn=class extends Er{};Fn.kind="for";var Vm=class extends Fn{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=Oo(this.iteration,e,r),this}get names(){return Un(super.names,this.iteration.names)}},Wm=class extends Fn{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Jt.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=uc(super.names,this.from);return uc(e,this.to)}},cc=class extends Fn{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=Oo(this.iterable,e,r),this}get names(){return Un(super.names,this.iterable.names)}},Ks=class extends Er{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)}};Ks.kind="func";var Js=class extends Gs{render(e){return"return "+super.render(e)}};Js.kind="return";var Gm=class extends Er{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&&Un(e,this.catch.names),this.finally&&Un(e,this.finally.names),e}},Ys=class extends Er{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Ys.kind="catch";var Xs=class extends Er{render(e){return"finally"+super.render(e)}};Xs.kind="finally";var Km=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
51
+ `:""},this._extScope=e,this._scope=new Jt.Scope({parent:e}),this._nodes=[new Bm]}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 Lm(e,s,n)),s}const(e,r,n){return this._def(Jt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Jt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Jt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new ac(e,r,n))}add(e,r){return this._leafNode(new Fm(e,Q.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==se.nil&&this._leafNode(new qm(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,se.addCodeArg)(r,o));return r.push("}"),new se._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 Ro)}endIf(){return this._endBlockNode(Ln,Ro)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Vm(e),r)}forRange(e,r,n,o,s=this.opts.es5?Jt.varKinds.var:Jt.varKinds.let){let i=this._scope.toName(e);return this._for(new Wm(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Jt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof se.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,se._)`${i}.length`,a=>{this.var(s,(0,se._)`${i}[${a}]`),n(s)})}return this._for(new cc("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Jt.varKinds.var:Jt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,se._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new cc("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Fn)}label(e){return this._leafNode(new Um(e))}break(e){return this._leafNode(new Zm(e))}return(e){let r=new Js;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Js)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Gm;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Ys(s),r(s)}return n&&(this._currNode=o.finally=new Xs,this.code(n)),this._endBlockNode(Ys,Xs)}throw(e){return this._leafNode(new Hm(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=se.nil,n,o){return this._blockNode(new Ks(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ks)}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}};Q.CodeGen=Km;function Un(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function uc(t,e){return e instanceof se._CodeOrName?Un(t,e.names):t}function Oo(t,e,r){if(t instanceof se.Name)return n(t);if(!o(t))return t;return new se._Code(t._items.reduce((s,i)=>(i instanceof se.Name&&(i=n(i)),i instanceof se._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 se._Code&&s._items.some(i=>i instanceof se.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function TC(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function sS(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,se._)`!${Jm(t)}`}Q.not=sS;var PC=iS(Q.operators.AND);function RC(...t){return t.reduce(PC)}Q.and=RC;var OC=iS(Q.operators.OR);function CC(...t){return t.reduce(OC)}Q.or=CC;function iS(t){return(e,r)=>e===se.nil?r:r===se.nil?e:(0,se._)`${Jm(e)} ${t} ${Jm(r)}`}function Jm(t){return t instanceof se.Name?t:(0,se._)`(${t})`}});var ie=R(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.checkStrictMode=ee.getErrorPath=ee.Type=ee.useFunc=ee.setEvaluated=ee.evaluatedPropsToName=ee.mergeEvaluated=ee.eachItem=ee.unescapeJsonPointer=ee.escapeJsonPointer=ee.escapeFragment=ee.unescapeFragment=ee.schemaRefOrVal=ee.schemaHasRulesButRef=ee.schemaHasRules=ee.checkUnknownRules=ee.alwaysValidSchema=ee.toHash=void 0;var ge=X(),IC=Ws();function AC(t){let e={};for(let r of t)e[r]=!0;return e}ee.toHash=AC;function NC(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(uS(t,e),!lS(e,t.self.RULES.all))}ee.alwaysValidSchema=NC;function uS(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]||mS(t,`unknown keyword: "${s}"`)}ee.checkUnknownRules=uS;function lS(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ee.schemaHasRules=lS;function zC(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ee.schemaHasRulesButRef=zC;function jC({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ge._)`${r}`}return(0,ge._)`${t}${e}${(0,ge.getProperty)(n)}`}ee.schemaRefOrVal=jC;function DC(t){return dS(decodeURIComponent(t))}ee.unescapeFragment=DC;function MC(t){return encodeURIComponent(Xm(t))}ee.escapeFragment=MC;function Xm(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ee.escapeJsonPointer=Xm;function dS(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ee.unescapeJsonPointer=dS;function LC(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ee.eachItem=LC;function aS({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ge.Name?(s instanceof ge.Name?t(o,s,i):e(o,s,i),i):s instanceof ge.Name?(e(o,i,s),s):r(s,i);return a===ge.Name&&!(c instanceof ge.Name)?n(o,c):c}}ee.mergeEvaluated={props:aS({mergeNames:(t,e,r)=>t.if((0,ge._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ge._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ge._)`${r} || {}`).code((0,ge._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ge._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ge._)`${r} || {}`),Qm(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:pS}),items:aS({mergeNames:(t,e,r)=>t.if((0,ge._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ge._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ge._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ge._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function pS(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ge._)`{}`);return e!==void 0&&Qm(t,r,e),r}ee.evaluatedPropsToName=pS;function Qm(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ge._)`${e}${(0,ge.getProperty)(n)}`,!0))}ee.setEvaluated=Qm;var cS={};function FC(t,e){return t.scopeValue("func",{ref:e,code:cS[e.code]||(cS[e.code]=new IC._Code(e.code))})}ee.useFunc=FC;var Ym;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Ym||(ee.Type=Ym={}));function UC(t,e,r){if(t instanceof ge.Name){let n=e===Ym.Num;return r?n?(0,ge._)`"[" + ${t} + "]"`:(0,ge._)`"['" + ${t} + "']"`:n?(0,ge._)`"/" + ${t}`:(0,ge._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ge.getProperty)(t).toString():"/"+Xm(t)}ee.getErrorPath=UC;function mS(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ee.checkStrictMode=mS});var Tr=R(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});var Qe=X(),ZC={data:new Qe.Name("data"),valCxt:new Qe.Name("valCxt"),instancePath:new Qe.Name("instancePath"),parentData:new Qe.Name("parentData"),parentDataProperty:new Qe.Name("parentDataProperty"),rootData:new Qe.Name("rootData"),dynamicAnchors:new Qe.Name("dynamicAnchors"),vErrors:new Qe.Name("vErrors"),errors:new Qe.Name("errors"),this:new Qe.Name("this"),self:new Qe.Name("self"),scope:new Qe.Name("scope"),json:new Qe.Name("json"),jsonPos:new Qe.Name("jsonPos"),jsonLen:new Qe.Name("jsonLen"),jsonPart:new Qe.Name("jsonPart")};ef.default=ZC});var Qs=R(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.extendErrors=et.resetErrorsCount=et.reportExtraError=et.reportError=et.keyword$DataError=et.keywordError=void 0;var ae=X(),dc=ie(),at=Tr();et.keywordError={message:({keyword:t})=>(0,ae.str)`must pass "${t}" keyword validation`};et.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ae.str)`"${t}" keyword must be ${e} ($data)`:(0,ae.str)`"${t}" keyword is invalid ($data)`};function HC(t,e=et.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=gS(t,e,r);n??(i||a)?fS(s,c):hS(o,(0,ae._)`[${c}]`)}et.reportError=HC;function qC(t,e=et.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=gS(t,e,r);fS(o,a),s||i||hS(n,at.default.vErrors)}et.reportExtraError=qC;function BC(t,e){t.assign(at.default.errors,e),t.if((0,ae._)`${at.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ae._)`${at.default.vErrors}.length`,e),()=>t.assign(at.default.vErrors,null)))}et.resetErrorsCount=BC;function VC({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,at.default.errors,a=>{t.const(i,(0,ae._)`${at.default.vErrors}[${a}]`),t.if((0,ae._)`${i}.instancePath === undefined`,()=>t.assign((0,ae._)`${i}.instancePath`,(0,ae.strConcat)(at.default.instancePath,s.errorPath))),t.assign((0,ae._)`${i}.schemaPath`,(0,ae.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ae._)`${i}.schema`,r),t.assign((0,ae._)`${i}.data`,n))})}et.extendErrors=VC;function fS(t,e){let r=t.const("err",e);t.if((0,ae._)`${at.default.vErrors} === null`,()=>t.assign(at.default.vErrors,(0,ae._)`[${r}]`),(0,ae._)`${at.default.vErrors}.push(${r})`),t.code((0,ae._)`${at.default.errors}++`)}function hS(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ae._)`new ${t.ValidationError}(${e})`):(r.assign((0,ae._)`${n}.errors`,e),r.return(!1))}var Zn={keyword:new ae.Name("keyword"),schemaPath:new ae.Name("schemaPath"),params:new ae.Name("params"),propertyName:new ae.Name("propertyName"),message:new ae.Name("message"),schema:new ae.Name("schema"),parentSchema:new ae.Name("parentSchema")};function gS(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ae._)`{}`:WC(t,e,r)}function WC(t,e,r={}){let{gen:n,it:o}=t,s=[GC(o,r),KC(t,r)];return JC(t,e,s),n.object(...s)}function GC({errorPath:t},{instancePath:e}){let r=e?(0,ae.str)`${t}${(0,dc.getErrorPath)(e,dc.Type.Str)}`:t;return[at.default.instancePath,(0,ae.strConcat)(at.default.instancePath,r)]}function KC({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ae.str)`${e}/${t}`;return r&&(o=(0,ae.str)`${o}${(0,dc.getErrorPath)(r,dc.Type.Str)}`),[Zn.schemaPath,o]}function JC(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([Zn.keyword,o],[Zn.params,typeof e=="function"?e(t):e||(0,ae._)`{}`]),c.messages&&n.push([Zn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Zn.schema,i],[Zn.parentSchema,(0,ae._)`${l}${d}`],[at.default.data,s]),u&&n.push([Zn.propertyName,u])}});var yS=R(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.boolOrEmptySchema=Co.topBoolOrEmptySchema=void 0;var YC=Qs(),XC=X(),QC=Tr(),eI={message:"boolean schema is false"};function tI(t){let{gen:e,schema:r,validateName:n}=t;r===!1?_S(t,!1):typeof r=="object"&&r.$async===!0?e.return(QC.default.data):(e.assign((0,XC._)`${n}.errors`,null),e.return(!0))}Co.topBoolOrEmptySchema=tI;function rI(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),_S(t)):r.var(e,!0)}Co.boolOrEmptySchema=rI;function _S(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,YC.reportError)(o,eI,void 0,e)}});var tf=R(Io=>{"use strict";Object.defineProperty(Io,"__esModule",{value:!0});Io.getRules=Io.isJSONType=void 0;var nI=["string","number","integer","boolean","null","object","array"],oI=new Set(nI);function sI(t){return typeof t=="string"&&oI.has(t)}Io.isJSONType=sI;function iI(){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:{}}}Io.getRules=iI});var rf=R(Jr=>{"use strict";Object.defineProperty(Jr,"__esModule",{value:!0});Jr.shouldUseRule=Jr.shouldUseGroup=Jr.schemaHasRulesForType=void 0;function aI({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&xS(t,n)}Jr.schemaHasRulesForType=aI;function xS(t,e){return e.rules.some(r=>vS(t,r))}Jr.shouldUseGroup=xS;function vS(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))}Jr.shouldUseRule=vS});var ei=R(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.reportTypeError=tt.checkDataTypes=tt.checkDataType=tt.coerceAndCheckDataType=tt.getJSONTypes=tt.getSchemaTypes=tt.DataType=void 0;var cI=tf(),uI=rf(),lI=Qs(),K=X(),SS=ie(),Ao;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Ao||(tt.DataType=Ao={}));function dI(t){let e=bS(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}tt.getSchemaTypes=dI;function bS(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(cI.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}tt.getJSONTypes=bS;function pI(t,e){let{gen:r,data:n,opts:o}=t,s=mI(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,uI.schemaHasRulesForType)(t,e[0]));if(i){let a=of(e,n,o.strictNumbers,Ao.Wrong);r.if(a,()=>{s.length?fI(t,e,s):sf(t)})}return i}tt.coerceAndCheckDataType=pI;var kS=new Set(["string","number","integer","boolean","null"]);function mI(t,e){return e?t.filter(r=>kS.has(r)||e==="array"&&r==="array"):[]}function fI(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,K._)`typeof ${o}`),a=n.let("coerced",(0,K._)`undefined`);s.coerceTypes==="array"&&n.if((0,K._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,K._)`${o}[0]`).assign(i,(0,K._)`typeof ${o}`).if(of(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,K._)`${a} !== undefined`);for(let u of r)(kS.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),sf(t),n.endIf(),n.if((0,K._)`${a} !== undefined`,()=>{n.assign(o,a),hI(t,a)});function c(u){switch(u){case"string":n.elseIf((0,K._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,K._)`"" + ${o}`).elseIf((0,K._)`${o} === null`).assign(a,(0,K._)`""`);return;case"number":n.elseIf((0,K._)`${i} == "boolean" || ${o} === null
52
52
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,K._)`+${o}`);return;case"integer":n.elseIf((0,K._)`${i} === "boolean" || ${o} === null
53
53
  || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,K._)`+${o}`);return;case"boolean":n.elseIf((0,K._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,K._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,K._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,K._)`${i} === "string" || ${i} === "number"
54
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,K._)`[${o}]`)}}}function mI({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,K._)`${e} !== undefined`,()=>t.assign((0,K._)`${e}[${r}]`,n))}function tf(t,e,r,n=Co.Correct){let o=n===Co.Correct?K.operators.EQ:K.operators.NEQ,s;switch(t){case"null":return(0,K._)`${e} ${o} null`;case"array":s=(0,K._)`Array.isArray(${e})`;break;case"object":s=(0,K._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,K._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,K._)`typeof ${e} ${o} ${t}`}return n===Co.Correct?s:(0,K.not)(s);function i(a=K.nil){return(0,K.and)((0,K._)`typeof ${e} == "number"`,a,r?(0,K._)`isFinite(${e})`:K.nil)}}et.checkDataType=tf;function rf(t,e,r,n){if(t.length===1)return tf(t[0],e,r,n);let o,s=(0,xS.toHash)(t);if(s.array&&s.object){let i=(0,K._)`typeof ${e} != "object"`;o=s.null?i:(0,K._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=K.nil;s.number&&delete s.integer;for(let i in s)o=(0,K.and)(o,tf(i,e,r,n));return o}et.checkDataTypes=rf;var fI={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,K._)`{type: ${t}}`:(0,K._)`{type: ${e}}`};function nf(t){let e=hI(t);(0,cI.reportError)(e,fI)}et.reportTypeError=nf;function hI(t){let{gen:e,data:r,schema:n}=t,o=(0,xS.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var kS=R(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.assignDefaults=void 0;var Io=X(),gI=ie();function _I(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)bS(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>bS(t,s,o.default))}lc.assignDefaults=_I;function bS(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Io._)`${s}${(0,Io.getProperty)(e)}`;if(o){(0,gI.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Io._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Io._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Io._)`${a} = ${(0,Io.stringify)(r)}`)}});var Dt=R(pe=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.validateUnion=pe.validateArray=pe.usePattern=pe.callValidateCode=pe.schemaProperties=pe.allSchemaProperties=pe.noPropertyInData=pe.propertyInData=pe.isOwnProperty=pe.hasPropFunc=pe.reportMissingProp=pe.checkMissingProp=pe.checkReportMissingProp=void 0;var ve=X(),of=ie(),Kr=$r(),yI=ie();function xI(t,e){let{gen:r,data:n,it:o}=t;r.if(af(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ve._)`${e}`},!0),t.error()})}pe.checkReportMissingProp=xI;function vI({gen:t,data:e,it:{opts:r}},n,o){return(0,ve.or)(...n.map(s=>(0,ve.and)(af(t,e,s,r.ownProperties),(0,ve._)`${o} = ${s}`)))}pe.checkMissingProp=vI;function SI(t,e){t.setParams({missingProperty:e},!0),t.error()}pe.reportMissingProp=SI;function wS(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ve._)`Object.prototype.hasOwnProperty`})}pe.hasPropFunc=wS;function sf(t,e,r){return(0,ve._)`${wS(t)}.call(${e}, ${r})`}pe.isOwnProperty=sf;function bI(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} !== undefined`;return n?(0,ve._)`${o} && ${sf(t,e,r)}`:o}pe.propertyInData=bI;function af(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} === undefined`;return n?(0,ve.or)(o,(0,ve.not)(sf(t,e,r))):o}pe.noPropertyInData=af;function $S(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}pe.allSchemaProperties=$S;function kI(t,e){return $S(e).filter(r=>!(0,of.alwaysValidSchema)(t,e[r]))}pe.schemaProperties=kI;function wI({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=[[Kr.default.instancePath,(0,ve.strConcat)(Kr.default.instancePath,s)],[Kr.default.parentData,i.parentData],[Kr.default.parentDataProperty,i.parentDataProperty],[Kr.default.rootData,Kr.default.rootData]];i.opts.dynamicRef&&d.push([Kr.default.dynamicAnchors,Kr.default.dynamicAnchors]);let m=(0,ve._)`${l}, ${r.object(...d)}`;return c!==ve.nil?(0,ve._)`${a}.call(${c}, ${m})`:(0,ve._)`${a}(${m})`}pe.callValidateCode=wI;var $I=(0,ve._)`new RegExp`;function EI({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"?$I:(0,yI.useFunc)(t,o)}(${r}, ${n})`})}pe.usePattern=EI;function TI(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:of.Type.Num},s),e.if((0,ve.not)(s),a)})}}pe.validateArray=TI;function PI(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,of.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))}pe.validateUnion=PI});var PS=R(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.validateKeywordUsage=ur.validSchemaType=ur.funcKeywordCode=ur.macroKeywordCode=void 0;var at=X(),Un=$r(),RI=Dt(),OI=Ys();function CI(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=TS(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:at.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}ur.macroKeywordCode=CI;function II(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;NI(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=TS(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&ES(t),g(()=>t.error());else{let _=e.async?f():p();e.modifying&&ES(t),g(()=>AI(t,_))}}function f(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,at._)`await `),y=>n.assign(d,!1).if((0,at._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,at._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,at._)`${l}.errors`;return n.assign(_,null),h(at.nil),_}function h(_=e.async?(0,at._)`await `:at.nil){let y=c.opts.passContext?Un.default.this:Un.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,at._)`${_}${(0,RI.callValidateCode)(t,l,y,x)}`,e.modifying)}function g(_){var y;n.if((0,at.not)((y=e.valid)!==null&&y!==void 0?y:d),_)}}ur.funcKeywordCode=II;function ES(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,at._)`${n.parentData}[${n.parentDataProperty}]`))}function AI(t,e){let{gen:r}=t;r.if((0,at._)`Array.isArray(${e})`,()=>{r.assign(Un.default.vErrors,(0,at._)`${Un.default.vErrors} === null ? ${e} : ${Un.default.vErrors}.concat(${e})`).assign(Un.default.errors,(0,at._)`${Un.default.vErrors}.length`),(0,OI.extendErrors)(t)},()=>t.error())}function NI({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function TS(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,at.stringify)(r)})}function zI(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")}ur.validSchemaType=zI;function jI({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)}}ur.validateKeywordUsage=jI});var OS=R(Jr=>{"use strict";Object.defineProperty(Jr,"__esModule",{value:!0});Jr.extendSubschemaMode=Jr.extendSubschemaData=Jr.getSubschema=void 0;var lr=X(),RS=ie();function DI(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,lr._)`${t.schemaPath}${(0,lr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,lr._)`${t.schemaPath}${(0,lr.getProperty)(e)}${(0,lr.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,RS.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')}Jr.getSubschema=DI;function MI(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,m=a.let("data",(0,lr._)`${e.data}${(0,lr.getProperty)(r)}`,!0);c(m),t.errorPath=(0,lr.str)`${u}${(0,RS.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,lr._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof lr.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]}}Jr.extendSubschemaData=MI;function LI(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}Jr.extendSubschemaMode=LI});var cf=R((Yq,CS)=>{"use strict";CS.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 AS=R((Xq,IS)=>{"use strict";var Yr=IS.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(){};dc(e,n,o,t,"",t)};Yr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Yr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Yr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Yr.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 dc(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 Yr.arrayKeywords)for(var m=0;m<d.length;m++)dc(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in Yr.propsKeywords){if(d&&typeof d=="object")for(var f in d)dc(t,e,r,d[f],o+"/"+l+"/"+FI(f),s,o,l,n,f)}else(l in Yr.keywords||t.allKeys&&!(l in Yr.skipKeywords))&&dc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function FI(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Qs=R(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.getSchemaRefs=ft.resolveUrl=ft.normalizeId=ft._getFullPath=ft.getFullPath=ft.inlineRef=void 0;var UI=ie(),ZI=cf(),HI=AS(),qI=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function BI(t,e=!0){return typeof t=="boolean"?!0:e===!0?!uf(t):e?NS(t)<=e:!1}ft.inlineRef=BI;var VI=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function uf(t){for(let e in t){if(VI.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(uf)||typeof r=="object"&&uf(r))return!0}return!1}function NS(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!qI.has(r)&&(typeof t[r]=="object"&&(0,UI.eachItem)(t[r],n=>e+=NS(n)),e===1/0))return 1/0}return e}function zS(t,e="",r){r!==!1&&(e=Ao(e));let n=t.parse(e);return jS(t,n)}ft.getFullPath=zS;function jS(t,e){return t.serialize(e).split("#")[0]+"#"}ft._getFullPath=jS;var WI=/#\/?$/;function Ao(t){return t?t.replace(WI,""):""}ft.normalizeId=Ao;function GI(t,e,r){return r=Ao(r),t.resolve(e,r)}ft.resolveUrl=GI;var KI=/^[a-z_][-a-z0-9._]*$/i;function JI(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Ao(t[r]||e),s={"":o},i=zS(n,o,!1),a={},c=new Set;return HI(t,{allKeys:!0},(d,m,f,p)=>{if(p===void 0)return;let h=i+m,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[m]=g;function _(x){let k=this.opts.uriResolver.resolve;if(x=Ao(g?k(g,x):x),c.has(x))throw l(x);c.add(x);let E=this.refs[x];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?u(d,E.schema,x):x!==Ao(h)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=h),x}function y(x){if(typeof x=="string"){if(!KI.test(x))throw new Error(`invalid anchor "${x}"`);_.call(this,`#${x}`)}}}),a;function u(d,m,f){if(m!==void 0&&!ZI(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ft.getSchemaRefs=JI});var ri=R(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.getData=Xr.KeywordCxt=Xr.validateFunctionCode=void 0;var US=gS(),DS=Xs(),df=ef(),pc=Xs(),YI=kS(),ti=PS(),lf=OS(),j=X(),V=$r(),XI=Qs(),Er=ie(),ei=Ys();function QI(t){if(qS(t)&&(BS(t),HS(t))){r1(t);return}ZS(t,()=>(0,US.topBoolOrEmptySchema)(t))}Xr.validateFunctionCode=QI;function ZS({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,j._)`${V.default.data}, ${V.default.valCxt}`,n.$async,()=>{t.code((0,j._)`"use strict"; ${MS(r,o)}`),t1(t,o),t.code(s)}):t.func(e,(0,j._)`${V.default.data}, ${e1(o)}`,n.$async,()=>t.code(MS(r,o)).code(s))}function e1(t){return(0,j._)`{${V.default.instancePath}="", ${V.default.parentData}, ${V.default.parentDataProperty}, ${V.default.rootData}=${V.default.data}${t.dynamicRef?(0,j._)`, ${V.default.dynamicAnchors}={}`:j.nil}}={}`}function t1(t,e){t.if(V.default.valCxt,()=>{t.var(V.default.instancePath,(0,j._)`${V.default.valCxt}.${V.default.instancePath}`),t.var(V.default.parentData,(0,j._)`${V.default.valCxt}.${V.default.parentData}`),t.var(V.default.parentDataProperty,(0,j._)`${V.default.valCxt}.${V.default.parentDataProperty}`),t.var(V.default.rootData,(0,j._)`${V.default.valCxt}.${V.default.rootData}`),e.dynamicRef&&t.var(V.default.dynamicAnchors,(0,j._)`${V.default.valCxt}.${V.default.dynamicAnchors}`)},()=>{t.var(V.default.instancePath,(0,j._)`""`),t.var(V.default.parentData,(0,j._)`undefined`),t.var(V.default.parentDataProperty,(0,j._)`undefined`),t.var(V.default.rootData,V.default.data),e.dynamicRef&&t.var(V.default.dynamicAnchors,(0,j._)`{}`)})}function r1(t){let{schema:e,opts:r,gen:n}=t;ZS(t,()=>{r.$comment&&e.$comment&&WS(t),a1(t),n.let(V.default.vErrors,null),n.let(V.default.errors,0),r.unevaluated&&n1(t),VS(t),l1(t)})}function n1(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 MS(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 o1(t,e){if(qS(t)&&(BS(t),HS(t))){s1(t,e);return}(0,US.boolOrEmptySchema)(t,e)}function HS({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 qS(t){return typeof t.schema!="boolean"}function s1(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&WS(t),c1(t),u1(t);let s=n.const("_errs",V.default.errors);VS(t,s),n.var(e,(0,j._)`${s} === ${V.default.errors}`)}function BS(t){(0,Er.checkUnknownRules)(t),i1(t)}function VS(t,e){if(t.opts.jtd)return LS(t,[],!1,e);let r=(0,DS.getSchemaTypes)(t.schema),n=(0,DS.coerceAndCheckDataType)(t,r);LS(t,r,!n,e)}function i1(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Er.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function a1(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Er.checkStrictMode)(t,"default is ignored in the schema root")}function c1(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,XI.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function u1(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function WS({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,j._)`${V.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._)`${V.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function l1(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,j._)`${V.default.errors} === 0`,()=>e.return(V.default.data),()=>e.throw((0,j._)`new ${o}(${V.default.vErrors})`)):(e.assign((0,j._)`${n}.errors`,V.default.vErrors),s.unevaluated&&d1(t),e.return((0,j._)`${V.default.errors} === 0`))}function d1({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 LS(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Er.schemaHasRulesButRef)(s,l))){o.block(()=>KS(t,"$ref",l.all.$ref.definition));return}c.jtd||p1(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,df.shouldUseGroup)(s,m)&&(m.type?(o.if((0,pc.checkDataType)(m.type,i,c.strictNumbers)),FS(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,pc.reportTypeError)(t)),o.endIf()):FS(t,m),a||o.if((0,j._)`${V.default.errors} === ${n||0}`))}}function FS(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,YI.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,df.shouldUseRule)(n,s)&&KS(t,s.keyword,s.definition,e.type)})}function p1(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(m1(t,e),t.opts.allowUnionTypes||f1(t,e),h1(t,t.dataTypes))}function m1(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{GS(t.dataTypes,r)||pf(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),_1(t,e)}}function f1(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&pf(t,"use allowUnionTypes to allow union type keyword")}function h1(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,df.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>g1(e,i))&&pf(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function g1(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function GS(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function _1(t,e){let r=[];for(let n of t.dataTypes)GS(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function pf(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Er.checkStrictMode)(t,e,t.opts.strictTypes)}var mc=class{constructor(e,r,n){if((0,ti.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,Er.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",JS(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ti.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",V.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?ei.reportExtraError:ei.reportError)(this,this.def.error,r)}$dataError(){(0,ei.reportError)(this,this.def.$dataError||ei.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ei.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,pc.checkDataTypes)(c,r,s.opts.strictNumbers,pc.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,lf.getSubschema)(this.it,e);(0,lf.extendSubschemaData)(n,this.it,e),(0,lf.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return o1(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Er.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Er.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}};Xr.KeywordCxt=mc;function KS(t,e,r,n){let o=new mc(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ti.funcKeywordCode)(o,r):"macro"in r?(0,ti.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ti.funcKeywordCode)(o,r)}var y1=/^\/(?:[^~]|~0|~1)*$/,x1=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function JS(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return V.default.rootData;if(t[0]==="/"){if(!y1.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=V.default.rootData}else{let u=x1.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,Er.unescapeJsonPointer)(u))}`,i=(0,j._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Xr.getData=JS});var fc=R(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});var mf=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};ff.default=mf});var ni=R(_f=>{"use strict";Object.defineProperty(_f,"__esModule",{value:!0});var hf=Qs(),gf=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,hf.resolveUrl)(e,r,n),this.missingSchema=(0,hf.normalizeId)((0,hf.getFullPath)(e,this.missingRef))}};_f.default=gf});var gc=R(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.resolveSchema=Mt.getCompilingSchema=Mt.resolveRef=Mt.compileSchema=Mt.SchemaEnv=void 0;var Jt=X(),v1=fc(),Zn=$r(),Yt=Qs(),YS=ie(),S1=ri(),No=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,Yt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Mt.SchemaEnv=No;function xf(t){let e=XS.call(this,t);if(e)return e;let r=(0,Yt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Jt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:v1.default,code:(0,Jt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Zn.default.data,parentData:Zn.default.parentData,parentDataProperty:Zn.default.parentDataProperty,dataNames:[Zn.default.data],dataPathArr:[Jt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Jt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Jt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Jt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,S1.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Zn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Zn.default.self}`,`${Zn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;f.evaluated={props:p instanceof Jt.Name?void 0:p,items:h instanceof Jt.Name?void 0:h,dynamicProps:p instanceof Jt.Name,dynamicItems:h instanceof Jt.Name},f.source&&(f.source.evaluated=(0,Jt.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Mt.compileSchema=xf;function b1(t,e,r){var n;r=(0,Yt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=$1.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 No({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=k1.call(this,s)}Mt.resolveRef=b1;function k1(t){return(0,Yt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:xf.call(this,t)}function XS(t){for(let e of this._compilations)if(w1(e,t))return e}Mt.getCompilingSchema=XS;function w1(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function $1(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||hc.call(this,t,e)}function hc(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Yt._getFullPath)(this.opts.uriResolver,r),o=(0,Yt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return yf.call(this,r,t);let s=(0,Yt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=hc.call(this,t,i);return typeof a?.schema!="object"?void 0:yf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||xf.call(this,i),s===(0,Yt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Yt.resolveUrl)(this.opts.uriResolver,o,u)),new No({schema:a,schemaId:c,root:t,baseId:o})}return yf.call(this,r,i)}}Mt.resolveSchema=hc;var E1=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function yf(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,YS.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!E1.has(a)&&u&&(e=(0,Yt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,YS.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Yt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=hc.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new No({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var QS=R((o4,T1)=>{T1.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((s4,nb)=>{"use strict";var P1=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),tb=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 vf(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 R1=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function eb(t){return t.length=0,!0}function O1(t,e,r){if(t.length){let n=vf(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function C1(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=O1;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=eb}else{o.push(u);continue}}return o.length&&(a===eb?r.zone=o.join(""):i?n.push(o.join("")):n.push(vf(o))),r.address=n.join(""),r}function rb(t){if(I1(t,":")<2)return{host:t,isIPV6:!1};let e=C1(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 I1(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function A1(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 N1(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 z1(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!tb(r)){let n=rb(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}nb.exports={nonSimpleDomain:R1,recomposeAuthority:z1,normalizeComponentEncoding:N1,removeDotSegments:A1,isIPv4:tb,isUUID:P1,normalizeIPv6:rb,stringArrayToHexStripped:vf}});var cb=R((i4,ab)=>{"use strict";var{isUUID:j1}=Sf(),D1=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,M1=["http","https","ws","wss","urn","urn:uuid"];function L1(t){return M1.indexOf(t)!==-1}function bf(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 ob(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function sb(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 F1(t){return t.secure=bf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function U1(t){if((t.port===(bf(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 Z1(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(D1);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=kf(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function H1(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=kf(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 q1(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!j1(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function B1(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var ib={scheme:"http",domainHost:!0,parse:ob,serialize:sb},V1={scheme:"https",domainHost:ib.domainHost,parse:ob,serialize:sb},_c={scheme:"ws",domainHost:!0,parse:F1,serialize:U1},W1={scheme:"wss",domainHost:_c.domainHost,parse:_c.parse,serialize:_c.serialize},G1={scheme:"urn",parse:Z1,serialize:H1,skipNormalize:!0},K1={scheme:"urn:uuid",parse:q1,serialize:B1,skipNormalize:!0},yc={http:ib,https:V1,ws:_c,wss:W1,urn:G1,"urn:uuid":K1};Object.setPrototypeOf(yc,null);function kf(t){return t&&(yc[t]||yc[t.toLowerCase()])||void 0}ab.exports={wsIsSecure:bf,SCHEMES:yc,isValidSchemeName:L1,getSchemeHandler:kf}});var db=R((a4,vc)=>{"use strict";var{normalizeIPv6:J1,removeDotSegments:oi,recomposeAuthority:Y1,normalizeComponentEncoding:xc,isIPv4:X1,nonSimpleDomain:Q1}=Sf(),{SCHEMES:eA,getSchemeHandler:ub}=cb();function tA(t,e){return typeof t=="string"?t=dr(Tr(t,e),e):typeof t=="object"&&(t=Tr(dr(t,e),e)),t}function rA(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=lb(Tr(t,n),Tr(e,n),n,!0);return n.skipEscape=!0,dr(o,n)}function lb(t,e,r,n){let o={};return n||(t=Tr(dr(t,r),r),e=Tr(dr(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=oi(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=oi(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=oi(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=oi(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 nA(t,e,r){return typeof t=="string"?(t=unescape(t),t=dr(xc(Tr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=dr(xc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=dr(xc(Tr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=dr(xc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function dr(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=ub(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=Y1(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=oi(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 oA=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Tr(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(oA);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(X1(n.host)===!1){let c=J1(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=ub(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&Q1(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 wf={SCHEMES:eA,normalize:tA,resolve:rA,resolveComponent:lb,equal:nA,serialize:dr,parse:Tr};vc.exports=wf;vc.exports.default=wf;vc.exports.fastUri=wf});var mb=R($f=>{"use strict";Object.defineProperty($f,"__esModule",{value:!0});var pb=db();pb.code='require("ajv/dist/runtime/uri").default';$f.default=pb});var Sb=R(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.CodeGen=Ge.Name=Ge.nil=Ge.stringify=Ge.str=Ge._=Ge.KeywordCxt=void 0;var sA=ri();Object.defineProperty(Ge,"KeywordCxt",{enumerable:!0,get:function(){return sA.KeywordCxt}});var zo=X();Object.defineProperty(Ge,"_",{enumerable:!0,get:function(){return zo._}});Object.defineProperty(Ge,"str",{enumerable:!0,get:function(){return zo.str}});Object.defineProperty(Ge,"stringify",{enumerable:!0,get:function(){return zo.stringify}});Object.defineProperty(Ge,"nil",{enumerable:!0,get:function(){return zo.nil}});Object.defineProperty(Ge,"Name",{enumerable:!0,get:function(){return zo.Name}});Object.defineProperty(Ge,"CodeGen",{enumerable:!0,get:function(){return zo.CodeGen}});var iA=fc(),yb=ni(),aA=Qm(),si=gc(),cA=X(),ii=Qs(),Sc=Xs(),Tf=ie(),fb=QS(),uA=mb(),xb=(t,e)=>new RegExp(t,e);xb.code="new RegExp";var lA=["removeAdditional","useDefaults","coerceTypes"],dA=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),pA={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."},mA={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},hb=200;function fA(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,_,y,x,k,E,B,H,J,tt;let Ze=t.strict,F=(e=t.code)===null||e===void 0?void 0:e.optimize,_t=F===!0||F===void 0?1:F||0,ze=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:xb,be=(o=t.uriResolver)!==null&&o!==void 0?o:uA.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Ze)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Ze)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Ze)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:Ze)!==null&&m!==void 0?m:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:Ze)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:_t,regExp:ze}:{optimize:_t,regExp:ze},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:hb,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:hb,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(k=t.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(E=t.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(B=t.validateSchema)!==null&&B!==void 0?B:!0,validateFormats:(H=t.validateFormats)!==null&&H!==void 0?H:!0,unicodeRegExp:(J=t.unicodeRegExp)!==null&&J!==void 0?J:!0,int32range:(tt=t.int32range)!==null&&tt!==void 0?tt:!0,uriResolver:be}}var ai=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...fA(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new cA.ValueScope({scope:{},prefixes:dA,es5:r,lines:n}),this.logger=vA(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,aA.getRules)(),gb.call(this,pA,e,"NOT SUPPORTED"),gb.call(this,mA,e,"DEPRECATED","warn"),this._metaOpts=yA.call(this),e.formats&&gA.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&_A.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),hA.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=fb;n==="id"&&(o={...fb},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let m=this._addSchema(l,d);return m.validate||i.call(this,m)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof yb.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,ii.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=_b.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new si.SchemaEnv({schema:{},schemaId:n});if(r=si.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=_b.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,ii.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(bA.call(this,n,r),!r)return(0,Tf.eachItem)(n,s=>Ef.call(this,s)),this;wA.call(this,r);let o={...r,type:(0,Sc.getJSONTypes)(r.type),schemaType:(0,Sc.getJSONTypes)(r.schemaType)};return(0,Tf.eachItem)(n,o.type.length===0?s=>Ef.call(this,s,o):s=>o.type.forEach(i=>Ef.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]=vb(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,ii.normalizeId)(i||n);let u=ii.getSchemaRefs.call(this,e,n);return c=new si.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):si.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{si.compileSchema.call(this,e)}finally{this.opts=r}}};ai.ValidationError=iA.default;ai.MissingRefError=yb.default;Ge.default=ai;function gb(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 _b(t){return t=(0,ii.normalizeId)(t),this.schemas[t]||this.refs[t]}function hA(){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 gA(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function _A(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 yA(){let t={...this.opts};for(let e of lA)delete t[e];return t}var xA={log(){},warn(){},error(){}};function vA(t){if(t===!1)return xA;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 SA=/^[a-z_$][a-z0-9_$:-]*$/i;function bA(t,e){let{RULES:r}=this;if((0,Tf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!SA.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 Ef(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,Sc.getJSONTypes)(e.type),schemaType:(0,Sc.getJSONTypes)(e.schemaType)}};e.before?kA.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 kA(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 wA(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=vb(e)),t.validateSchema=this.compile(e,!0))}var $A={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function vb(t){return{anyOf:[t,$A]}}});var bb=R(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});var EA={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Pf.default=EA});var Eb=R(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.callRef=Hn.getValidate=void 0;var TA=ni(),kb=Dt(),ht=X(),jo=$r(),wb=gc(),bc=ie(),PA={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=wb.resolveRef.call(c,u,o,r);if(l===void 0)throw new TA.default(n.opts.uriResolver,o,r);if(l instanceof wb.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return kc(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return kc(t,(0,ht._)`${p}.validate`,u,u.$async)}function m(p){let h=$b(t,p);kc(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,ht.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:ht.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function $b(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ht._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Hn.getValidate=$b;function kc(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?jo.default.this:ht.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,ht._)`await ${(0,kb.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,ht._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,kb.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,ht._)`${p}.errors`;o.assign(jo.default.vErrors,(0,ht._)`${jo.default.vErrors} === null ? ${h} : ${jo.default.vErrors}.concat(${h})`),o.assign(jo.default.errors,(0,ht._)`${jo.default.vErrors}.length`)}function f(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=bc.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,ht._)`${p}.evaluated.props`);s.props=bc.mergeEvaluated.props(o,_,s.props,ht.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=bc.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,ht._)`${p}.evaluated.items`);s.items=bc.mergeEvaluated.items(o,_,s.items,ht.Name)}}}Hn.callRef=kc;Hn.default=PA});var Tb=R(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});var RA=bb(),OA=Eb(),CA=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",RA.default,OA.default];Rf.default=CA});var Pb=R(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});var wc=X(),Qr=wc.operators,$c={maximum:{okStr:"<=",ok:Qr.LTE,fail:Qr.GT},minimum:{okStr:">=",ok:Qr.GTE,fail:Qr.LT},exclusiveMaximum:{okStr:"<",ok:Qr.LT,fail:Qr.GTE},exclusiveMinimum:{okStr:">",ok:Qr.GT,fail:Qr.LTE}},IA={message:({keyword:t,schemaCode:e})=>(0,wc.str)`must be ${$c[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wc._)`{comparison: ${$c[t].okStr}, limit: ${e}}`},AA={keyword:Object.keys($c),type:"number",schemaType:"number",$data:!0,error:IA,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,wc._)`${r} ${$c[e].fail} ${n} || isNaN(${r})`)}};Of.default=AA});var Rb=R(Cf=>{"use strict";Object.defineProperty(Cf,"__esModule",{value:!0});var ci=X(),NA={message:({schemaCode:t})=>(0,ci.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,ci._)`{multipleOf: ${t}}`},zA={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:NA,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,ci._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,ci._)`${i} !== parseInt(${i})`;t.fail$data((0,ci._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Cf.default=zA});var Cb=R(If=>{"use strict";Object.defineProperty(If,"__esModule",{value:!0});function Ob(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}If.default=Ob;Ob.code='require("ajv/dist/runtime/ucs2length").default'});var Ib=R(Af=>{"use strict";Object.defineProperty(Af,"__esModule",{value:!0});var qn=X(),jA=ie(),DA=Cb(),MA={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,qn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,qn._)`{limit: ${t}}`},LA={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:MA,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?qn.operators.GT:qn.operators.LT,i=o.opts.unicode===!1?(0,qn._)`${r}.length`:(0,qn._)`${(0,jA.useFunc)(t.gen,DA.default)}(${r})`;t.fail$data((0,qn._)`${i} ${s} ${n}`)}};Af.default=LA});var Ab=R(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});var FA=Dt(),UA=ie(),Do=X(),ZA={message:({schemaCode:t})=>(0,Do.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Do._)`{pattern: ${t}}`},HA={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:ZA,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,Do._)`new RegExp`:(0,UA.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Do._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Do._)`!${l}`)}else{let c=(0,FA.usePattern)(t,o);t.fail$data((0,Do._)`!${c}.test(${r})`)}}};Nf.default=HA});var Nb=R(zf=>{"use strict";Object.defineProperty(zf,"__esModule",{value:!0});var ui=X(),qA={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ui.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ui._)`{limit: ${t}}`},BA={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:qA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?ui.operators.GT:ui.operators.LT;t.fail$data((0,ui._)`Object.keys(${r}).length ${o} ${n}`)}};zf.default=BA});var zb=R(jf=>{"use strict";Object.defineProperty(jf,"__esModule",{value:!0});var li=Dt(),di=X(),VA=ie(),WA={message:({params:{missingProperty:t}})=>(0,di.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,di._)`{missingProperty: ${t}}`},GA={keyword:"required",type:"object",schemaType:"array",$data:!0,error:WA,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(f?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,VA.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(di.nil,d);else for(let f of r)(0,li.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>m(f,p)),t.ok(p)}else e.if((0,li.checkMissingProp)(t,r,f)),(0,li.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,li.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,li.propertyInData)(e,o,f,a.ownProperties)),e.if((0,di.not)(p),()=>{t.error(),e.break()})},di.nil)}}};jf.default=GA});var jb=R(Df=>{"use strict";Object.defineProperty(Df,"__esModule",{value:!0});var pi=X(),KA={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,pi.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,pi._)`{limit: ${t}}`},JA={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:KA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?pi.operators.GT:pi.operators.LT;t.fail$data((0,pi._)`${r}.length ${o} ${n}`)}};Df.default=JA});var Ec=R(Mf=>{"use strict";Object.defineProperty(Mf,"__esModule",{value:!0});var Db=cf();Db.code='require("ajv/dist/runtime/equal").default';Mf.default=Db});var Mb=R(Ff=>{"use strict";Object.defineProperty(Ff,"__esModule",{value:!0});var Lf=Xs(),Ke=X(),YA=ie(),XA=Ec(),QA={message:({params:{i:t,j:e}})=>(0,Ke.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ke._)`{i: ${t}, j: ${e}}`},eN={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:QA,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,Lf.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ke._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ke._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ke._)`${p} > 1`,()=>(d()?m:f)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function m(p,h){let g=e.name("item"),_=(0,Lf.checkDataTypes)(u,g,a.opts.strictNumbers,Lf.DataType.Wrong),y=e.const("indices",(0,Ke._)`{}`);e.for((0,Ke._)`;${p}--;`,()=>{e.let(g,(0,Ke._)`${r}[${p}]`),e.if(_,(0,Ke._)`continue`),u.length>1&&e.if((0,Ke._)`typeof ${g} == "string"`,(0,Ke._)`${g} += "_"`),e.if((0,Ke._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Ke._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ke._)`${y}[${g}] = ${p}`)})}function f(p,h){let g=(0,YA.useFunc)(e,XA.default),_=e.name("outer");e.label(_).for((0,Ke._)`;${p}--;`,()=>e.for((0,Ke._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ke._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};Ff.default=eN});var Lb=R(Zf=>{"use strict";Object.defineProperty(Zf,"__esModule",{value:!0});var Uf=X(),tN=ie(),rN=Ec(),nN={message:"must be equal to constant",params:({schemaCode:t})=>(0,Uf._)`{allowedValue: ${t}}`},oN={keyword:"const",$data:!0,error:nN,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Uf._)`!${(0,tN.useFunc)(e,rN.default)}(${r}, ${o})`):t.fail((0,Uf._)`${s} !== ${r}`)}};Zf.default=oN});var Fb=R(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});var mi=X(),sN=ie(),iN=Ec(),aN={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,mi._)`{allowedValues: ${t}}`},cN={keyword:"enum",schemaType:"array",$data:!0,error:aN,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,sN.useFunc)(e,iN.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,mi.or)(...o.map((p,h)=>m(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,mi._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,mi._)`${u()}(${r}, ${f}[${p}])`:(0,mi._)`${r} === ${h}`}}};Hf.default=cN});var Ub=R(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});var uN=Pb(),lN=Rb(),dN=Ib(),pN=Ab(),mN=Nb(),fN=zb(),hN=jb(),gN=Mb(),_N=Lb(),yN=Fb(),xN=[uN.default,lN.default,dN.default,pN.default,mN.default,fN.default,hN.default,gN.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},_N.default,yN.default];qf.default=xN});var Vf=R(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.validateAdditionalItems=void 0;var Bn=X(),Bf=ie(),vN={message:({params:{len:t}})=>(0,Bn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Bn._)`{limit: ${t}}`},SN={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:vN,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Bf.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Zb(t,n)}};function Zb(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Bn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Bn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Bf.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Bn._)`${a} <= ${e.length}`);r.if((0,Bn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Bf.Type.Num},u),i.allErrors||r.if((0,Bn.not)(u),()=>r.break())})}}fi.validateAdditionalItems=Zb;fi.default=SN});var Wf=R(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});hi.validateTuple=void 0;var Hb=X(),Tc=ie(),bN=Dt(),kN={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return qb(t,"additionalItems",e);r.items=!0,!(0,Tc.alwaysValidSchema)(r,e)&&t.ok((0,bN.validateArray)(t))}};function qb(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=Tc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Hb._)`${s}.length`);r.forEach((d,m)=>{(0,Tc.alwaysValidSchema)(a,d)||(n.if((0,Hb._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:f}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(m.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Tc.checkStrictMode)(a,g,m.strictTuples)}}}hi.validateTuple=qb;hi.default=kN});var Bb=R(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});var wN=Wf(),$N={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,wN.validateTuple)(t,"items")};Gf.default=$N});var Wb=R(Kf=>{"use strict";Object.defineProperty(Kf,"__esModule",{value:!0});var Vb=X(),EN=ie(),TN=Dt(),PN=Vf(),RN={message:({params:{len:t}})=>(0,Vb.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Vb._)`{limit: ${t}}`},ON={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:RN,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,EN.alwaysValidSchema)(n,e)&&(o?(0,PN.validateAdditionalItems)(t,o):t.ok((0,TN.validateArray)(t)))}};Kf.default=ON});var Gb=R(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var Lt=X(),Pc=ie(),CN={message:({params:{min:t,max:e}})=>e===void 0?(0,Lt.str)`must contain at least ${t} valid item(s)`:(0,Lt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Lt._)`{minContains: ${t}}`:(0,Lt._)`{minContains: ${t}, maxContains: ${e}}`},IN={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:CN,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,Lt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Pc.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Pc.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Pc.alwaysValidSchema)(s,r)){let h=(0,Lt._)`${l} >= ${i}`;a!==void 0&&(h=(0,Lt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,Lt._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>p(g)))}function f(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Pc.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,Lt._)`${h}++`),a===void 0?e.if((0,Lt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Lt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Lt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Jf.default=IN});var Yb=R(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.validateSchemaDeps=pr.validatePropertyDeps=pr.error=void 0;var Yf=X(),AN=ie(),gi=Dt();pr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Yf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Yf._)`{property: ${t},
54
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,K._)`[${o}]`)}}}function hI({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,K._)`${e} !== undefined`,()=>t.assign((0,K._)`${e}[${r}]`,n))}function nf(t,e,r,n=Ao.Correct){let o=n===Ao.Correct?K.operators.EQ:K.operators.NEQ,s;switch(t){case"null":return(0,K._)`${e} ${o} null`;case"array":s=(0,K._)`Array.isArray(${e})`;break;case"object":s=(0,K._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,K._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,K._)`typeof ${e} ${o} ${t}`}return n===Ao.Correct?s:(0,K.not)(s);function i(a=K.nil){return(0,K.and)((0,K._)`typeof ${e} == "number"`,a,r?(0,K._)`isFinite(${e})`:K.nil)}}tt.checkDataType=nf;function of(t,e,r,n){if(t.length===1)return nf(t[0],e,r,n);let o,s=(0,SS.toHash)(t);if(s.array&&s.object){let i=(0,K._)`typeof ${e} != "object"`;o=s.null?i:(0,K._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=K.nil;s.number&&delete s.integer;for(let i in s)o=(0,K.and)(o,nf(i,e,r,n));return o}tt.checkDataTypes=of;var gI={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,K._)`{type: ${t}}`:(0,K._)`{type: ${e}}`};function sf(t){let e=_I(t);(0,lI.reportError)(e,gI)}tt.reportTypeError=sf;function _I(t){let{gen:e,data:r,schema:n}=t,o=(0,SS.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var $S=R(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});pc.assignDefaults=void 0;var No=X(),yI=ie();function xI(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)wS(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>wS(t,s,o.default))}pc.assignDefaults=xI;function wS(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,No._)`${s}${(0,No.getProperty)(e)}`;if(o){(0,yI.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,No._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,No._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,No._)`${a} = ${(0,No.stringify)(r)}`)}});var Mt=R(pe=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.validateUnion=pe.validateArray=pe.usePattern=pe.callValidateCode=pe.schemaProperties=pe.allSchemaProperties=pe.noPropertyInData=pe.propertyInData=pe.isOwnProperty=pe.hasPropFunc=pe.reportMissingProp=pe.checkMissingProp=pe.checkReportMissingProp=void 0;var Se=X(),af=ie(),Yr=Tr(),vI=ie();function SI(t,e){let{gen:r,data:n,it:o}=t;r.if(uf(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Se._)`${e}`},!0),t.error()})}pe.checkReportMissingProp=SI;function bI({gen:t,data:e,it:{opts:r}},n,o){return(0,Se.or)(...n.map(s=>(0,Se.and)(uf(t,e,s,r.ownProperties),(0,Se._)`${o} = ${s}`)))}pe.checkMissingProp=bI;function kI(t,e){t.setParams({missingProperty:e},!0),t.error()}pe.reportMissingProp=kI;function ES(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Se._)`Object.prototype.hasOwnProperty`})}pe.hasPropFunc=ES;function cf(t,e,r){return(0,Se._)`${ES(t)}.call(${e}, ${r})`}pe.isOwnProperty=cf;function wI(t,e,r,n){let o=(0,Se._)`${e}${(0,Se.getProperty)(r)} !== undefined`;return n?(0,Se._)`${o} && ${cf(t,e,r)}`:o}pe.propertyInData=wI;function uf(t,e,r,n){let o=(0,Se._)`${e}${(0,Se.getProperty)(r)} === undefined`;return n?(0,Se.or)(o,(0,Se.not)(cf(t,e,r))):o}pe.noPropertyInData=uf;function TS(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}pe.allSchemaProperties=TS;function $I(t,e){return TS(e).filter(r=>!(0,af.alwaysValidSchema)(t,e[r]))}pe.schemaProperties=$I;function EI({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,Se._)`${t}, ${e}, ${n}${o}`:e,d=[[Yr.default.instancePath,(0,Se.strConcat)(Yr.default.instancePath,s)],[Yr.default.parentData,i.parentData],[Yr.default.parentDataProperty,i.parentDataProperty],[Yr.default.rootData,Yr.default.rootData]];i.opts.dynamicRef&&d.push([Yr.default.dynamicAnchors,Yr.default.dynamicAnchors]);let m=(0,Se._)`${l}, ${r.object(...d)}`;return c!==Se.nil?(0,Se._)`${a}.call(${c}, ${m})`:(0,Se._)`${a}(${m})`}pe.callValidateCode=EI;var TI=(0,Se._)`new RegExp`;function PI({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,Se._)`${o.code==="new RegExp"?TI:(0,vI.useFunc)(t,o)}(${r}, ${n})`})}pe.usePattern=PI;function RI(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,Se._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:af.Type.Num},s),e.if((0,Se.not)(s),a)})}}pe.validateArray=RI;function OI(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,af.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,Se._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Se.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}pe.validateUnion=OI});var OS=R(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.validateKeywordUsage=lr.validSchemaType=lr.funcKeywordCode=lr.macroKeywordCode=void 0;var ct=X(),Hn=Tr(),CI=Mt(),II=Qs();function AI(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=RS(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:ct.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}lr.macroKeywordCode=AI;function NI(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;jI(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=RS(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&PS(t),g(()=>t.error());else{let _=e.async?f():p();e.modifying&&PS(t),g(()=>zI(t,_))}}function f(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,ct._)`await `),y=>n.assign(d,!1).if((0,ct._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,ct._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,ct._)`${l}.errors`;return n.assign(_,null),h(ct.nil),_}function h(_=e.async?(0,ct._)`await `:ct.nil){let y=c.opts.passContext?Hn.default.this:Hn.default.self,x=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,ct._)`${_}${(0,CI.callValidateCode)(t,l,y,x)}`,e.modifying)}function g(_){var y;n.if((0,ct.not)((y=e.valid)!==null&&y!==void 0?y:d),_)}}lr.funcKeywordCode=NI;function PS(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ct._)`${n.parentData}[${n.parentDataProperty}]`))}function zI(t,e){let{gen:r}=t;r.if((0,ct._)`Array.isArray(${e})`,()=>{r.assign(Hn.default.vErrors,(0,ct._)`${Hn.default.vErrors} === null ? ${e} : ${Hn.default.vErrors}.concat(${e})`).assign(Hn.default.errors,(0,ct._)`${Hn.default.vErrors}.length`),(0,II.extendErrors)(t)},()=>t.error())}function jI({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function RS(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,ct.stringify)(r)})}function DI(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}lr.validSchemaType=DI;function MI({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}lr.validateKeywordUsage=MI});var IS=R(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.extendSubschemaMode=Xr.extendSubschemaData=Xr.getSubschema=void 0;var dr=X(),CS=ie();function LI(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,dr._)`${t.schemaPath}${(0,dr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,dr._)`${t.schemaPath}${(0,dr.getProperty)(e)}${(0,dr.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,CS.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')}Xr.getSubschema=LI;function FI(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,m=a.let("data",(0,dr._)`${e.data}${(0,dr.getProperty)(r)}`,!0);c(m),t.errorPath=(0,dr.str)`${u}${(0,CS.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,dr._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof dr.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Xr.extendSubschemaData=FI;function UI(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}Xr.extendSubschemaMode=UI});var lf=R((a4,AS)=>{"use strict";AS.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 zS=R((c4,NS)=>{"use strict";var Qr=NS.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};mc(e,n,o,t,"",t)};Qr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Qr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Qr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Qr.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 mc(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 Qr.arrayKeywords)for(var m=0;m<d.length;m++)mc(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in Qr.propsKeywords){if(d&&typeof d=="object")for(var f in d)mc(t,e,r,d[f],o+"/"+l+"/"+ZI(f),s,o,l,n,f)}else(l in Qr.keywords||t.allKeys&&!(l in Qr.skipKeywords))&&mc(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function ZI(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var ti=R(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.getSchemaRefs=ht.resolveUrl=ht.normalizeId=ht._getFullPath=ht.getFullPath=ht.inlineRef=void 0;var HI=ie(),qI=lf(),BI=zS(),VI=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function WI(t,e=!0){return typeof t=="boolean"?!0:e===!0?!df(t):e?jS(t)<=e:!1}ht.inlineRef=WI;var GI=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function df(t){for(let e in t){if(GI.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(df)||typeof r=="object"&&df(r))return!0}return!1}function jS(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!VI.has(r)&&(typeof t[r]=="object"&&(0,HI.eachItem)(t[r],n=>e+=jS(n)),e===1/0))return 1/0}return e}function DS(t,e="",r){r!==!1&&(e=zo(e));let n=t.parse(e);return MS(t,n)}ht.getFullPath=DS;function MS(t,e){return t.serialize(e).split("#")[0]+"#"}ht._getFullPath=MS;var KI=/#\/?$/;function zo(t){return t?t.replace(KI,""):""}ht.normalizeId=zo;function JI(t,e,r){return r=zo(r),t.resolve(e,r)}ht.resolveUrl=JI;var YI=/^[a-z_][-a-z0-9._]*$/i;function XI(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=zo(t[r]||e),s={"":o},i=DS(n,o,!1),a={},c=new Set;return BI(t,{allKeys:!0},(d,m,f,p)=>{if(p===void 0)return;let h=i+m,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[m]=g;function _(x){let k=this.opts.uriResolver.resolve;if(x=zo(g?k(g,x):x),c.has(x))throw l(x);c.add(x);let E=this.refs[x];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?u(d,E.schema,x):x!==zo(h)&&(x[0]==="#"?(u(d,a[x],x),a[x]=d):this.refs[x]=h),x}function y(x){if(typeof x=="string"){if(!YI.test(x))throw new Error(`invalid anchor "${x}"`);_.call(this,`#${x}`)}}}),a;function u(d,m,f){if(m!==void 0&&!qI(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ht.getSchemaRefs=XI});var oi=R(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.getData=en.KeywordCxt=en.validateFunctionCode=void 0;var HS=yS(),LS=ei(),mf=rf(),fc=ei(),QI=$S(),ni=OS(),pf=IS(),j=X(),V=Tr(),e1=ti(),Pr=ie(),ri=Qs();function t1(t){if(VS(t)&&(WS(t),BS(t))){o1(t);return}qS(t,()=>(0,HS.topBoolOrEmptySchema)(t))}en.validateFunctionCode=t1;function qS({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,j._)`${V.default.data}, ${V.default.valCxt}`,n.$async,()=>{t.code((0,j._)`"use strict"; ${FS(r,o)}`),n1(t,o),t.code(s)}):t.func(e,(0,j._)`${V.default.data}, ${r1(o)}`,n.$async,()=>t.code(FS(r,o)).code(s))}function r1(t){return(0,j._)`{${V.default.instancePath}="", ${V.default.parentData}, ${V.default.parentDataProperty}, ${V.default.rootData}=${V.default.data}${t.dynamicRef?(0,j._)`, ${V.default.dynamicAnchors}={}`:j.nil}}={}`}function n1(t,e){t.if(V.default.valCxt,()=>{t.var(V.default.instancePath,(0,j._)`${V.default.valCxt}.${V.default.instancePath}`),t.var(V.default.parentData,(0,j._)`${V.default.valCxt}.${V.default.parentData}`),t.var(V.default.parentDataProperty,(0,j._)`${V.default.valCxt}.${V.default.parentDataProperty}`),t.var(V.default.rootData,(0,j._)`${V.default.valCxt}.${V.default.rootData}`),e.dynamicRef&&t.var(V.default.dynamicAnchors,(0,j._)`${V.default.valCxt}.${V.default.dynamicAnchors}`)},()=>{t.var(V.default.instancePath,(0,j._)`""`),t.var(V.default.parentData,(0,j._)`undefined`),t.var(V.default.parentDataProperty,(0,j._)`undefined`),t.var(V.default.rootData,V.default.data),e.dynamicRef&&t.var(V.default.dynamicAnchors,(0,j._)`{}`)})}function o1(t){let{schema:e,opts:r,gen:n}=t;qS(t,()=>{r.$comment&&e.$comment&&KS(t),u1(t),n.let(V.default.vErrors,null),n.let(V.default.errors,0),r.unevaluated&&s1(t),GS(t),p1(t)})}function s1(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 FS(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 i1(t,e){if(VS(t)&&(WS(t),BS(t))){a1(t,e);return}(0,HS.boolOrEmptySchema)(t,e)}function BS({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 VS(t){return typeof t.schema!="boolean"}function a1(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&KS(t),l1(t),d1(t);let s=n.const("_errs",V.default.errors);GS(t,s),n.var(e,(0,j._)`${s} === ${V.default.errors}`)}function WS(t){(0,Pr.checkUnknownRules)(t),c1(t)}function GS(t,e){if(t.opts.jtd)return US(t,[],!1,e);let r=(0,LS.getSchemaTypes)(t.schema),n=(0,LS.coerceAndCheckDataType)(t,r);US(t,r,!n,e)}function c1(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Pr.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function u1(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Pr.checkStrictMode)(t,"default is ignored in the schema root")}function l1(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,e1.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function d1(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function KS({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,j._)`${V.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._)`${V.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function p1(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,j._)`${V.default.errors} === 0`,()=>e.return(V.default.data),()=>e.throw((0,j._)`new ${o}(${V.default.vErrors})`)):(e.assign((0,j._)`${n}.errors`,V.default.vErrors),s.unevaluated&&m1(t),e.return((0,j._)`${V.default.errors} === 0`))}function m1({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 US(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Pr.schemaHasRulesButRef)(s,l))){o.block(()=>YS(t,"$ref",l.all.$ref.definition));return}c.jtd||f1(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,mf.shouldUseGroup)(s,m)&&(m.type?(o.if((0,fc.checkDataType)(m.type,i,c.strictNumbers)),ZS(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,fc.reportTypeError)(t)),o.endIf()):ZS(t,m),a||o.if((0,j._)`${V.default.errors} === ${n||0}`))}}function ZS(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,QI.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,mf.shouldUseRule)(n,s)&&YS(t,s.keyword,s.definition,e.type)})}function f1(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(h1(t,e),t.opts.allowUnionTypes||g1(t,e),_1(t,t.dataTypes))}function h1(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{JS(t.dataTypes,r)||ff(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),x1(t,e)}}function g1(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&ff(t,"use allowUnionTypes to allow union type keyword")}function _1(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,mf.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>y1(e,i))&&ff(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function y1(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function JS(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function x1(t,e){let r=[];for(let n of t.dataTypes)JS(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function ff(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Pr.checkStrictMode)(t,e,t.opts.strictTypes)}var hc=class{constructor(e,r,n){if((0,ni.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,Pr.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",XS(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ni.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",V.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?ri.reportExtraError:ri.reportError)(this,this.def.error,r)}$dataError(){(0,ri.reportError)(this,this.def.$dataError||ri.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ri.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,fc.checkDataTypes)(c,r,s.opts.strictNumbers,fc.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,pf.getSubschema)(this.it,e);(0,pf.extendSubschemaData)(n,this.it,e),(0,pf.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return i1(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Pr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Pr.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}};en.KeywordCxt=hc;function YS(t,e,r,n){let o=new hc(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ni.funcKeywordCode)(o,r):"macro"in r?(0,ni.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ni.funcKeywordCode)(o,r)}var v1=/^\/(?:[^~]|~0|~1)*$/,S1=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function XS(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return V.default.rootData;if(t[0]==="/"){if(!v1.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=V.default.rootData}else{let u=S1.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,Pr.unescapeJsonPointer)(u))}`,i=(0,j._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}en.getData=XS});var gc=R(gf=>{"use strict";Object.defineProperty(gf,"__esModule",{value:!0});var hf=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};gf.default=hf});var si=R(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});var _f=ti(),yf=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,_f.resolveUrl)(e,r,n),this.missingSchema=(0,_f.normalizeId)((0,_f.getFullPath)(e,this.missingRef))}};xf.default=yf});var yc=R(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.resolveSchema=Lt.getCompilingSchema=Lt.resolveRef=Lt.compileSchema=Lt.SchemaEnv=void 0;var Yt=X(),b1=gc(),qn=Tr(),Xt=ti(),QS=ie(),k1=oi(),jo=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,Xt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Lt.SchemaEnv=jo;function Sf(t){let e=eb.call(this,t);if(e)return e;let r=(0,Xt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Yt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:b1.default,code:(0,Yt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:qn.default.data,parentData:qn.default.parentData,parentDataProperty:qn.default.parentDataProperty,dataNames:[qn.default.data],dataPathArr:[Yt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Yt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Yt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Yt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,k1.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(qn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${qn.default.self}`,`${qn.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;f.evaluated={props:p instanceof Yt.Name?void 0:p,items:h instanceof Yt.Name?void 0:h,dynamicProps:p instanceof Yt.Name,dynamicItems:h instanceof Yt.Name},f.source&&(f.source.evaluated=(0,Yt.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Lt.compileSchema=Sf;function w1(t,e,r){var n;r=(0,Xt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=T1.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 jo({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=$1.call(this,s)}Lt.resolveRef=w1;function $1(t){return(0,Xt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Sf.call(this,t)}function eb(t){for(let e of this._compilations)if(E1(e,t))return e}Lt.getCompilingSchema=eb;function E1(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function T1(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||_c.call(this,t,e)}function _c(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Xt._getFullPath)(this.opts.uriResolver,r),o=(0,Xt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return vf.call(this,r,t);let s=(0,Xt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=_c.call(this,t,i);return typeof a?.schema!="object"?void 0:vf.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Sf.call(this,i),s===(0,Xt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Xt.resolveUrl)(this.opts.uriResolver,o,u)),new jo({schema:a,schemaId:c,root:t,baseId:o})}return vf.call(this,r,i)}}Lt.resolveSchema=_c;var P1=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function vf(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,QS.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!P1.has(a)&&u&&(e=(0,Xt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,QS.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Xt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=_c.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new jo({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var tb=R((f4,R1)=>{R1.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 kf=R((h4,sb)=>{"use strict";var O1=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),nb=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 bf(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 C1=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function rb(t){return t.length=0,!0}function I1(t,e,r){if(t.length){let n=bf(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function A1(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=I1;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=rb}else{o.push(u);continue}}return o.length&&(a===rb?r.zone=o.join(""):i?n.push(o.join("")):n.push(bf(o))),r.address=n.join(""),r}function ob(t){if(N1(t,":")<2)return{host:t,isIPV6:!1};let e=A1(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 N1(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function z1(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 j1(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 D1(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!nb(r)){let n=ob(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}sb.exports={nonSimpleDomain:C1,recomposeAuthority:D1,normalizeComponentEncoding:j1,removeDotSegments:z1,isIPv4:nb,isUUID:O1,normalizeIPv6:ob,stringArrayToHexStripped:bf}});var lb=R((g4,ub)=>{"use strict";var{isUUID:M1}=kf(),L1=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,F1=["http","https","ws","wss","urn","urn:uuid"];function U1(t){return F1.indexOf(t)!==-1}function wf(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 ib(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function ab(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 Z1(t){return t.secure=wf(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function H1(t){if((t.port===(wf(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 q1(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(L1);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=$f(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function B1(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=$f(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function V1(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!M1(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function W1(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var cb={scheme:"http",domainHost:!0,parse:ib,serialize:ab},G1={scheme:"https",domainHost:cb.domainHost,parse:ib,serialize:ab},xc={scheme:"ws",domainHost:!0,parse:Z1,serialize:H1},K1={scheme:"wss",domainHost:xc.domainHost,parse:xc.parse,serialize:xc.serialize},J1={scheme:"urn",parse:q1,serialize:B1,skipNormalize:!0},Y1={scheme:"urn:uuid",parse:V1,serialize:W1,skipNormalize:!0},vc={http:cb,https:G1,ws:xc,wss:K1,urn:J1,"urn:uuid":Y1};Object.setPrototypeOf(vc,null);function $f(t){return t&&(vc[t]||vc[t.toLowerCase()])||void 0}ub.exports={wsIsSecure:wf,SCHEMES:vc,isValidSchemeName:U1,getSchemeHandler:$f}});var mb=R((_4,bc)=>{"use strict";var{normalizeIPv6:X1,removeDotSegments:ii,recomposeAuthority:Q1,normalizeComponentEncoding:Sc,isIPv4:eA,nonSimpleDomain:tA}=kf(),{SCHEMES:rA,getSchemeHandler:db}=lb();function nA(t,e){return typeof t=="string"?t=pr(Rr(t,e),e):typeof t=="object"&&(t=Rr(pr(t,e),e)),t}function oA(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=pb(Rr(t,n),Rr(e,n),n,!0);return n.skipEscape=!0,pr(o,n)}function pb(t,e,r,n){let o={};return n||(t=Rr(pr(t,r),r),e=Rr(pr(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=ii(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=ii(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=ii(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=ii(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 sA(t,e,r){return typeof t=="string"?(t=unescape(t),t=pr(Sc(Rr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=pr(Sc(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=pr(Sc(Rr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=pr(Sc(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function pr(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=db(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=Q1(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=ii(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 iA=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Rr(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(iA);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(eA(n.host)===!1){let c=X1(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=db(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&tA(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 Ef={SCHEMES:rA,normalize:nA,resolve:oA,resolveComponent:pb,equal:sA,serialize:pr,parse:Rr};bc.exports=Ef;bc.exports.default=Ef;bc.exports.fastUri=Ef});var hb=R(Tf=>{"use strict";Object.defineProperty(Tf,"__esModule",{value:!0});var fb=mb();fb.code='require("ajv/dist/runtime/uri").default';Tf.default=fb});var kb=R(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.CodeGen=Ke.Name=Ke.nil=Ke.stringify=Ke.str=Ke._=Ke.KeywordCxt=void 0;var aA=oi();Object.defineProperty(Ke,"KeywordCxt",{enumerable:!0,get:function(){return aA.KeywordCxt}});var Do=X();Object.defineProperty(Ke,"_",{enumerable:!0,get:function(){return Do._}});Object.defineProperty(Ke,"str",{enumerable:!0,get:function(){return Do.str}});Object.defineProperty(Ke,"stringify",{enumerable:!0,get:function(){return Do.stringify}});Object.defineProperty(Ke,"nil",{enumerable:!0,get:function(){return Do.nil}});Object.defineProperty(Ke,"Name",{enumerable:!0,get:function(){return Do.Name}});Object.defineProperty(Ke,"CodeGen",{enumerable:!0,get:function(){return Do.CodeGen}});var cA=gc(),vb=si(),uA=tf(),ai=yc(),lA=X(),ci=ti(),kc=ei(),Rf=ie(),gb=tb(),dA=hb(),Sb=(t,e)=>new RegExp(t,e);Sb.code="new RegExp";var pA=["removeAdditional","useDefaults","coerceTypes"],mA=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),fA={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."},hA={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},_b=200;function gA(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,_,y,x,k,E,B,H,J,rt;let He=t.strict,F=(e=t.code)===null||e===void 0?void 0:e.optimize,yt=F===!0||F===void 0?1:F||0,je=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Sb,ke=(o=t.uriResolver)!==null&&o!==void 0?o:dA.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:He)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:He)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:He)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:He)!==null&&m!==void 0?m:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:He)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:yt,regExp:je}:{optimize:yt,regExp:je},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:_b,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:_b,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(k=t.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(E=t.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(B=t.validateSchema)!==null&&B!==void 0?B:!0,validateFormats:(H=t.validateFormats)!==null&&H!==void 0?H:!0,unicodeRegExp:(J=t.unicodeRegExp)!==null&&J!==void 0?J:!0,int32range:(rt=t.int32range)!==null&&rt!==void 0?rt:!0,uriResolver:ke}}var ui=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...gA(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new lA.ValueScope({scope:{},prefixes:mA,es5:r,lines:n}),this.logger=bA(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,uA.getRules)(),yb.call(this,fA,e,"NOT SUPPORTED"),yb.call(this,hA,e,"DEPRECATED","warn"),this._metaOpts=vA.call(this),e.formats&&yA.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&xA.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),_A.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=gb;n==="id"&&(o={...gb},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let m=this._addSchema(l,d);return m.validate||i.call(this,m)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof vb.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,ci.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=xb.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new ai.SchemaEnv({schema:{},schemaId:n});if(r=ai.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=xb.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,ci.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(wA.call(this,n,r),!r)return(0,Rf.eachItem)(n,s=>Pf.call(this,s)),this;EA.call(this,r);let o={...r,type:(0,kc.getJSONTypes)(r.type),schemaType:(0,kc.getJSONTypes)(r.schemaType)};return(0,Rf.eachItem)(n,o.type.length===0?s=>Pf.call(this,s,o):s=>o.type.forEach(i=>Pf.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]=bb(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,ci.normalizeId)(i||n);let u=ci.getSchemaRefs.call(this,e,n);return c=new ai.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):ai.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{ai.compileSchema.call(this,e)}finally{this.opts=r}}};ui.ValidationError=cA.default;ui.MissingRefError=vb.default;Ke.default=ui;function yb(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 xb(t){return t=(0,ci.normalizeId)(t),this.schemas[t]||this.refs[t]}function _A(){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 yA(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function xA(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 vA(){let t={...this.opts};for(let e of pA)delete t[e];return t}var SA={log(){},warn(){},error(){}};function bA(t){if(t===!1)return SA;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 kA=/^[a-z_$][a-z0-9_$:-]*$/i;function wA(t,e){let{RULES:r}=this;if((0,Rf.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!kA.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 Pf(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,kc.getJSONTypes)(e.type),schemaType:(0,kc.getJSONTypes)(e.schemaType)}};e.before?$A.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 $A(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 EA(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=bb(e)),t.validateSchema=this.compile(e,!0))}var TA={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function bb(t){return{anyOf:[t,TA]}}});var wb=R(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});var PA={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Of.default=PA});var Pb=R(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.callRef=Bn.getValidate=void 0;var RA=si(),$b=Mt(),gt=X(),Mo=Tr(),Eb=yc(),wc=ie(),OA={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=Eb.resolveRef.call(c,u,o,r);if(l===void 0)throw new RA.default(n.opts.uriResolver,o,r);if(l instanceof Eb.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return $c(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return $c(t,(0,gt._)`${p}.validate`,u,u.$async)}function m(p){let h=Tb(t,p);$c(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,gt.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:gt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function Tb(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,gt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Bn.getValidate=Tb;function $c(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Mo.default.this:gt.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,gt._)`await ${(0,$b.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,gt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,$b.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,gt._)`${p}.errors`;o.assign(Mo.default.vErrors,(0,gt._)`${Mo.default.vErrors} === null ? ${h} : ${Mo.default.vErrors}.concat(${h})`),o.assign(Mo.default.errors,(0,gt._)`${Mo.default.vErrors}.length`)}function f(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=wc.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,gt._)`${p}.evaluated.props`);s.props=wc.mergeEvaluated.props(o,_,s.props,gt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=wc.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,gt._)`${p}.evaluated.items`);s.items=wc.mergeEvaluated.items(o,_,s.items,gt.Name)}}}Bn.callRef=$c;Bn.default=OA});var Rb=R(Cf=>{"use strict";Object.defineProperty(Cf,"__esModule",{value:!0});var CA=wb(),IA=Pb(),AA=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",CA.default,IA.default];Cf.default=AA});var Ob=R(If=>{"use strict";Object.defineProperty(If,"__esModule",{value:!0});var Ec=X(),tn=Ec.operators,Tc={maximum:{okStr:"<=",ok:tn.LTE,fail:tn.GT},minimum:{okStr:">=",ok:tn.GTE,fail:tn.LT},exclusiveMaximum:{okStr:"<",ok:tn.LT,fail:tn.GTE},exclusiveMinimum:{okStr:">",ok:tn.GT,fail:tn.LTE}},NA={message:({keyword:t,schemaCode:e})=>(0,Ec.str)`must be ${Tc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ec._)`{comparison: ${Tc[t].okStr}, limit: ${e}}`},zA={keyword:Object.keys(Tc),type:"number",schemaType:"number",$data:!0,error:NA,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ec._)`${r} ${Tc[e].fail} ${n} || isNaN(${r})`)}};If.default=zA});var Cb=R(Af=>{"use strict";Object.defineProperty(Af,"__esModule",{value:!0});var li=X(),jA={message:({schemaCode:t})=>(0,li.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,li._)`{multipleOf: ${t}}`},DA={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:jA,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,li._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,li._)`${i} !== parseInt(${i})`;t.fail$data((0,li._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Af.default=DA});var Ab=R(Nf=>{"use strict";Object.defineProperty(Nf,"__esModule",{value:!0});function Ib(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}Nf.default=Ib;Ib.code='require("ajv/dist/runtime/ucs2length").default'});var Nb=R(zf=>{"use strict";Object.defineProperty(zf,"__esModule",{value:!0});var Vn=X(),MA=ie(),LA=Ab(),FA={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Vn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Vn._)`{limit: ${t}}`},UA={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:FA,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Vn.operators.GT:Vn.operators.LT,i=o.opts.unicode===!1?(0,Vn._)`${r}.length`:(0,Vn._)`${(0,MA.useFunc)(t.gen,LA.default)}(${r})`;t.fail$data((0,Vn._)`${i} ${s} ${n}`)}};zf.default=UA});var zb=R(jf=>{"use strict";Object.defineProperty(jf,"__esModule",{value:!0});var ZA=Mt(),HA=ie(),Lo=X(),qA={message:({schemaCode:t})=>(0,Lo.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Lo._)`{pattern: ${t}}`},BA={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:qA,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,Lo._)`new RegExp`:(0,HA.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Lo._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Lo._)`!${l}`)}else{let c=(0,ZA.usePattern)(t,o);t.fail$data((0,Lo._)`!${c}.test(${r})`)}}};jf.default=BA});var jb=R(Df=>{"use strict";Object.defineProperty(Df,"__esModule",{value:!0});var di=X(),VA={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,di.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,di._)`{limit: ${t}}`},WA={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:VA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?di.operators.GT:di.operators.LT;t.fail$data((0,di._)`Object.keys(${r}).length ${o} ${n}`)}};Df.default=WA});var Db=R(Mf=>{"use strict";Object.defineProperty(Mf,"__esModule",{value:!0});var pi=Mt(),mi=X(),GA=ie(),KA={message:({params:{missingProperty:t}})=>(0,mi.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,mi._)`{missingProperty: ${t}}`},JA={keyword:"required",type:"object",schemaType:"array",$data:!0,error:KA,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(f?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,GA.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(mi.nil,d);else for(let f of r)(0,pi.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>m(f,p)),t.ok(p)}else e.if((0,pi.checkMissingProp)(t,r,f)),(0,pi.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,pi.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,pi.propertyInData)(e,o,f,a.ownProperties)),e.if((0,mi.not)(p),()=>{t.error(),e.break()})},mi.nil)}}};Mf.default=JA});var Mb=R(Lf=>{"use strict";Object.defineProperty(Lf,"__esModule",{value:!0});var fi=X(),YA={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,fi.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,fi._)`{limit: ${t}}`},XA={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:YA,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?fi.operators.GT:fi.operators.LT;t.fail$data((0,fi._)`${r}.length ${o} ${n}`)}};Lf.default=XA});var Pc=R(Ff=>{"use strict";Object.defineProperty(Ff,"__esModule",{value:!0});var Lb=lf();Lb.code='require("ajv/dist/runtime/equal").default';Ff.default=Lb});var Fb=R(Zf=>{"use strict";Object.defineProperty(Zf,"__esModule",{value:!0});var Uf=ei(),Je=X(),QA=ie(),eN=Pc(),tN={message:({params:{i:t,j:e}})=>(0,Je.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Je._)`{i: ${t}, j: ${e}}`},rN={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:tN,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,Uf.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Je._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Je._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Je._)`${p} > 1`,()=>(d()?m:f)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function m(p,h){let g=e.name("item"),_=(0,Uf.checkDataTypes)(u,g,a.opts.strictNumbers,Uf.DataType.Wrong),y=e.const("indices",(0,Je._)`{}`);e.for((0,Je._)`;${p}--;`,()=>{e.let(g,(0,Je._)`${r}[${p}]`),e.if(_,(0,Je._)`continue`),u.length>1&&e.if((0,Je._)`typeof ${g} == "string"`,(0,Je._)`${g} += "_"`),e.if((0,Je._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Je._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Je._)`${y}[${g}] = ${p}`)})}function f(p,h){let g=(0,QA.useFunc)(e,eN.default),_=e.name("outer");e.label(_).for((0,Je._)`;${p}--;`,()=>e.for((0,Je._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Je._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};Zf.default=rN});var Ub=R(qf=>{"use strict";Object.defineProperty(qf,"__esModule",{value:!0});var Hf=X(),nN=ie(),oN=Pc(),sN={message:"must be equal to constant",params:({schemaCode:t})=>(0,Hf._)`{allowedValue: ${t}}`},iN={keyword:"const",$data:!0,error:sN,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Hf._)`!${(0,nN.useFunc)(e,oN.default)}(${r}, ${o})`):t.fail((0,Hf._)`${s} !== ${r}`)}};qf.default=iN});var Zb=R(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});var hi=X(),aN=ie(),cN=Pc(),uN={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,hi._)`{allowedValues: ${t}}`},lN={keyword:"enum",schemaType:"array",$data:!0,error:uN,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,aN.useFunc)(e,cN.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,hi.or)(...o.map((p,h)=>m(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,hi._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,hi._)`${u()}(${r}, ${f}[${p}])`:(0,hi._)`${r} === ${h}`}}};Bf.default=lN});var Hb=R(Vf=>{"use strict";Object.defineProperty(Vf,"__esModule",{value:!0});var dN=Ob(),pN=Cb(),mN=Nb(),fN=zb(),hN=jb(),gN=Db(),_N=Mb(),yN=Fb(),xN=Ub(),vN=Zb(),SN=[dN.default,pN.default,mN.default,fN.default,hN.default,gN.default,_N.default,yN.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},xN.default,vN.default];Vf.default=SN});var Gf=R(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});gi.validateAdditionalItems=void 0;var Wn=X(),Wf=ie(),bN={message:({params:{len:t}})=>(0,Wn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Wn._)`{limit: ${t}}`},kN={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:bN,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Wf.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}qb(t,n)}};function qb(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Wn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Wn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Wf.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Wn._)`${a} <= ${e.length}`);r.if((0,Wn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Wf.Type.Num},u),i.allErrors||r.if((0,Wn.not)(u),()=>r.break())})}}gi.validateAdditionalItems=qb;gi.default=kN});var Kf=R(_i=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});_i.validateTuple=void 0;var Bb=X(),Rc=ie(),wN=Mt(),$N={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Vb(t,"additionalItems",e);r.items=!0,!(0,Rc.alwaysValidSchema)(r,e)&&t.ok((0,wN.validateArray)(t))}};function Vb(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=Rc.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Bb._)`${s}.length`);r.forEach((d,m)=>{(0,Rc.alwaysValidSchema)(a,d)||(n.if((0,Bb._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:f}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(m.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Rc.checkStrictMode)(a,g,m.strictTuples)}}}_i.validateTuple=Vb;_i.default=$N});var Wb=R(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});var EN=Kf(),TN={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,EN.validateTuple)(t,"items")};Jf.default=TN});var Kb=R(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var Gb=X(),PN=ie(),RN=Mt(),ON=Gf(),CN={message:({params:{len:t}})=>(0,Gb.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Gb._)`{limit: ${t}}`},IN={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:CN,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,PN.alwaysValidSchema)(n,e)&&(o?(0,ON.validateAdditionalItems)(t,o):t.ok((0,RN.validateArray)(t)))}};Yf.default=IN});var Jb=R(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var Ft=X(),Oc=ie(),AN={message:({params:{min:t,max:e}})=>e===void 0?(0,Ft.str)`must contain at least ${t} valid item(s)`:(0,Ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Ft._)`{minContains: ${t}}`:(0,Ft._)`{minContains: ${t}, maxContains: ${e}}`},NN={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:AN,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,Ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Oc.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Oc.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Oc.alwaysValidSchema)(s,r)){let h=(0,Ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,Ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,Ft._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>p(g)))}function f(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Oc.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,Ft._)`${h}++`),a===void 0?e.if((0,Ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,Ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,Ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Xf.default=NN});var Qb=R(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.validateSchemaDeps=mr.validatePropertyDeps=mr.error=void 0;var Qf=X(),zN=ie(),yi=Mt();mr.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Qf.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Qf._)`{property: ${t},
55
55
  missingProperty: ${n},
56
56
  depsCount: ${e},
57
- deps: ${r}}`};var NN={keyword:"dependencies",type:"object",schemaType:"object",error:pr.error,code(t){let[e,r]=zN(t);Kb(t,e),Jb(t,r)}};function zN({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 Kb(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,gi.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,gi.checkReportMissingProp)(t,u)}):(r.if((0,Yf._)`${c} && (${(0,gi.checkMissingProp)(t,a,s)})`),(0,gi.reportMissingProp)(t,s),r.else())}}pr.validatePropertyDeps=Kb;function Jb(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,AN.alwaysValidSchema)(s,e[a])||(r.if((0,gi.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))}pr.validateSchemaDeps=Jb;pr.default=NN});var Qb=R(Xf=>{"use strict";Object.defineProperty(Xf,"__esModule",{value:!0});var Xb=X(),jN=ie(),DN={message:"property name must be valid",params:({params:t})=>(0,Xb._)`{propertyName: ${t.propertyName}}`},MN={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:DN,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,jN.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,Xb.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Xf.default=MN});var eh=R(Qf=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});var Rc=Dt(),Xt=X(),LN=$r(),Oc=ie(),FN={message:"must NOT have additional properties",params:({params:t})=>(0,Xt._)`{additionalProperty: ${t.additionalProperty}}`},UN={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:FN,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,Oc.alwaysValidSchema)(i,r))return;let u=(0,Rc.allSchemaProperties)(n.properties),l=(0,Rc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Xt._)`${s} === ${LN.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(m(g),()=>p(g))})}function m(g){let _;if(u.length>8){let y=(0,Oc.schemaRefOrVal)(i,n.properties,"properties");_=(0,Rc.isOwnProperty)(e,y,g)}else u.length?_=(0,Xt.or)(...u.map(y=>(0,Xt._)`${g} === ${y}`)):_=Xt.nil;return l.length&&(_=(0,Xt.or)(_,...l.map(y=>(0,Xt._)`${(0,Rc.usePattern)(t,y)}.test(${g})`))),(0,Xt.not)(_)}function f(g){e.code((0,Xt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Oc.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,Xt.not)(_),()=>{t.reset(),f(g)})):(h(g,_),a||e.if((0,Xt.not)(_),()=>e.break()))}}function h(g,_,y){let x={keyword:"additionalProperties",dataProp:g,dataPropType:Oc.Type.Str};y===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,_)}}};Qf.default=UN});var r0=R(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});var ZN=ri(),e0=Dt(),th=ie(),t0=eh(),HN={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&&t0.default.code(new ZN.KeywordCxt(s,t0.default,"additionalProperties"));let i=(0,e0.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=th.mergeEvaluated.props(e,(0,th.toHash)(i),s.props));let a=i.filter(d=>!(0,th.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,e0.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)}}};rh.default=HN});var i0=R(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});var n0=Dt(),Cc=X(),o0=ie(),s0=ie(),qN={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,n0.allSchemaProperties)(r),c=a.filter(h=>(0,o0.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Cc.Name)&&(s.props=(0,s0.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let h of a)u&&f(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,o0.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Cc._)`${(0,n0.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:s0.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Cc._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Cc.not)(l),()=>e.break())})})}}};nh.default=qN});var a0=R(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});var BN=ie(),VN={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,BN.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"}};oh.default=VN});var c0=R(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});var WN=Dt(),GN={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:WN.validateUnion,error:{message:"must match a schema in anyOf"}};sh.default=GN});var u0=R(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});var Ic=X(),KN=ie(),JN={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Ic._)`{passingSchemas: ${t.passing}}`},YN={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:JN,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let m;(0,KN.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Ic._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Ic._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,Ic.Name)})})}}};ih.default=YN});var l0=R(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});var XN=ie(),QN={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,XN.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};ah.default=QN});var m0=R(ch=>{"use strict";Object.defineProperty(ch,"__esModule",{value:!0});var Ac=X(),p0=ie(),ez={message:({params:t})=>(0,Ac.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Ac._)`{failingKeyword: ${t.ifClause}}`},tz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:ez,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,p0.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=d0(n,"then"),s=d0(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,Ac.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,Ac._)`${l}`):t.setParams({ifClause:l})}}}};function d0(t,e){let r=t.schema[e];return r!==void 0&&!(0,p0.alwaysValidSchema)(t,r)}ch.default=tz});var f0=R(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});var rz=ie(),nz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,rz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};uh.default=nz});var h0=R(lh=>{"use strict";Object.defineProperty(lh,"__esModule",{value:!0});var oz=Vf(),sz=Bb(),iz=Wf(),az=Wb(),cz=Gb(),uz=Yb(),lz=Qb(),dz=eh(),pz=r0(),mz=i0(),fz=a0(),hz=c0(),gz=u0(),_z=l0(),yz=m0(),xz=f0();function vz(t=!1){let e=[fz.default,hz.default,gz.default,_z.default,yz.default,xz.default,lz.default,dz.default,uz.default,pz.default,mz.default];return t?e.push(sz.default,az.default):e.push(oz.default,iz.default),e.push(cz.default),e}lh.default=vz});var g0=R(dh=>{"use strict";Object.defineProperty(dh,"__esModule",{value:!0});var Ae=X(),Sz={message:({schemaCode:t})=>(0,Ae.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ae._)`{format: ${t}}`},bz={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Sz,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?m():f();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Ae._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,Ae._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Ae._)`${h}.type || "string"`).assign(_,(0,Ae._)`${h}.validate`),()=>r.assign(g,(0,Ae._)`"string"`).assign(_,h)),t.fail$data((0,Ae.or)(y(),x()));function y(){return c.strictSchema===!1?Ae.nil:(0,Ae._)`${i} && !${_}`}function x(){let k=l.$async?(0,Ae._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Ae._)`${_}(${n})`,E=(0,Ae._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return(0,Ae._)`${_} && ${_} !== true && ${g} === ${e} && !${E}`}}function f(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,_]=x(p);h===e&&t.pass(k());function y(){if(c.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(E){let B=E instanceof RegExp?(0,Ae.regexpCode)(E):c.code.formats?(0,Ae._)`${c.code.formats}${(0,Ae.getProperty)(s)}`:void 0,H=r.scopeValue("formats",{key:s,ref:E,code:B});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,Ae._)`${H}.validate`]:["string",E,H]}function k(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ae._)`await ${_}(${n})`}return typeof g=="function"?(0,Ae._)`${_}(${n})`:(0,Ae._)`${_}.test(${n})`}}}};dh.default=bz});var _0=R(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});var kz=g0(),wz=[kz.default];ph.default=wz});var y0=R(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.contentVocabulary=Mo.metadataVocabulary=void 0;Mo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Mo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var v0=R(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});var $z=Tb(),Ez=Ub(),Tz=h0(),Pz=_0(),x0=y0(),Rz=[$z.default,Ez.default,(0,Tz.default)(),Pz.default,x0.metadataVocabulary,x0.contentVocabulary];mh.default=Rz});var b0=R(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});Nc.DiscrError=void 0;var S0;(function(t){t.Tag="tag",t.Mapping="mapping"})(S0||(Nc.DiscrError=S0={}))});var w0=R(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});var Lo=X(),fh=b0(),k0=gc(),Oz=ni(),Cz=ie(),Iz={message:({params:{discrError:t,tagName:e}})=>t===fh.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Lo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},Az={keyword:"discriminator",type:"object",schemaType:"object",error:Iz,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,Lo._)`${r}${(0,Lo.getProperty)(a)}`);e.if((0,Lo._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:fh.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=m();e.if(!1);for(let p in f)e.elseIf((0,Lo._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:fh.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},p);return t.mergeEvaluated(h,Lo.Name),p}function m(){var f;let p={},h=_(o),g=!0;for(let k=0;k<i.length;k++){let E=i[k];if(E?.$ref&&!(0,Cz.schemaHasRulesButRef)(E,s.self.RULES)){let H=E.$ref;if(E=k0.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,H),E instanceof k0.SchemaEnv&&(E=E.schema),E===void 0)throw new Oz.default(s.opts.uriResolver,s.baseId,H)}let B=(f=E?.properties)===null||f===void 0?void 0:f[a];if(typeof B!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(E)),y(B,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:k}){return Array.isArray(k)&&k.includes(a)}function y(k,E){if(k.const)x(k.const,E);else if(k.enum)for(let B of k.enum)x(B,E);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(k,E){if(typeof k!="string"||k in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[k]=E}}}};hh.default=Az});var $0=R((K4,Nz)=>{Nz.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 _h=R((Se,gh)=>{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});Se.MissingRefError=Se.ValidationError=Se.CodeGen=Se.Name=Se.nil=Se.stringify=Se.str=Se._=Se.KeywordCxt=Se.Ajv=void 0;var zz=Sb(),jz=v0(),Dz=w0(),E0=$0(),Mz=["/properties"],zc="http://json-schema.org/draft-07/schema",Fo=class extends zz.default{_addVocabularies(){super._addVocabularies(),jz.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(Dz.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(E0,Mz):E0;this.addMetaSchema(e,zc,!1),this.refs["http://json-schema.org/schema"]=zc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(zc)?zc:void 0)}};Se.Ajv=Fo;gh.exports=Se=Fo;gh.exports.Ajv=Fo;Object.defineProperty(Se,"__esModule",{value:!0});Se.default=Fo;var Lz=ri();Object.defineProperty(Se,"KeywordCxt",{enumerable:!0,get:function(){return Lz.KeywordCxt}});var Uo=X();Object.defineProperty(Se,"_",{enumerable:!0,get:function(){return Uo._}});Object.defineProperty(Se,"str",{enumerable:!0,get:function(){return Uo.str}});Object.defineProperty(Se,"stringify",{enumerable:!0,get:function(){return Uo.stringify}});Object.defineProperty(Se,"nil",{enumerable:!0,get:function(){return Uo.nil}});Object.defineProperty(Se,"Name",{enumerable:!0,get:function(){return Uo.Name}});Object.defineProperty(Se,"CodeGen",{enumerable:!0,get:function(){return Uo.CodeGen}});var Fz=fc();Object.defineProperty(Se,"ValidationError",{enumerable:!0,get:function(){return Fz.default}});var Uz=ni();Object.defineProperty(Se,"MissingRefError",{enumerable:!0,get:function(){return Uz.default}})});var N0=R(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.formatNames=fr.fastFormats=fr.fullFormats=void 0;function mr(t,e){return{validate:t,compare:e}}fr.fullFormats={date:mr(O0,Sh),time:mr(xh(!0),bh),"date-time":mr(T0(!0),I0),"iso-time":mr(xh(),C0),"iso-date-time":mr(T0(),A0),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Wz,"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:ej,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:Gz,int32:{type:"number",validate:Yz},int64:{type:"number",validate:Xz},float:{type:"number",validate:R0},double:{type:"number",validate:R0},password:!0,binary:!0};fr.fastFormats={...fr.fullFormats,date:mr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Sh),time:mr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,bh),"date-time":mr(/^\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,I0),"iso-time":mr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,C0),"iso-date-time":mr(/^\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,A0),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};fr.formatNames=Object.keys(fr.fullFormats);function Zz(t){return t%4===0&&(t%100!==0||t%400===0)}var Hz=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,qz=[0,31,28,31,30,31,30,31,31,30,31,30,31];function O0(t){let e=Hz.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&&Zz(r)?29:qz[n])}function Sh(t,e){if(t&&e)return t>e?1:t<e?-1:0}var yh=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function xh(t){return function(r){let n=yh.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function bh(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 C0(t,e){if(!(t&&e))return;let r=yh.exec(t),n=yh.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 vh=/t|\s/i;function T0(t){let e=xh(t);return function(n){let o=n.split(vh);return o.length===2&&O0(o[0])&&e(o[1])}}function I0(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function A0(t,e){if(!(t&&e))return;let[r,n]=t.split(vh),[o,s]=e.split(vh),i=Sh(r,o);if(i!==void 0)return i||bh(n,s)}var Bz=/\/|:/,Vz=/^(?:[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 Wz(t){return Bz.test(t)&&Vz.test(t)}var P0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Gz(t){return P0.lastIndex=0,P0.test(t)}var Kz=-(2**31),Jz=2**31-1;function Yz(t){return Number.isInteger(t)&&t<=Jz&&t>=Kz}function Xz(t){return Number.isInteger(t)}function R0(){return!0}var Qz=/[^\\]\\Z/;function ej(t){if(Qz.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var z0=R(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});Zo.formatLimitDefinition=void 0;var tj=_h(),Qt=X(),en=Qt.operators,jc={formatMaximum:{okStr:"<=",ok:en.LTE,fail:en.GT},formatMinimum:{okStr:">=",ok:en.GTE,fail:en.LT},formatExclusiveMaximum:{okStr:"<",ok:en.LT,fail:en.GTE},formatExclusiveMinimum:{okStr:">",ok:en.GT,fail:en.LTE}},rj={message:({keyword:t,schemaCode:e})=>(0,Qt.str)`should be ${jc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Qt._)`{comparison: ${jc[t].okStr}, limit: ${e}}`};Zo.formatLimitDefinition={keyword:Object.keys(jc),type:"string",schemaType:"string",$data:!0,error:rj,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 tj.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,Qt._)`${m}[${c.schemaCode}]`);t.fail$data((0,Qt.or)((0,Qt._)`typeof ${f} != "object"`,(0,Qt._)`${f} instanceof RegExp`,(0,Qt._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let m=c.schema,f=a.formats[m];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let p=e.scopeValue("formats",{key:m,ref:f,code:i.code.formats?(0,Qt._)`${i.code.formats}${(0,Qt.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,Qt._)`${m}.compare(${r}, ${n}) ${jc[o].fail} 0`}},dependencies:["format"]};var nj=t=>(t.addKeyword(Zo.formatLimitDefinition),t);Zo.default=nj});var L0=R((_i,M0)=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});var Ho=N0(),oj=z0(),kh=X(),j0=new kh.Name("fullFormats"),sj=new kh.Name("fastFormats"),wh=(t,e={keywords:!0})=>{if(Array.isArray(e))return D0(t,e,Ho.fullFormats,j0),t;let[r,n]=e.mode==="fast"?[Ho.fastFormats,sj]:[Ho.fullFormats,j0],o=e.formats||Ho.formatNames;return D0(t,o,r,n),e.keywords&&(0,oj.default)(t),t};wh.get=(t,e="full")=>{let n=(e==="fast"?Ho.fastFormats:Ho.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function D0(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,kh._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}M0.exports=_i=wh;Object.defineProperty(_i,"__esModule",{value:!0});_i.default=wh});function ij(){let t=new F0.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,U0.default)(t),t}var F0,U0,Dc,Z0=v(()=>{F0=ts(_h(),1),U0=ts(L0(),1);Dc=class{constructor(e){this._ajv=e??ij()}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 Mc,H0=v(()=>{zn();Mc=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(m=>m.type==="tool_use").map(m=>m.id)),d=new Set(s.filter(m=>m.type==="tool_result").map(m=>m.toolUseId));if(l.size!==d.size||![...l].every(m=>d.has(m)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Us,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Eo,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}}});function q0(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 B0(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 V0=v(()=>{});var Lc,W0=v(()=>{eS();zn();Z0();Rs();H0();V0();Lc=class extends tc{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Fs.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 Dc,this.setRequestHandler(Mp,n=>this._oninitialize(n)),this.setNotificationHandler(Lp,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Vp,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Fs.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Mc(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Qv(this._capabilities,e)}setRequestHandler(e,r){let o=Hr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(It(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=Zr($o,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new N(D.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=Zr(vo,m);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new N(D.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let f=Zr(Ha,m);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new N(D.InvalidParams,`Invalid tools/call result: ${p}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){B0(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&q0(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:Qx.includes(r)?r:Ap,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"},Oa)}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},Wp,r):this.request({method:"sampling/createMessage",params:e},Us,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},Eo,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},Eo,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(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof N?i:new N(D.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Gp,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 $h(t){return!!t&&typeof t=="object"&&K0 in t}function J0(t){return t[K0]?.complete}var K0,G0,Y0=v(()=>{K0=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(G0||(G0={}))});var X0=v(()=>{});function cj(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"),!aj.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 uj(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 Eh(t){let e=cj(t);return uj(t,e.warnings),e.isValid}var aj,Q0=v(()=>{aj=/^[A-Za-z0-9._-]{1,128}$/});var Fc,ek=v(()=>{Fc=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 Th=v(()=>{ea();ea()});function nk(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function ok(t){return"_def"in t||"_zod"in t||nk(t)}function Ph(t){return typeof t!="object"||t===null||ok(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(nk)}function tk(t){if(t){if(Ph(t))return Nn(t);if(!ok(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function dj(t){let e=Hr(t);return e?Object.entries(e).map(([r,n])=>{let o=wx(n),s=$x(n);return{name:r,description:o,required:!s}}):[]}function tn(t){let r=Hr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=wa(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function rk(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Uc,lj,yi,sk=v(()=>{W0();Rs();Cm();zn();Y0();X0();Q0();ek();Th();Uc=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 Lc(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Fc(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(tn(Za)),this.server.assertCanSetRequestHandler(tn($o)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(Za,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=yo(r.inputSchema);return o?Pm(o,{strictUnions:!0,pipeStrategy:"input"}):lj})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=yo(r.outputSchema);o&&(n.outputSchema=Pm(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler($o,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new N(D.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new N(D.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new N(D.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof N&&n.code===D.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=yo(e.inputSchema)??e.inputSchema,i=await ba(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ka(a);throw new N(D.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new N(D.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=yo(e.outputSchema),s=await ba(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ka(i);throw new N(D.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new N(D.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(tn(qa)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(qa,async e=>{switch(e.params.ref.type){case"ref/prompt":return hv(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return gv(e),this.handleResourceCompletion(e,e.params.ref);default:throw new N(D.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new N(D.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return yi;let s=Hr(n.argsSchema)?.[e.params.argument.name];if(!$h(s))return yi;let i=J0(s);if(!i)return yi;let a=await i(e.params.argument.value,e.params.context);return rk(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 yi;throw new N(D.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return yi;let s=await o(e.params.argument.value,e.params.context);return rk(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(tn(bo)),this.server.assertCanSetRequestHandler(tn(ko)),this.server.assertCanSetRequestHandler(tn(Fa)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(bo,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(ko,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Fa,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new N(D.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new N(D.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(tn(wo)),this.server.assertCanSetRequestHandler(tn(Ua)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(wo,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?dj(r.argsSchema):void 0}))})),this.server.setRequestHandler(Ua,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new N(D.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=yo(n.argsSchema),s=await ba(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ka(c);throw new N(D.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Nn(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=Nn(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 ut?c._def?.innerType:c;return $h(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Eh(e);let l={title:r,description:n,inputSchema:tk(o),outputSchema:tk(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"&&Eh(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=Nn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Nn(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(Ph(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Ph(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}},lj={type:"object",properties:{}};yi={completion:{values:[],hasMore:!1}}});function pj(t){return av.parse(JSON.parse(t))}function ik(t){return JSON.stringify(t)+`
58
- `}var Zc,ak=v(()=>{zn();Zc=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
59
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),pj(r)}clear(){this._buffer=void 0}}});import ck from"node:process";var Hc,uk=v(()=>{ak();Hc=class{constructor(e=ck.stdin,r=ck.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Zc,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=ik(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var hk={};Me(hk,{PolyglotExecutor:()=>qo});import{spawn as mj,execSync as fj,execFileSync as mk}from"node:child_process";import{mkdtempSync as hj,writeFileSync as lk,rmSync as dk,existsSync as pk}from"node:fs";import{join as qc,resolve as fk}from"node:path";import{tmpdir as gj}from"node:os";function Rh(t){if(Ft&&t.pid)try{fj(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var Ft,_j,qo,Oh=v(()=>{"use strict";Mi();Ft=process.platform==="win32",_j=(()=>{if(Ft)return process.env.TEMP??process.env.TMP??gj();try{let t=mk(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:fk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();qo=class{#e;#t;#n;#o=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??Yn()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Ft?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=hj(qc(_j,".ctx-mode-"));try{let a=this.#i(i,n,r),c=Rg(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#s(c,u,i,o,s);if(!l.backgrounded)try{dk(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{dk(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=fk(this.#t,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
57
+ deps: ${r}}`};var jN={keyword:"dependencies",type:"object",schemaType:"object",error:mr.error,code(t){let[e,r]=DN(t);Yb(t,e),Xb(t,r)}};function DN({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 Yb(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,yi.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,yi.checkReportMissingProp)(t,u)}):(r.if((0,Qf._)`${c} && (${(0,yi.checkMissingProp)(t,a,s)})`),(0,yi.reportMissingProp)(t,s),r.else())}}mr.validatePropertyDeps=Yb;function Xb(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,zN.alwaysValidSchema)(s,e[a])||(r.if((0,yi.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}mr.validateSchemaDeps=Xb;mr.default=jN});var t0=R(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});var e0=X(),MN=ie(),LN={message:"property name must be valid",params:({params:t})=>(0,e0._)`{propertyName: ${t.propertyName}}`},FN={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:LN,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,MN.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,e0.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};eh.default=FN});var rh=R(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});var Cc=Mt(),Qt=X(),UN=Tr(),Ic=ie(),ZN={message:"must NOT have additional properties",params:({params:t})=>(0,Qt._)`{additionalProperty: ${t.additionalProperty}}`},HN={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:ZN,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,Ic.alwaysValidSchema)(i,r))return;let u=(0,Cc.allSchemaProperties)(n.properties),l=(0,Cc.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Qt._)`${s} === ${UN.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(m(g),()=>p(g))})}function m(g){let _;if(u.length>8){let y=(0,Ic.schemaRefOrVal)(i,n.properties,"properties");_=(0,Cc.isOwnProperty)(e,y,g)}else u.length?_=(0,Qt.or)(...u.map(y=>(0,Qt._)`${g} === ${y}`)):_=Qt.nil;return l.length&&(_=(0,Qt.or)(_,...l.map(y=>(0,Qt._)`${(0,Cc.usePattern)(t,y)}.test(${g})`))),(0,Qt.not)(_)}function f(g){e.code((0,Qt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Ic.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,Qt.not)(_),()=>{t.reset(),f(g)})):(h(g,_),a||e.if((0,Qt.not)(_),()=>e.break()))}}function h(g,_,y){let x={keyword:"additionalProperties",dataProp:g,dataPropType:Ic.Type.Str};y===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,_)}}};th.default=HN});var o0=R(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});var qN=oi(),r0=Mt(),nh=ie(),n0=rh(),BN={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&&n0.default.code(new qN.KeywordCxt(s,n0.default,"additionalProperties"));let i=(0,r0.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=nh.mergeEvaluated.props(e,(0,nh.toHash)(i),s.props));let a=i.filter(d=>!(0,nh.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,r0.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)}}};oh.default=BN});var c0=R(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});var s0=Mt(),Ac=X(),i0=ie(),a0=ie(),VN={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,s0.allSchemaProperties)(r),c=a.filter(h=>(0,i0.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Ac.Name)&&(s.props=(0,a0.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let h of a)u&&f(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,i0.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Ac._)`${(0,s0.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:a0.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Ac._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Ac.not)(l),()=>e.break())})})}}};sh.default=VN});var u0=R(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});var WN=ie(),GN={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,WN.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"}};ih.default=GN});var l0=R(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});var KN=Mt(),JN={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:KN.validateUnion,error:{message:"must match a schema in anyOf"}};ah.default=JN});var d0=R(ch=>{"use strict";Object.defineProperty(ch,"__esModule",{value:!0});var Nc=X(),YN=ie(),XN={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Nc._)`{passingSchemas: ${t.passing}}`},QN={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:XN,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let m;(0,YN.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Nc._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Nc._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,Nc.Name)})})}}};ch.default=QN});var p0=R(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});var ez=ie(),tz={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,ez.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};uh.default=tz});var h0=R(lh=>{"use strict";Object.defineProperty(lh,"__esModule",{value:!0});var zc=X(),f0=ie(),rz={message:({params:t})=>(0,zc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,zc._)`{failingKeyword: ${t.ifClause}}`},nz={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:rz,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,f0.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=m0(n,"then"),s=m0(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,zc.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,zc._)`${l}`):t.setParams({ifClause:l})}}}};function m0(t,e){let r=t.schema[e];return r!==void 0&&!(0,f0.alwaysValidSchema)(t,r)}lh.default=nz});var g0=R(dh=>{"use strict";Object.defineProperty(dh,"__esModule",{value:!0});var oz=ie(),sz={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,oz.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};dh.default=sz});var _0=R(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});var iz=Gf(),az=Wb(),cz=Kf(),uz=Kb(),lz=Jb(),dz=Qb(),pz=t0(),mz=rh(),fz=o0(),hz=c0(),gz=u0(),_z=l0(),yz=d0(),xz=p0(),vz=h0(),Sz=g0();function bz(t=!1){let e=[gz.default,_z.default,yz.default,xz.default,vz.default,Sz.default,pz.default,mz.default,dz.default,fz.default,hz.default];return t?e.push(az.default,uz.default):e.push(iz.default,cz.default),e.push(lz.default),e}ph.default=bz});var y0=R(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});var Ne=X(),kz={message:({schemaCode:t})=>(0,Ne.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ne._)`{format: ${t}}`},wz={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:kz,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?m():f();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Ne._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,Ne._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Ne._)`${h}.type || "string"`).assign(_,(0,Ne._)`${h}.validate`),()=>r.assign(g,(0,Ne._)`"string"`).assign(_,h)),t.fail$data((0,Ne.or)(y(),x()));function y(){return c.strictSchema===!1?Ne.nil:(0,Ne._)`${i} && !${_}`}function x(){let k=l.$async?(0,Ne._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Ne._)`${_}(${n})`,E=(0,Ne._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return(0,Ne._)`${_} && ${_} !== true && ${g} === ${e} && !${E}`}}function f(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,_]=x(p);h===e&&t.pass(k());function y(){if(c.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function x(E){let B=E instanceof RegExp?(0,Ne.regexpCode)(E):c.code.formats?(0,Ne._)`${c.code.formats}${(0,Ne.getProperty)(s)}`:void 0,H=r.scopeValue("formats",{key:s,ref:E,code:B});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,Ne._)`${H}.validate`]:["string",E,H]}function k(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ne._)`await ${_}(${n})`}return typeof g=="function"?(0,Ne._)`${_}(${n})`:(0,Ne._)`${_}.test(${n})`}}}};mh.default=wz});var x0=R(fh=>{"use strict";Object.defineProperty(fh,"__esModule",{value:!0});var $z=y0(),Ez=[$z.default];fh.default=Ez});var v0=R(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.contentVocabulary=Fo.metadataVocabulary=void 0;Fo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Fo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var b0=R(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});var Tz=Rb(),Pz=Hb(),Rz=_0(),Oz=x0(),S0=v0(),Cz=[Tz.default,Pz.default,(0,Rz.default)(),Oz.default,S0.metadataVocabulary,S0.contentVocabulary];hh.default=Cz});var w0=R(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});jc.DiscrError=void 0;var k0;(function(t){t.Tag="tag",t.Mapping="mapping"})(k0||(jc.DiscrError=k0={}))});var E0=R(_h=>{"use strict";Object.defineProperty(_h,"__esModule",{value:!0});var Uo=X(),gh=w0(),$0=yc(),Iz=si(),Az=ie(),Nz={message:({params:{discrError:t,tagName:e}})=>t===gh.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Uo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},zz={keyword:"discriminator",type:"object",schemaType:"object",error:Nz,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,Uo._)`${r}${(0,Uo.getProperty)(a)}`);e.if((0,Uo._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:gh.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=m();e.if(!1);for(let p in f)e.elseIf((0,Uo._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:gh.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},p);return t.mergeEvaluated(h,Uo.Name),p}function m(){var f;let p={},h=_(o),g=!0;for(let k=0;k<i.length;k++){let E=i[k];if(E?.$ref&&!(0,Az.schemaHasRulesButRef)(E,s.self.RULES)){let H=E.$ref;if(E=$0.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,H),E instanceof $0.SchemaEnv&&(E=E.schema),E===void 0)throw new Iz.default(s.opts.uriResolver,s.baseId,H)}let B=(f=E?.properties)===null||f===void 0?void 0:f[a];if(typeof B!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(E)),y(B,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:k}){return Array.isArray(k)&&k.includes(a)}function y(k,E){if(k.const)x(k.const,E);else if(k.enum)for(let B of k.enum)x(B,E);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function x(k,E){if(typeof k!="string"||k in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[k]=E}}}};_h.default=zz});var T0=R((s9,jz)=>{jz.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 xh=R((be,yh)=>{"use strict";Object.defineProperty(be,"__esModule",{value:!0});be.MissingRefError=be.ValidationError=be.CodeGen=be.Name=be.nil=be.stringify=be.str=be._=be.KeywordCxt=be.Ajv=void 0;var Dz=kb(),Mz=b0(),Lz=E0(),P0=T0(),Fz=["/properties"],Dc="http://json-schema.org/draft-07/schema",Zo=class extends Dz.default{_addVocabularies(){super._addVocabularies(),Mz.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(Lz.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(P0,Fz):P0;this.addMetaSchema(e,Dc,!1),this.refs["http://json-schema.org/schema"]=Dc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Dc)?Dc:void 0)}};be.Ajv=Zo;yh.exports=be=Zo;yh.exports.Ajv=Zo;Object.defineProperty(be,"__esModule",{value:!0});be.default=Zo;var Uz=oi();Object.defineProperty(be,"KeywordCxt",{enumerable:!0,get:function(){return Uz.KeywordCxt}});var Ho=X();Object.defineProperty(be,"_",{enumerable:!0,get:function(){return Ho._}});Object.defineProperty(be,"str",{enumerable:!0,get:function(){return Ho.str}});Object.defineProperty(be,"stringify",{enumerable:!0,get:function(){return Ho.stringify}});Object.defineProperty(be,"nil",{enumerable:!0,get:function(){return Ho.nil}});Object.defineProperty(be,"Name",{enumerable:!0,get:function(){return Ho.Name}});Object.defineProperty(be,"CodeGen",{enumerable:!0,get:function(){return Ho.CodeGen}});var Zz=gc();Object.defineProperty(be,"ValidationError",{enumerable:!0,get:function(){return Zz.default}});var Hz=si();Object.defineProperty(be,"MissingRefError",{enumerable:!0,get:function(){return Hz.default}})});var j0=R(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.formatNames=hr.fastFormats=hr.fullFormats=void 0;function fr(t,e){return{validate:t,compare:e}}hr.fullFormats={date:fr(I0,kh),time:fr(Sh(!0),wh),"date-time":fr(R0(!0),N0),"iso-time":fr(Sh(),A0),"iso-date-time":fr(R0(),z0),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Kz,"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:rj,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:Jz,int32:{type:"number",validate:Qz},int64:{type:"number",validate:ej},float:{type:"number",validate:C0},double:{type:"number",validate:C0},password:!0,binary:!0};hr.fastFormats={...hr.fullFormats,date:fr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,kh),time:fr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,wh),"date-time":fr(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,N0),"iso-time":fr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,A0),"iso-date-time":fr(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,z0),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};hr.formatNames=Object.keys(hr.fullFormats);function qz(t){return t%4===0&&(t%100!==0||t%400===0)}var Bz=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Vz=[0,31,28,31,30,31,30,31,31,30,31,30,31];function I0(t){let e=Bz.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&&qz(r)?29:Vz[n])}function kh(t,e){if(t&&e)return t>e?1:t<e?-1:0}var vh=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Sh(t){return function(r){let n=vh.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function wh(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 A0(t,e){if(!(t&&e))return;let r=vh.exec(t),n=vh.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 bh=/t|\s/i;function R0(t){let e=Sh(t);return function(n){let o=n.split(bh);return o.length===2&&I0(o[0])&&e(o[1])}}function N0(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function z0(t,e){if(!(t&&e))return;let[r,n]=t.split(bh),[o,s]=e.split(bh),i=kh(r,o);if(i!==void 0)return i||wh(n,s)}var Wz=/\/|:/,Gz=/^(?:[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 Kz(t){return Wz.test(t)&&Gz.test(t)}var O0=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Jz(t){return O0.lastIndex=0,O0.test(t)}var Yz=-(2**31),Xz=2**31-1;function Qz(t){return Number.isInteger(t)&&t<=Xz&&t>=Yz}function ej(t){return Number.isInteger(t)}function C0(){return!0}var tj=/[^\\]\\Z/;function rj(t){if(tj.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var D0=R(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.formatLimitDefinition=void 0;var nj=xh(),er=X(),rn=er.operators,Mc={formatMaximum:{okStr:"<=",ok:rn.LTE,fail:rn.GT},formatMinimum:{okStr:">=",ok:rn.GTE,fail:rn.LT},formatExclusiveMaximum:{okStr:"<",ok:rn.LT,fail:rn.GTE},formatExclusiveMinimum:{okStr:">",ok:rn.GT,fail:rn.LTE}},oj={message:({keyword:t,schemaCode:e})=>(0,er.str)`should be ${Mc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,er._)`{comparison: ${Mc[t].okStr}, limit: ${e}}`};qo.formatLimitDefinition={keyword:Object.keys(Mc),type:"string",schemaType:"string",$data:!0,error:oj,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 nj.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,er._)`${m}[${c.schemaCode}]`);t.fail$data((0,er.or)((0,er._)`typeof ${f} != "object"`,(0,er._)`${f} instanceof RegExp`,(0,er._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let m=c.schema,f=a.formats[m];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let p=e.scopeValue("formats",{key:m,ref:f,code:i.code.formats?(0,er._)`${i.code.formats}${(0,er.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,er._)`${m}.compare(${r}, ${n}) ${Mc[o].fail} 0`}},dependencies:["format"]};var sj=t=>(t.addKeyword(qo.formatLimitDefinition),t);qo.default=sj});var U0=R((xi,F0)=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});var Bo=j0(),ij=D0(),$h=X(),M0=new $h.Name("fullFormats"),aj=new $h.Name("fastFormats"),Eh=(t,e={keywords:!0})=>{if(Array.isArray(e))return L0(t,e,Bo.fullFormats,M0),t;let[r,n]=e.mode==="fast"?[Bo.fastFormats,aj]:[Bo.fullFormats,M0],o=e.formats||Bo.formatNames;return L0(t,o,r,n),e.keywords&&(0,ij.default)(t),t};Eh.get=(t,e="full")=>{let n=(e==="fast"?Bo.fastFormats:Bo.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function L0(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,$h._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}F0.exports=xi=Eh;Object.defineProperty(xi,"__esModule",{value:!0});xi.default=Eh});function cj(){let t=new Z0.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,H0.default)(t),t}var Z0,H0,Lc,q0=v(()=>{Z0=ns(xh(),1),H0=ns(U0(),1);Lc=class{constructor(e){this._ajv=e??cj()}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 Fc,B0=v(()=>{Dn();Fc=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(m=>m.type==="tool_use").map(m=>m.id)),d=new Set(s.filter(m=>m.type==="tool_result").map(m=>m.toolUseId));if(l.size!==d.size||![...l].every(m=>d.has(m)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Hs,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Po,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}}});function V0(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 W0(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 G0=v(()=>{});var Uc,K0=v(()=>{rS();Dn();q0();Cs();B0();G0();Uc=class extends nc{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Zs.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 Lc,this.setRequestHandler(Fp,n=>this._oninitialize(n)),this.setNotificationHandler(Up,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Gp,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Zs.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Fc(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=tS(this._capabilities,e)}setRequestHandler(e,r){let o=Br(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(At(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=qr(To,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new N(D.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=qr(bo,m);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new N(D.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let f=qr(Ba,m);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new N(D.InvalidParams,`Invalid tools/call result: ${p}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){W0(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&V0(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:tv.includes(r)?r:zp,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"},Ia)}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},Kp,r):this.request({method:"sampling/createMessage",params:e},Hs,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},Po,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},Po,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(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof N?i:new N(D.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Jp,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 Th(t){return!!t&&typeof t=="object"&&Y0 in t}function X0(t){return t[Y0]?.complete}var Y0,J0,Q0=v(()=>{Y0=Symbol.for("mcp.completable");(function(t){t.Completable="McpCompletable"})(J0||(J0={}))});var ek=v(()=>{});function lj(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"),!uj.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 dj(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 Ph(t){let e=lj(t);return dj(t,e.warnings),e.isValid}var uj,tk=v(()=>{uj=/^[A-Za-z0-9._-]{1,128}$/});var Zc,rk=v(()=>{Zc=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 Rh=v(()=>{ra();ra()});function sk(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function ik(t){return"_def"in t||"_zod"in t||sk(t)}function Oh(t){return typeof t!="object"||t===null||ik(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(sk)}function nk(t){if(t){if(Oh(t))return jn(t);if(!ik(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function mj(t){let e=Br(t);return e?Object.entries(e).map(([r,n])=>{let o=Ex(n),s=Tx(n);return{name:r,description:o,required:!s}}):[]}function nn(t){let r=Br(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ea(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function ok(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Hc,pj,vi,ak=v(()=>{K0();Cs();Am();Dn();Q0();ek();tk();rk();Rh();Hc=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 Uc(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Zc(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(nn(qa)),this.server.assertCanSetRequestHandler(nn(To)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(qa,()=>({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=vo(r.inputSchema);return o?Om(o,{strictUnions:!0,pipeStrategy:"input"}):pj})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=vo(r.outputSchema);o&&(n.outputSchema=Om(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(To,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new N(D.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new N(D.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new N(D.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof N&&n.code===D.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=vo(e.inputSchema)??e.inputSchema,i=await wa(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=$a(a);throw new N(D.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new N(D.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=vo(e.outputSchema),s=await wa(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=$a(i);throw new N(D.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new N(D.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(nn(Va)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Va,async e=>{switch(e.params.ref.type){case"ref/prompt":return _v(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return yv(e),this.handleResourceCompletion(e,e.params.ref);default:throw new N(D.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new N(D.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return vi;let s=Br(n.argsSchema)?.[e.params.argument.name];if(!Th(s))return vi;let i=X0(s);if(!i)return vi;let a=await i(e.params.argument.value,e.params.context);return ok(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 vi;throw new N(D.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return vi;let s=await o(e.params.argument.value,e.params.context);return ok(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(nn(wo)),this.server.assertCanSetRequestHandler(nn($o)),this.server.assertCanSetRequestHandler(nn(Za)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(wo,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($o,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Za,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new N(D.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new N(D.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(nn(Eo)),this.server.assertCanSetRequestHandler(nn(Ha)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Eo,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?mj(r.argsSchema):void 0}))})),this.server.setRequestHandler(Ha,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new N(D.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new N(D.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=vo(n.argsSchema),s=await wa(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=$a(c);throw new N(D.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:jn(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=jn(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 lt?c._def?.innerType:c;return Th(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Ph(e);let l={title:r,description:n,inputSchema:nk(o),outputSchema:nk(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"&&Ph(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=jn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=jn(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(Oh(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Oh(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}},pj={type:"object",properties:{}};vi={completion:{values:[],hasMore:!1}}});function fj(t){return uv.parse(JSON.parse(t))}function ck(t){return JSON.stringify(t)+`
58
+ `}var qc,uk=v(()=>{Dn();qc=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
59
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),fj(r)}clear(){this._buffer=void 0}}});import lk from"node:process";var Bc,dk=v(()=>{uk();Bc=class{constructor(e=lk.stdin,r=lk.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new qc,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=ck(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}}});var _k={};Le(_k,{PolyglotExecutor:()=>Vo});import{spawn as hj,execSync as gj,execFileSync as hk}from"node:child_process";import{mkdtempSync as _j,writeFileSync as pk,rmSync as mk,existsSync as fk}from"node:fs";import{join as Vc,resolve as gk}from"node:path";import{tmpdir as yj}from"node:os";function Ch(t){if(Ut&&t.pid)try{gj(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var Ut,xj,Vo,Ih=v(()=>{"use strict";Fi();Ut=process.platform==="win32",xj=(()=>{if(Ut)return process.env.TEMP??process.env.TMP??yj();try{let t=hk(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:gk(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();Vo=class{#e;#t;#n;#o=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??Qn()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Ut?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=_j(Vc(xj,".ctx-mode-"));try{let a=this.#i(i,n,r),c=Cg(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#s(c,u,i,o,s);if(!l.backgrounded)try{mk(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{mk(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=gk(this.#t,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
60
60
 
61
61
  import "fmt"
62
62
 
@@ -64,12 +64,12 @@ func main() {
64
64
  ${r}
65
65
  }
66
66
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
67
- ${r}`),n==="elixir"&&pk(qc(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(qc(this.#t,"_build/dev/lib"))}, "*/ebin"))
67
+ ${r}`),n==="elixir"&&fk(Vc(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(Vc(this.#t,"_build/dev/lib"))}, "*/ebin"))
68
68
  |> Enum.each(&Code.prepend_path/1)
69
69
 
70
- ${r}`);let s=qc(e,`script.${o[n]}`);return n==="shell"?lk(s,r,{encoding:"utf-8",mode:448}):lk(s,r,"utf-8"),s}async#a(e,r,n){let o=Ft?".exe":"",s=e.replace(/\.rs$/,"")+o;try{mk("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
71
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,r,n)}async#s(e,r,n,o,s=!1){return new Promise(i=>{let a=Ft&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;Ft&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=Ft?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=mj(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(n),shell:a,detached:!Ft}),d=!1,m=!1,f=setTimeout(()=>{if(d=!0,s){m=!0,l.pid&&this.#o.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),x=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:x,exitCode:0,timedOut:!0,backgrounded:!0})}else Rh(l)},o),p=[],h=[],g=0,_=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):_||(_=!0,Rh(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):_||(_=!0,Rh(l))}),l.on("close",y=>{if(clearTimeout(f),m)return;let x=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");_&&(k+=`
72
- [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:x,stderr:k,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(f),!m&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",Ft&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Ft?"":"/usr/local/bin:/usr/bin:/bin"),Ft){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=Ft?[]:["/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(pk(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};
70
+ ${r}`);let s=Vc(e,`script.${o[n]}`);return n==="shell"?pk(s,r,{encoding:"utf-8",mode:448}):pk(s,r,"utf-8"),s}async#a(e,r,n){let o=Ut?".exe":"",s=e.replace(/\.rs$/,"")+o;try{hk("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
71
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,r,n)}async#s(e,r,n,o,s=!1){return new Promise(i=>{let a=Ut&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;Ut&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=Ut?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=hj(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(n),shell:a,detached:!Ut}),d=!1,m=!1,f=setTimeout(()=>{if(d=!0,s){m=!0,l.pid&&this.#o.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),x=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:x,exitCode:0,timedOut:!0,backgrounded:!0})}else Ch(l)},o),p=[],h=[],g=0,_=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):_||(_=!0,Ch(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):_||(_=!0,Ch(l))}),l.on("close",y=>{if(clearTimeout(f),m)return;let x=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");_&&(k+=`
72
+ [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:x,stderr:k,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(f),!m&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",Ut&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Ut?"":"/usr/local/bin:/usr/bin:/bin"),Ut){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=Ut?[]:["/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(fk(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};
73
73
  const file_path = FILE_CONTENT_PATH;
74
74
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
75
75
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -124,7 +124,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
124
124
  ${n}`;case"elixir":return`file_content_path = ${o}
125
125
  file_path = file_content_path
126
126
  file_content = File.read!(file_content_path)
127
- ${n}`}}}});var yk={};Me(yk,{BunSQLiteAdapter:()=>Bc,NodeSQLiteAdapter:()=>Vc,SQLiteBase:()=>vi,applyWALPragmas:()=>Vo,cleanOrphanedWALFiles:()=>Wo,closeDB:()=>Go,defaultDBPath:()=>Ih,deleteDBFiles:()=>Wc,isSQLiteCorruptionError:()=>Gc,loadDatabase:()=>Vn,renameCorruptDB:()=>_k,withRetry:()=>rn});import{createRequire as yj}from"node:module";import{existsSync as xj,unlinkSync as gk,renameSync as vj}from"node:fs";import{tmpdir as Sj}from"node:os";import{join as bj}from"node:path";function Vn(){if(!Bo){let t=yj(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Bo=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new Bc(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Bo=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new Vc(s)}}catch{Bo=t("better-sqlite3")}else Bo=t("better-sqlite3")}return Bo}function Vo(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function Wo(t){if(!xj(t))for(let e of["-wal","-shm"])try{gk(t+e)}catch{}}function Wc(t){for(let e of["","-wal","-shm"])try{gk(t+e)}catch{}}function Go(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function Ih(t="context-mode"){return bj(Sj(),`${t}-${process.pid}.db`)}function rn(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}function Gc(t){return t.includes("SQLITE_CORRUPT")||t.includes("SQLITE_NOTADB")||t.includes("database disk image is malformed")||t.includes("file is not a database")}function _k(t){let e=Date.now();for(let r of["","-wal","-shm"])try{vj(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var Bc,Vc,Bo,xi,Ch,vi,Si=v(()=>{"use strict";Bc=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},Vc=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){return this.#e.exec(e),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>r.get(...n),all:(...n)=>r.all(...n),iterate:(...n)=>typeof r.iterate=="function"?r.iterate(...n):r.all(...n)[Symbol.iterator]()}}transaction(e){return(...r)=>{this.#e.exec("BEGIN");try{let n=e(...r);return this.#e.exec("COMMIT"),n}catch(n){throw this.#e.exec("ROLLBACK"),n}}}close(){this.#e.close()}},Bo=null;xi=Symbol.for("__context_mode_live_dbs__"),Ch=(()=>{let t=globalThis;return t[xi]||(t[xi]=new Set,process.on("exit",()=>{for(let e of t[xi])Go(e);t[xi].clear()})),t[xi]})(),vi=class{#e;#t;constructor(e){let r=Vn();this.#e=e,Wo(e);let n;try{n=new r(e,{timeout:3e4}),Vo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Gc(s)){_k(e),Wo(e);try{n=new r(e,{timeout:3e4}),Vo(n)}catch(i){throw new Error(`Failed to create fresh DB after renaming corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#t=n,Ch.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){Ch.delete(this.#t),Go(this.#t)}withRetry(e){return rn(e)}cleanup(){Ch.delete(this.#t),Go(this.#t),Wc(this.#e)}}});import{readFileSync as xk,readdirSync as bk,unlinkSync as Nh,existsSync as Ah,statSync as Kc}from"node:fs";import{createHash as vk}from"node:crypto";import{tmpdir as kk}from"node:os";import{join as zh}from"node:path";function wk(t){let e=new Set,r=[];for(let n of t){let o=n.toLowerCase();e.has(o)||(e.add(o),r.push(n))}return r}function kj(t,e="AND"){let r=wk(t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(s=>s.length>0&&!["AND","OR","NOT","NEAR"].includes(s.toUpperCase())));if(r.length===0)return'""';let n=r.filter(s=>!Ko.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function wj(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=wk(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!Ko.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function $j(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 Ej(t){return t<=4?1:t<=12?2:3}function jh(){let t=kk(),e=0;try{let r=bk(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=zh(t,n);for(let a of["","-wal","-shm"])try{Nh(i+a)}catch{}e++}}}catch{}return e}function Dh(t,e){let r=0;try{if(!Ah(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=bk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=zh(t,s),c=Kc(i).mtimeMs<n;if(!c){let u=i+"-wal";if(Ah(u))try{let l=Kc(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{Nh(i+u)}catch{}r++}}catch{}}catch{}return r}function Tj(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function Pj(t,e,r=30){if(t.length<2||e.length<2)return 0;let n=0,o=Math.min(t.length,e.length)-1;for(let s=0;s<o;s++){let i=t[s],a=t[s+1],c=e[s].length,u=0;for(let l of i){let d=l+c,m=d+r;for(;u<a.length&&a[u]<d;)u++;u<a.length&&a[u]<=m&&(n++,u++)}}return n}function Rj(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var Ko,Sk,Jc,$k=v(()=>{"use strict";Si();Ko=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"]);Sk=4096;Jc=class t{#e;#t;#n;#o;#i;#a;#s;#c;#u;#p;#m;#f;#h;#g;#_;#y;#x;#v;#S;#b;#k;#w;#$;#E;#T;#P;#R;#O;#C;#I;#A;#N;#z=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=Vn();this.#t=e??zh(kk(),`context-mode-${process.pid}.db`),Wo(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),Vo(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Gc(s)){Wc(this.#t),Wo(this.#t);try{n=new r(this.#t,{timeout:3e4}),Vo(n)}catch(i){throw new Error(`Failed to create fresh DB after deleting corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#e=n,this.#U(),this.#Z()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Nh(this.#t+e)}catch{}}#U(){this.#e.exec(`
127
+ ${n}`}}}});var vk={};Le(vk,{BunSQLiteAdapter:()=>Wc,NodeSQLiteAdapter:()=>Gc,SQLiteBase:()=>bi,applyWALPragmas:()=>Go,cleanOrphanedWALFiles:()=>Ko,closeDB:()=>Jo,defaultDBPath:()=>Nh,deleteDBFiles:()=>Kc,isSQLiteCorruptionError:()=>Jc,loadDatabase:()=>Gn,renameCorruptDB:()=>xk,withRetry:()=>on});import{createRequire as vj}from"node:module";import{existsSync as Sj,unlinkSync as yk,renameSync as bj}from"node:fs";import{tmpdir as kj}from"node:os";import{join as wj}from"node:path";function Gn(){if(!Wo){let t=vj(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;Wo=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new Wc(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));Wo=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new Gc(s)}}catch{Wo=t("better-sqlite3")}else Wo=t("better-sqlite3")}return Wo}function Go(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function Ko(t){if(!Sj(t))for(let e of["-wal","-shm"])try{yk(t+e)}catch{}}function Kc(t){for(let e of["","-wal","-shm"])try{yk(t+e)}catch{}}function Jo(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function Nh(t="context-mode"){return wj(kj(),`${t}-${process.pid}.db`)}function on(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}function Jc(t){return t.includes("SQLITE_CORRUPT")||t.includes("SQLITE_NOTADB")||t.includes("database disk image is malformed")||t.includes("file is not a database")}function xk(t){let e=Date.now();for(let r of["","-wal","-shm"])try{bj(t+r,`${t}${r}.corrupt-${e}`)}catch{}}var Wc,Gc,Wo,Si,Ah,bi,ki=v(()=>{"use strict";Wc=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},Gc=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){return this.#e.exec(e),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>r.get(...n),all:(...n)=>r.all(...n),iterate:(...n)=>typeof r.iterate=="function"?r.iterate(...n):r.all(...n)[Symbol.iterator]()}}transaction(e){return(...r)=>{this.#e.exec("BEGIN");try{let n=e(...r);return this.#e.exec("COMMIT"),n}catch(n){throw this.#e.exec("ROLLBACK"),n}}}close(){this.#e.close()}},Wo=null;Si=Symbol.for("__context_mode_live_dbs__"),Ah=(()=>{let t=globalThis;return t[Si]||(t[Si]=new Set,process.on("exit",()=>{for(let e of t[Si])Jo(e);t[Si].clear()})),t[Si]})(),bi=class{#e;#t;constructor(e){let r=Gn();this.#e=e,Ko(e);let n;try{n=new r(e,{timeout:3e4}),Go(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Jc(s)){xk(e),Ko(e);try{n=new r(e,{timeout:3e4}),Go(n)}catch(i){throw new Error(`Failed to create fresh DB after renaming corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#t=n,Ah.add(this.#t),this.initSchema(),this.prepareStatements()}get db(){return this.#t}get dbPath(){return this.#e}close(){Ah.delete(this.#t),Jo(this.#t)}withRetry(e){return on(e)}cleanup(){Ah.delete(this.#t),Jo(this.#t),Kc(this.#e)}}});import{readFileSync as Sk,readdirSync as wk,unlinkSync as jh,existsSync as zh,statSync as Yc}from"node:fs";import{createHash as bk}from"node:crypto";import{tmpdir as $k}from"node:os";import{join as Dh}from"node:path";function Ek(t){let e=new Set,r=[];for(let n of t){let o=n.toLowerCase();e.has(o)||(e.add(o),r.push(n))}return r}function $j(t,e="AND"){let r=Ek(t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(s=>s.length>0&&!["AND","OR","NOT","NEAR"].includes(s.toUpperCase())));if(r.length===0)return'""';let n=r.filter(s=>!Yo.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function Ej(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=Ek(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!Yo.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function Tj(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 Pj(t){return t<=4?1:t<=12?2:3}function Mh(){let t=$k(),e=0;try{let r=wk(t);for(let n of r){let o=n.match(/^context-mode-(\d+)\.db$/);if(!o)continue;let s=parseInt(o[1],10);if(s!==process.pid)try{process.kill(s,0)}catch{let i=Dh(t,n);for(let a of["","-wal","-shm"])try{jh(i+a)}catch{}e++}}}catch{}return e}function Lh(t,e){let r=0;try{if(!zh(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=wk(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Dh(t,s),c=Yc(i).mtimeMs<n;if(!c){let u=i+"-wal";if(zh(u))try{let l=Yc(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{jh(i+u)}catch{}r++}}catch{}}catch{}return r}function Rj(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function Oj(t,e,r=30){if(t.length<2||e.length<2)return 0;let n=0,o=Math.min(t.length,e.length)-1;for(let s=0;s<o;s++){let i=t[s],a=t[s+1],c=e[s].length,u=0;for(let l of i){let d=l+c,m=d+r;for(;u<a.length&&a[u]<d;)u++;u<a.length&&a[u]<=m&&(n++,u++)}}return n}function Cj(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var Yo,kk,Xc,Tk=v(()=>{"use strict";ki();Yo=new Set(["the","and","for","are","but","not","you","all","can","had","her","was","one","our","out","has","his","how","its","may","new","now","old","see","way","who","did","get","got","let","say","she","too","use","will","with","this","that","from","they","been","have","many","some","them","than","each","make","like","just","over","such","take","into","year","your","good","could","would","about","which","their","there","other","after","should","through","also","more","most","only","very","when","what","then","these","those","being","does","done","both","same","still","while","where","here","were","much","update","updates","updated","deps","dev","tests","test","add","added","fix","fixed","run","running","using"]);kk=4096;Xc=class t{#e;#t;#n;#o;#i;#a;#s;#c;#u;#p;#m;#f;#h;#g;#_;#y;#x;#v;#S;#b;#k;#w;#$;#E;#T;#P;#R;#O;#C;#I;#A;#N;#z=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=Gn();this.#t=e??Dh($k(),`context-mode-${process.pid}.db`),Ko(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),Go(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Jc(s)){Kc(this.#t),Ko(this.#t);try{n=new r(this.#t,{timeout:3e4}),Go(n)}catch(i){throw new Error(`Failed to create fresh DB after deleting corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#e=n,this.#U(),this.#Z()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{jh(this.#t+e)}catch{}}#U(){this.#e.exec(`
128
128
  CREATE TABLE IF NOT EXISTS sources (
129
129
  id INTEGER PRIMARY KEY AUTOINCREMENT,
130
130
  label TEXT NOT NULL,
@@ -364,7 +364,7 @@ ${n}`}}}});var yk={};Me(yk,{BunSQLiteAdapter:()=>Bc,NodeSQLiteAdapter:()=>Vc,SQL
364
364
  (SELECT COUNT(*) FROM sources) AS sources,
365
365
  (SELECT COUNT(*) FROM chunks) AS chunks,
366
366
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
367
- `),this.#I=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#A=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#N=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')")}index(e){let{content:r,path:n,source:o}=e,s=typeof r=="string"&&r.length>0;if(!s&&!n)throw new Error("Either content or path must be provided");let i=s?r:xk(n,"utf-8"),a=o??n??"untitled",c=this.#B(i),u=n??void 0,l=u?vk("sha256").update(i).digest("hex"):void 0;return rn(()=>this.#l(c,a,i,u,l))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#V(e,n);return rn(()=>this.#l(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=Sk){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#F(o,[],s,n),s.length===0?this.indexPlainText(e,r):rn(()=>this.#l(s,r,e))}#l(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#c.run(r),this.#u.run(r),this.#p.run(r),e.length===0){let m=this.#n.run(r,o??null,s??null);return Number(m.lastInsertRowid)}let u=this.#o.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid),d=new Date().toISOString();for(let m of e){let f=m.hasCode?"code":"prose";this.#i.run(m.title,m.content,l,f,null,null,null,d),this.#a.run(m.title,m.content,l,f,null,null,null,d)}return l})();return n&&this.#q(n),this.#z++,this.#z%t.OPTIMIZE_EVERY===0&&this.#L(),{sourceId:c,label:r,totalChunks:e.length,codeChunks:i}}#j(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted,timestamp:r.timestamp??void 0}))}#d(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=kj(e,o),c,u;return n&&s?(c=i==="exact"?this.#b:this.#S,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#f,u=[a,this.#d(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#m,u=[a,r]),rn(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=wj(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#$:this.#w,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#d(n,i),r]):s?(c=this.#k,u=[a,s,r]):(c=this.#g,u=[a,r]),rn(()=>this.#j(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;if(this.#r.has(r)){let u=this.#r.get(r)??null;return this.#r.delete(r),this.#r.set(r,u),u}let n=Ej(r.length),o=this.#x.all(r.length-n,r.length+n),s=null,i=n+1,a=!1;for(let{word:u}of o){if(u===r){a=!0;break}let l=$j(r,u);l<i&&(i=l,s=u)}let c=a?null:i<=n?s:null;if(this.#r.size>=t.FUZZY_CACHE_SIZE){let u=this.#r.keys().next().value;u!==void 0&&this.#r.delete(u)}return this.#r.set(r,c),c}#D(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=m=>`${m.source}::${m.title}`;for(let[m,f]of c.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}for(let[m,f]of u.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}return Array.from(l.values()).sort((m,f)=>f.score-m.score).slice(0,r).map(({result:m,score:f})=>({...m,rank:-f}))}#M(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!Ko.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(f=>a.includes(f)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0,m=0;if(s.length>=2){let f=i.content.toLowerCase(),p=s.map(h=>Tj(f,h));if(!p.some(h=>h.length===0)){d=1/(1+Rj(p)/Math.max(f.length,1));let g=Pj(p,s);m=.5*Math.min(1,g/4)}}return{result:i,boost:l+d+m}}).sort((i,a)=>a.boost-i.boost||i.result.rank-a.result.rank).map(({result:i})=>i)}searchWithFallback(e,r=3,n,o,s="like"){this.#H();let i=this.#D(e,r,n,o,s);if(i.length>0)return this.#M(i,e).map(m=>({...m,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!Ko.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#D(l,r,n,o,s);if(d.length>0)return this.#M(d,l).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}lastRefreshCount=0;#H(){this.lastRefreshCount=0;let e=this.#e.prepare("SELECT label, file_path, content_hash, indexed_at FROM sources WHERE file_path IS NOT NULL").all();for(let r of e)try{if(!Ah(r.file_path))continue;let n=Kc(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=xk(r.file_path,"utf-8");if(vk("sha256").update(s).digest("hex")===r.content_hash)continue;this.index({path:r.file_path,source:r.label}),this.lastRefreshCount++}catch{}}getSourceMeta(e){let r=this.#C.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at,filePath:r.file_path??null,contentHash:r.content_hash??null}:null}listSources(){return this.#E.all()}getChunksBySource(e){return this.#T.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#P.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#R.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(m=>m.length>=3&&!Ko.has(m)));for(let m of d)a.set(m,(a.get(m)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let m=Math.log(o/d),f=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:m+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#O.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#I.run(o),this.#A.run(o),this.#N.run(o)))(e).changes}getDBSizeBytes(){try{return Kc(this.#t).size}catch{return 0}}#L(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#L(),Go(this.#e)}#q(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!Ko.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#s.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=Sk){let n=[],o=e.split(`
367
+ `),this.#I=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#A=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#N=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')")}index(e){let{content:r,path:n,source:o}=e,s=typeof r=="string"&&r.length>0;if(!s&&!n)throw new Error("Either content or path must be provided");let i=s?r:Sk(n,"utf-8"),a=o??n??"untitled",c=this.#B(i),u=n??void 0,l=u?bk("sha256").update(i).digest("hex"):void 0;return on(()=>this.#l(c,a,i,u,l))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#V(e,n);return on(()=>this.#l(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=kk){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#F(o,[],s,n),s.length===0?this.indexPlainText(e,r):on(()=>this.#l(s,r,e))}#l(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#c.run(r),this.#u.run(r),this.#p.run(r),e.length===0){let m=this.#n.run(r,o??null,s??null);return Number(m.lastInsertRowid)}let u=this.#o.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid),d=new Date().toISOString();for(let m of e){let f=m.hasCode?"code":"prose";this.#i.run(m.title,m.content,l,f,null,null,null,d),this.#a.run(m.title,m.content,l,f,null,null,null,d)}return l})();return n&&this.#q(n),this.#z++,this.#z%t.OPTIMIZE_EVERY===0&&this.#L(),{sourceId:c,label:r,totalChunks:e.length,codeChunks:i}}#j(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted,timestamp:r.timestamp??void 0}))}#d(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=$j(e,o),c,u;return n&&s?(c=i==="exact"?this.#b:this.#S,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#f,u=[a,this.#d(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#m,u=[a,r]),on(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=Ej(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#$:this.#w,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#d(n,i),r]):s?(c=this.#k,u=[a,s,r]):(c=this.#g,u=[a,r]),on(()=>this.#j(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;if(this.#r.has(r)){let u=this.#r.get(r)??null;return this.#r.delete(r),this.#r.set(r,u),u}let n=Pj(r.length),o=this.#x.all(r.length-n,r.length+n),s=null,i=n+1,a=!1;for(let{word:u}of o){if(u===r){a=!0;break}let l=Tj(r,u);l<i&&(i=l,s=u)}let c=a?null:i<=n?s:null;if(this.#r.size>=t.FUZZY_CACHE_SIZE){let u=this.#r.keys().next().value;u!==void 0&&this.#r.delete(u)}return this.#r.set(r,c),c}#D(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=m=>`${m.source}::${m.title}`;for(let[m,f]of c.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}for(let[m,f]of u.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}return Array.from(l.values()).sort((m,f)=>f.score-m.score).slice(0,r).map(({result:m,score:f})=>({...m,rank:-f}))}#M(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!Yo.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(f=>a.includes(f)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0,m=0;if(s.length>=2){let f=i.content.toLowerCase(),p=s.map(h=>Rj(f,h));if(!p.some(h=>h.length===0)){d=1/(1+Cj(p)/Math.max(f.length,1));let g=Oj(p,s);m=.5*Math.min(1,g/4)}}return{result:i,boost:l+d+m}}).sort((i,a)=>a.boost-i.boost||i.result.rank-a.result.rank).map(({result:i})=>i)}searchWithFallback(e,r=3,n,o,s="like"){this.#H();let i=this.#D(e,r,n,o,s);if(i.length>0)return this.#M(i,e).map(m=>({...m,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!Yo.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#D(l,r,n,o,s);if(d.length>0)return this.#M(d,l).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}lastRefreshCount=0;#H(){this.lastRefreshCount=0;let e=this.#e.prepare("SELECT label, file_path, content_hash, indexed_at FROM sources WHERE file_path IS NOT NULL").all();for(let r of e)try{if(!zh(r.file_path))continue;let n=Yc(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=Sk(r.file_path,"utf-8");if(bk("sha256").update(s).digest("hex")===r.content_hash)continue;this.index({path:r.file_path,source:r.label}),this.lastRefreshCount++}catch{}}getSourceMeta(e){let r=this.#C.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at,filePath:r.file_path??null,contentHash:r.content_hash??null}:null}listSources(){return this.#E.all()}getChunksBySource(e){return this.#T.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#P.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#R.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(m=>m.length>=3&&!Yo.has(m)));for(let m of d)a.set(m,(a.get(m)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let m=Math.log(o/d),f=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:m+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#O.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#I.run(o),this.#A.run(o),this.#N.run(o)))(e).changes}getDBSizeBytes(){try{return Yc(this.#t).size}catch{return 0}}#L(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#L(),Jo(this.#e)}#q(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!Yo.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#s.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=kk){let n=[],o=e.split(`
368
368
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
369
369
  `).trim();if(l.length===0)return;let d=this.#J(s,a),m=i.some(_=>/^`{3,}/.test(_));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:m}),i=[];return}let f=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let _=p.join(`
370
370
 
@@ -373,13 +373,13 @@ ${n}`}}}});var yk={};Me(yk,{BunSQLiteAdapter:()=>Bc,NodeSQLiteAdapter:()=>Vc,SQL
373
373
  `);Buffer.byteLength(y)>r&&p.length>1&&(p.pop(),g(),p=[_])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let f=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=f;)s.pop();s.push({level:f,text:p}),a=p,i.push(l),u++;continue}let m=l.match(/^(`{3,})(.*)?$/);if(m){let f=m[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(f)&&o[u].trim()===f){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#V(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
374
374
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
375
375
  `);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),m=u[0]?.trim().slice(0,80);s.push({title:m||`Lines ${l}-${d}`,content:u.join(`
376
- `)})}return s}#F(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#F(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#K(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#W(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#G(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#K(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#W(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#G(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#J(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}}});import{readFileSync as Tk,realpathSync as Oj}from"node:fs";import{resolve as Wn}from"node:path";import{homedir as Pk}from"node:os";function Rk(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function Cj(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function Ij(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Ek(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function Aj(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=Ij(o),a=Ek(s);r=`^${i}(\\s${a})?$`}else r=`^${Ek(t)}$`;return new RegExp(r,e?"i":"")}function Nj(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 zj(t,e,r=!1){for(let n of e){let o=Rk(n);if(o&&Aj(o,r).test(t))return n}return null}function jj(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 Mh(t){let e;try{e=Tk(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"&&Rk(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Lh(t,e){let r=[];if(t){let s=Wn(t,".claude","settings.local.json"),i=Mh(s);i&&r.push(i);let a=Wn(t,".claude","settings.json"),c=Mh(a);c&&r.push(c)}let n=e??Wn(Pk(),".claude","settings.json"),o=Mh(n);return o&&r.push(o),r}function Ok(t,e,r){let n=[],o=a=>{let c;try{c=Tk(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let m of l){if(typeof m!="string")continue;let f=Cj(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Wn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Wn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Wn(Pk(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Fh(t,e,r=process.platform==="win32"){let n=jj(t);for(let o of n)for(let s of e){let i=zj(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Ck(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=Wn(n,t);s.add(o(i));try{s.add(o(Oj(i)))}catch{}}for(let i of e)for(let a of i){let c=Nj(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}function Mj(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 Ik(t,e){let r=Dj[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(...Mj(t)),n}var Dj,Ak=v(()=>{"use strict";Dj={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 Uh(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
376
+ `)})}return s}#F(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#F(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#K(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#W(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#G(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#K(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#W(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#G(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#J(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}}});import{readFileSync as Rk,realpathSync as Ij}from"node:fs";import{resolve as Kn}from"node:path";import{homedir as Ok}from"node:os";function Ck(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function Aj(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function Nj(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Pk(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function zj(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=Nj(o),a=Pk(s);r=`^${i}(\\s${a})?$`}else r=`^${Pk(t)}$`;return new RegExp(r,e?"i":"")}function jj(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 Dj(t,e,r=!1){for(let n of e){let o=Ck(n);if(o&&zj(o,r).test(t))return n}return null}function Mj(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 Fh(t){let e;try{e=Rk(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"&&Ck(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Uh(t,e){let r=[];if(t){let s=Kn(t,".claude","settings.local.json"),i=Fh(s);i&&r.push(i);let a=Kn(t,".claude","settings.json"),c=Fh(a);c&&r.push(c)}let n=e??Kn(Ok(),".claude","settings.json"),o=Fh(n);return o&&r.push(o),r}function Ik(t,e,r){let n=[],o=a=>{let c;try{c=Rk(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let m of l){if(typeof m!="string")continue;let f=Aj(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Kn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Kn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Kn(Ok(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Zh(t,e,r=process.platform==="win32"){let n=Mj(t);for(let o of n)for(let s of e){let i=Dj(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Ak(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=Kn(n,t);s.add(o(i));try{s.add(o(Ij(i)))}catch{}}for(let i of e)for(let a of i){let c=jj(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}function Fj(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 Nk(t,e){let r=Lj[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(...Fj(t)),n}var Lj,zk=v(()=>{"use strict";Lj={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 Hh(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
377
377
 
378
378
  stdout:
379
379
  ${n}
380
380
 
381
381
  stderr:
382
- ${o}`}}var Nk=v(()=>{"use strict"});import{execFileSync as Lj}from"node:child_process";function Fj(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=Lj("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function Uj(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??Fj,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}function zk(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??Zj,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let a of i)process.on(a,o);return()=>{n=!0,clearInterval(s);for(let a of i)process.removeListener(a,o)}}var Zj,jk=v(()=>{"use strict";Zj=Uj()});import{createHash as Dk}from"node:crypto";import{execFileSync as Hj}from"node:child_process";function Zh(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=Hj("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${Dk("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var qj,Bj,W,Yc,Mk=v(()=>{"use strict";Si();qj=1e3,Bj=5,W={insertEvent:"insertEvent",getEvents:"getEvents",getEventsByType:"getEventsByType",getEventsByPriority:"getEventsByPriority",getEventsByTypeAndPriority:"getEventsByTypeAndPriority",getEventCount:"getEventCount",getLatestAttributedProject:"getLatestAttributedProject",checkDuplicate:"checkDuplicate",evictLowestPriority:"evictLowestPriority",updateMetaLastEvent:"updateMetaLastEvent",ensureSession:"ensureSession",getSessionStats:"getSessionStats",incrementCompactCount:"incrementCompactCount",upsertResume:"upsertResume",getResume:"getResume",markResumeConsumed:"markResumeConsumed",deleteEvents:"deleteEvents",deleteMeta:"deleteMeta",deleteResume:"deleteResume",getOldSessions:"getOldSessions",searchEvents:"searchEvents"},Yc=class extends vi{constructor(e){super(e?.dbPath??Ih("session"))}stmt(e){return this.stmts.get(e)}initSchema(){try{let r=this.db.pragma("table_xinfo(session_events)").find(n=>n.name==="data_hash");r&&r.hidden!==0&&this.db.exec("DROP TABLE session_events")}catch{}this.db.exec(`
382
+ ${o}`}}var jk=v(()=>{"use strict"});import{execFileSync as Uj}from"node:child_process";function Zj(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=Uj("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function Hj(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??Zj,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}function Dk(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??qj,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let a of i)process.on(a,o);return()=>{n=!0,clearInterval(s);for(let a of i)process.removeListener(a,o)}}var qj,Mk=v(()=>{"use strict";qj=Hj()});import{createHash as Lk}from"node:crypto";import{execFileSync as Bj}from"node:child_process";function qh(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=Bj("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${Lk("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var Vj,Wj,W,Qc,Fk=v(()=>{"use strict";ki();Vj=1e3,Wj=5,W={insertEvent:"insertEvent",getEvents:"getEvents",getEventsByType:"getEventsByType",getEventsByPriority:"getEventsByPriority",getEventsByTypeAndPriority:"getEventsByTypeAndPriority",getEventCount:"getEventCount",getLatestAttributedProject:"getLatestAttributedProject",checkDuplicate:"checkDuplicate",evictLowestPriority:"evictLowestPriority",updateMetaLastEvent:"updateMetaLastEvent",ensureSession:"ensureSession",getSessionStats:"getSessionStats",incrementCompactCount:"incrementCompactCount",upsertResume:"upsertResume",getResume:"getResume",markResumeConsumed:"markResumeConsumed",deleteEvents:"deleteEvents",deleteMeta:"deleteMeta",deleteResume:"deleteResume",getOldSessions:"getOldSessions",searchEvents:"searchEvents"},Qc=class extends bi{constructor(e){super(e?.dbPath??Nh("session"))}stmt(e){return this.stmts.get(e)}initSchema(){try{let r=this.db.pragma("table_xinfo(session_events)").find(n=>n.name==="data_hash");r&&r.hidden!==0&&this.db.exec("DROP TABLE session_events")}catch{}this.db.exec(`
383
383
  CREATE TABLE IF NOT EXISTS session_events (
384
384
  id INTEGER PRIMARY KEY AUTOINCREMENT,
385
385
  session_id TEXT NOT NULL,
@@ -460,30 +460,30 @@ ${o}`}}var Nk=v(()=>{"use strict"});import{execFileSync as Lj}from"node:child_pr
460
460
  AND (data LIKE '%' || ? || '%' ESCAPE '\\' OR category LIKE '%' || ? || '%' ESCAPE '\\')
461
461
  AND (? IS NULL OR category = ?)
462
462
  ORDER BY id ASC
463
- LIMIT ?`),e(W.getOldSessions,"SELECT session_id FROM session_meta WHERE started_at < datetime('now', ? || ' days')")}insertEvent(e,r,n="PostToolUse",o){let s=Dk("sha256").update(r.data).digest("hex").slice(0,16).toUpperCase(),i=String(o?.projectDir??r.project_dir??"").trim(),a=String(o?.source??r.attribution_source??"unknown"),c=Number(o?.confidence??r.attribution_confidence??0),u=Number.isFinite(c)?Math.max(0,Math.min(1,c)):0,l=this.db.transaction(()=>{if(this.stmt(W.checkDuplicate).get(e,Bj,r.type,s))return;this.stmt(W.getEventCount).get(e).cnt>=qj&&this.stmt(W.evictLowestPriority).run(e),this.stmt(W.insertEvent).run(e,r.type,r.category,r.priority,r.data,i,a,u,n,s),this.stmt(W.updateMetaLastEvent).run(e)});this.withRetry(()=>l())}getEvents(e,r){let n=r?.limit??1e3,o=r?.type,s=r?.minPriority;return o&&s!==void 0?this.stmt(W.getEventsByTypeAndPriority).all(e,o,s,n):o?this.stmt(W.getEventsByType).all(e,o,n):s!==void 0?this.stmt(W.getEventsByPriority).all(e,s,n):this.stmt(W.getEvents).all(e,n)}getEventCount(e){return this.stmt(W.getEventCount).get(e).cnt}getLatestAttributedProjectDir(e){return this.stmt(W.getLatestAttributedProject).get(e)?.project_dir||null}searchEvents(e,r,n,o){try{let s=e.replace(/[%_]/g,a=>"\\"+a),i=o??null;return this.stmt(W.searchEvents).all(n,s,s,i,i,r)}catch{return[]}}ensureSession(e,r){this.stmt(W.ensureSession).run(e,r)}getSessionStats(e){return this.stmt(W.getSessionStats).get(e)??null}incrementCompactCount(e){this.stmt(W.incrementCompactCount).run(e)}upsertResume(e,r,n){this.stmt(W.upsertResume).run(e,r,n??0)}getResume(e){return this.stmt(W.getResume).get(e)??null}markResumeConsumed(e){this.stmt(W.markResumeConsumed).run(e)}deleteSession(e){this.db.transaction(()=>{this.stmt(W.deleteEvents).run(e),this.stmt(W.deleteResume).run(e),this.stmt(W.deleteMeta).run(e)})()}cleanupOldSessions(e=7){let r=`-${e}`,n=this.stmt(W.getOldSessions).all(r);for(let{session_id:o}of n)this.deleteSession(o);return n.length}}});import{existsSync as Hh,readFileSync as Vj,readdirSync as Wj,statSync as Lk}from"node:fs";import{join as bi}from"node:path";import{homedir as Gj}from"node:os";function Uk(t,e=5,r,n){let o=[],s=n||bi(Gj(),".claude"),i=[];if(r){let u=bi(r,"CLAUDE.md");Hh(u)&&i.push({path:u,label:"project/CLAUDE.md"})}let a=bi(s,"CLAUDE.md");Hh(a)&&i.push({path:a,label:"user/CLAUDE.md"});let c=bi(s,"memory");if(Hh(c))try{let u=Wj(c).filter(l=>l.endsWith(".md"));for(let l of u)i.push({path:bi(c,l),label:`memory/${l}`})}catch(u){Fk&&process.stderr.write(`[ctx] auto-memory dir scan failed: ${u}
464
- `)}for(let u of i){if(o.length>=e)break;try{try{if(Lk(u.path).size>1e6)continue}catch{continue}let l=Vj(u.path,"utf-8"),d=l.toLowerCase();for(let m of t){if(o.length>=e)break;let p=m.toLowerCase().split(/\s+/).filter(g=>g.length>=3);if(p.some(g=>{try{return new RegExp(`\\b${g.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`,"i").test(l)}catch{return d.includes(g)}})){let g=p.reduce((B,H)=>{let J=d.indexOf(H);return J>=0&&(B<0||J<B)?J:B},-1),_=Math.max(0,g-200),y=Math.min(l.length,g+500),x=l.lastIndexOf(`
463
+ LIMIT ?`),e(W.getOldSessions,"SELECT session_id FROM session_meta WHERE started_at < datetime('now', ? || ' days')")}insertEvent(e,r,n="PostToolUse",o){let s=Lk("sha256").update(r.data).digest("hex").slice(0,16).toUpperCase(),i=String(o?.projectDir??r.project_dir??"").trim(),a=String(o?.source??r.attribution_source??"unknown"),c=Number(o?.confidence??r.attribution_confidence??0),u=Number.isFinite(c)?Math.max(0,Math.min(1,c)):0,l=this.db.transaction(()=>{if(this.stmt(W.checkDuplicate).get(e,Wj,r.type,s))return;this.stmt(W.getEventCount).get(e).cnt>=Vj&&this.stmt(W.evictLowestPriority).run(e),this.stmt(W.insertEvent).run(e,r.type,r.category,r.priority,r.data,i,a,u,n,s),this.stmt(W.updateMetaLastEvent).run(e)});this.withRetry(()=>l())}getEvents(e,r){let n=r?.limit??1e3,o=r?.type,s=r?.minPriority;return o&&s!==void 0?this.stmt(W.getEventsByTypeAndPriority).all(e,o,s,n):o?this.stmt(W.getEventsByType).all(e,o,n):s!==void 0?this.stmt(W.getEventsByPriority).all(e,s,n):this.stmt(W.getEvents).all(e,n)}getEventCount(e){return this.stmt(W.getEventCount).get(e).cnt}getLatestAttributedProjectDir(e){return this.stmt(W.getLatestAttributedProject).get(e)?.project_dir||null}searchEvents(e,r,n,o){try{let s=e.replace(/[%_]/g,a=>"\\"+a),i=o??null;return this.stmt(W.searchEvents).all(n,s,s,i,i,r)}catch{return[]}}ensureSession(e,r){this.stmt(W.ensureSession).run(e,r)}getSessionStats(e){return this.stmt(W.getSessionStats).get(e)??null}incrementCompactCount(e){this.stmt(W.incrementCompactCount).run(e)}upsertResume(e,r,n){this.stmt(W.upsertResume).run(e,r,n??0)}getResume(e){return this.stmt(W.getResume).get(e)??null}markResumeConsumed(e){this.stmt(W.markResumeConsumed).run(e)}deleteSession(e){this.db.transaction(()=>{this.stmt(W.deleteEvents).run(e),this.stmt(W.deleteResume).run(e),this.stmt(W.deleteMeta).run(e)})()}cleanupOldSessions(e=7){let r=`-${e}`,n=this.stmt(W.getOldSessions).all(r);for(let{session_id:o}of n)this.deleteSession(o);return n.length}}});import{existsSync as Bh,readFileSync as Gj,readdirSync as Kj,statSync as Uk}from"node:fs";import{join as wi}from"node:path";import{homedir as Jj}from"node:os";function Hk(t,e=5,r,n){let o=[],s=n||wi(Jj(),".claude"),i=[];if(r){let u=wi(r,"CLAUDE.md");Bh(u)&&i.push({path:u,label:"project/CLAUDE.md"})}let a=wi(s,"CLAUDE.md");Bh(a)&&i.push({path:a,label:"user/CLAUDE.md"});let c=wi(s,"memory");if(Bh(c))try{let u=Kj(c).filter(l=>l.endsWith(".md"));for(let l of u)i.push({path:wi(c,l),label:`memory/${l}`})}catch(u){Zk&&process.stderr.write(`[ctx] auto-memory dir scan failed: ${u}
464
+ `)}for(let u of i){if(o.length>=e)break;try{try{if(Uk(u.path).size>1e6)continue}catch{continue}let l=Gj(u.path,"utf-8"),d=l.toLowerCase();for(let m of t){if(o.length>=e)break;let p=m.toLowerCase().split(/\s+/).filter(g=>g.length>=3);if(p.some(g=>{try{return new RegExp(`\\b${g.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`,"i").test(l)}catch{return d.includes(g)}})){let g=p.reduce((B,H)=>{let J=d.indexOf(H);return J>=0&&(B<0||J<B)?J:B},-1),_=Math.max(0,g-200),y=Math.min(l.length,g+500),x=l.lastIndexOf(`
465
465
 
466
466
  `,_),k=l.indexOf(`
467
467
 
468
- `,y);x>=0&&(_=x+2),k>=0&&(y=k);let E=l.slice(_,y).trim();o.push({title:`[auto-memory] ${u.label}`,content:E,source:u.label,origin:"auto-memory",timestamp:Lk(u.path).mtime.toISOString()});break}}}catch(l){Fk&&process.stderr.write(`[ctx] auto-memory file read failed: ${l}
469
- `)}}return o.slice(0,e)}var Fk,Zk=v(()=>{"use strict";Fk=process.env.DEBUG?.includes("context-mode")});function Hk(t){let{query:e,limit:r,store:n,sort:o="relevance",source:s,contentType:i,sessionDB:a,projectDir:c,configDir:u}=t,l=[],d=new Date().toISOString();try{let m=n.searchWithFallback(e,r,s,i);l.push(...m.map(f=>({title:f.title,content:f.content,source:f.source,origin:"current-session",timestamp:f.timestamp||d,rank:f.rank,matchLayer:f.matchLayer,highlighted:f.highlighted,contentType:f.contentType})))}catch(m){qh&&process.stderr.write(`[ctx] ContentStore search failed: ${m}
470
- `)}if(o==="timeline"){try{if(a){let m=a.searchEvents(e,r,c||"",s);l.push(...m.map(f=>({title:`[${f.category}] ${f.type}`,content:f.data,source:"prior-session",origin:"prior-session",timestamp:f.created_at})))}}catch(m){qh&&process.stderr.write(`[ctx] SessionDB search failed: ${m}
471
- `)}try{let m=Uk([e],r,c,u);l.push(...m)}catch(m){qh&&process.stderr.write(`[ctx] auto-memory search failed: ${m}
472
- `)}}for(let m of l)m.timestamp&&!m.timestamp.includes("T")&&(m.timestamp=m.timestamp.replace(" ","T")+"Z");return o==="timeline"&&l.sort((m,f)=>(m.timestamp||"").localeCompare(f.timestamp||"")),l.slice(0,r)}var qh,qk=v(()=>{"use strict";Zk();qh=process.env.DEBUG?.includes("context-mode")});function Kj(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function Jo(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function Yj(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function Wk(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function Bh(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function Vk(t){if(t.total_events===0)return[];let e=[];e.push("");let r=t.session_count===1?"1 session":`${t.session_count} sessions`;e.push(`${Wk(t.total_events)} events remembered across ${r} \u2014 searchable after compact & restart`),e.push("");let n=t.by_category.length>0?t.by_category[0].count:1;for(let o of t.by_category)e.push(` ${o.label.padEnd(18)} ${String(o.count).padStart(5)} ${Bh(o.count,n,30)}`);return e}function Xc(t,e,r){let n=[],o=Yj(t.session.uptime_min),s=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),i=t.savings.total_bytes_returned,a=t.savings.total_calls,c=s+i,u=c>0?s/c*100:0,l=Math.round(s/4);if(s===0){n.push(`context-mode ${o} ${a} calls`),n.push(""),a===0?n.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):n.push(`${Jo(i)} entered context | 0 tokens saved`),n.push(...Vk(t.projectMemory)),n.push("");let p=e?`v${e}`:"context-mode";return n.push(p),e&&r&&r!=="unknown"&&Kj(r,e)&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
473
- `)}n.push(`${Wk(l)} tokens saved \xB7 ${u.toFixed(1)}% reduction \xB7 ${o}`),n.push(""),n.push(`Without context-mode |${Bh(c,c)}| ${Jo(c)}`),n.push(`With context-mode |${Bh(i,c)}| ${Jo(i)}`),n.push(""),n.push(`${Jo(s)} kept out of your conversation. Never entered context.`),n.push("");let d=[`${a} calls`];t.cache&&t.cache.hits>0&&d.push(`${t.cache.hits} cache hits (+${Jo(t.cache.bytes_saved)})`),n.push(d.join(" \xB7 "));let m=t.savings.by_tool.filter(p=>p.calls>0);if(m.length>=2){n.push("");let p=m.map(h=>{let g=h.context_kb*1024,_=u<100?g/(1-u/100):g,y=Math.max(0,_-g);return{...h,returnedBytes:g,estimatedSaved:y}}).sort((h,g)=>g.estimatedSaved-h.estimatedSaved);for(let h of p){let g=h.tool.length>22?h.tool.slice(0,19)+"...":h.tool;n.push(` ${g.padEnd(22)} ${String(h.calls).padStart(4)} calls ${Jo(h.estimatedSaved).padStart(8)} saved`)}}n.push(...Vk(t.projectMemory)),n.push("");let f=e?`v${e}`:"context-mode";return n.push(f),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
474
- `)}var Bk,Jj,Yo,Gk=v(()=>{"use strict";Bk={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"},Jj={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won\u2019t ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"},Yo=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((F,_t)=>F+_t,0),s=Object.values(e.calls).reduce((F,_t)=>F+_t,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,l=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),d=Array.from(l).sort().map(F=>({tool:F,calls:e.calls[F]||0,context_kb:Math.round((e.bytesReturned[F]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[F]||0)/4)})),f=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let F=a+e.cacheBytesSaved,_t=F/Math.max(o,1),ze=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:ze,total_with_cache:F,total_savings_ratio:_t}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),y=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,x=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),k=x?!x.consumed:!1,E=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),B=new Map;for(let F of E){B.has(F.category)||B.set(F.category,new Set);let _t=B.get(F.category);if(_t.size<5){let ze=F.data;F.category==="file"?ze=F.data.split("/").pop()||F.data:(F.category==="prompt"||F.category==="user-prompt")&&(ze=ze.length>50?ze.slice(0,47)+"...":ze),ze.length>40&&(ze=ze.slice(0,37)+"..."),_t.add(ze)}}let H=g.map(F=>({category:F.category,count:F.cnt,label:Bk[F.category]||F.category,preview:B.get(F.category)?Array.from(B.get(F.category)).join(", "):"",why:Jj[F.category]||"Survives context resets"})),J=this.db.prepare("SELECT COUNT(*) as cnt, COUNT(DISTINCT session_id) as sessions FROM session_events").get(),Ze=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all().filter(F=>F.cnt>0).map(F=>({category:F.category,count:F.cnt,label:Bk[F.category]||F.category}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:d,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:p,session:{id:n,uptime_min:f},continuity:{total_events:h,by_category:H,compact_count:y,resume_ready:k},projectMemory:{total_events:J.cnt,session_count:J.sessions,by_category:Ze}}}}});var cw={};Me(cw,{extractSnippet:()=>eg,formatBatchQueryResults:()=>iw,positionsFromHighlight:()=>sw});import{createRequire as tw}from"node:module";import{createHash as Xj}from"node:crypto";import{existsSync as Oe,unlinkSync as Pr,readdirSync as Qj,readFileSync as Jh,writeFileSync as rw,rmSync as tu,mkdirSync as su,cpSync as eD,statSync as Kk,symlinkSync as tD,lstatSync as rD}from"node:fs";import{execSync as Ut}from"node:child_process";import{join as me,dirname as er,resolve as St,sep as nD}from"node:path";import{fileURLToPath as oD}from"node:url";import{homedir as Qo,tmpdir as Yh}from"node:os";import{request as sD}from"node:https";function iD(t){try{let e=Or();if(!Oe(e))return;let r=Qj(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=me(e,n);try{t.index({path:o,source:"session-events"}),Pr(o)}catch{}}}catch{}}function Or(){if(ru)return ru.getSessionDir();let t=me(Qo(),".claude","context-mode","sessions");return su(t,{recursive:!0}),t}function nw(){return process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.VSCODE_CWD||process.env.OPENCODE_PROJECT_DIR||process.env.PI_PROJECT_DIR||process.env.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function ki(){let e=nw().replace(/\\/g,"/");return Xj("sha256").update(e).digest("hex").slice(0,16)}function Kh(){let t=ki(),e=Or(),r=me(er(e),"content");return su(r,{recursive:!0}),me(r,`${t}.db`)}function Kn(){if(!hr){let t=Kh();hr=new Jc(t);try{let e=er(Kh());Dh(e,14),hr.cleanupStaleSources(14);let r=me(Qo(),".context-mode","content");Oe(r)&&Dh(r,0)}catch{}jh()}return iD(hr),hr}async function uD(){return new Promise(t=>{let e=sD("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function lD(){let t=ru?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function dD(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function pD(){return!on||on==="unknown"?!1:dD(on,nn)}function mD(){if(!pD())return!1;let t=Date.now();if(Qc>=aD){if(t-Jk<cD)return!1;Qc=0}return Qc===0&&(Jk=t),Qc++,!0}function fD(){if(!Yk){Yk=!0;try{let t=St(Qo(),".claude","plugins","installed_plugins.json");if(!Oe(t))return;let e=JSON.parse(Jh(t,"utf-8")),r=St(Qo(),".claude","plugins","cache"),n=Oe(St(bt,"package.json"))?bt:er(bt);for(let[o,s]of Object.entries(e.plugins??{}))if(o==="context-mode@context-mode")for(let i of s){let a=i.installPath;if(!a||Oe(a)||!St(a).startsWith(r+nD))continue;try{rD(a).isSymbolicLink()&&Pr(a)}catch{}let c=er(a);Oe(c)||su(c,{recursive:!0}),Oe(n)&&tD(n,a,process.platform==="win32"?"junction":void 0)}}catch{}}}function Z(t,e){if(fD(),mD()&&e.content.length>0){let n=lD();e.content[0].text=`\u26A0\uFE0F context-mode v${nn} outdated \u2192 v${on} available. Upgrade: ${n}
468
+ `,y);x>=0&&(_=x+2),k>=0&&(y=k);let E=l.slice(_,y).trim();o.push({title:`[auto-memory] ${u.label}`,content:E,source:u.label,origin:"auto-memory",timestamp:Uk(u.path).mtime.toISOString()});break}}}catch(l){Zk&&process.stderr.write(`[ctx] auto-memory file read failed: ${l}
469
+ `)}}return o.slice(0,e)}var Zk,qk=v(()=>{"use strict";Zk=process.env.DEBUG?.includes("context-mode")});function Bk(t){let{query:e,limit:r,store:n,sort:o="relevance",source:s,contentType:i,sessionDB:a,projectDir:c,configDir:u}=t,l=[],d=new Date().toISOString();try{let m=n.searchWithFallback(e,r,s,i);l.push(...m.map(f=>({title:f.title,content:f.content,source:f.source,origin:"current-session",timestamp:f.timestamp||d,rank:f.rank,matchLayer:f.matchLayer,highlighted:f.highlighted,contentType:f.contentType})))}catch(m){Vh&&process.stderr.write(`[ctx] ContentStore search failed: ${m}
470
+ `)}if(o==="timeline"){try{if(a){let m=a.searchEvents(e,r,c||"",s);l.push(...m.map(f=>({title:`[${f.category}] ${f.type}`,content:f.data,source:"prior-session",origin:"prior-session",timestamp:f.created_at})))}}catch(m){Vh&&process.stderr.write(`[ctx] SessionDB search failed: ${m}
471
+ `)}try{let m=Hk([e],r,c,u);l.push(...m)}catch(m){Vh&&process.stderr.write(`[ctx] auto-memory search failed: ${m}
472
+ `)}}for(let m of l)m.timestamp&&!m.timestamp.includes("T")&&(m.timestamp=m.timestamp.replace(" ","T")+"Z");return o==="timeline"&&l.sort((m,f)=>(m.timestamp||"").localeCompare(f.timestamp||"")),l.slice(0,r)}var Vh,Vk=v(()=>{"use strict";qk();Vh=process.env.DEBUG?.includes("context-mode")});function Yj(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function Xo(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function Qj(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function Kk(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function Wh(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function Gk(t){if(t.total_events===0)return[];let e=[];e.push("");let r=t.session_count===1?"1 session":`${t.session_count} sessions`;e.push(`${Kk(t.total_events)} events remembered across ${r} \u2014 searchable after compact & restart`),e.push("");let n=t.by_category.length>0?t.by_category[0].count:1;for(let o of t.by_category)e.push(` ${o.label.padEnd(18)} ${String(o.count).padStart(5)} ${Wh(o.count,n,30)}`);return e}function eu(t,e,r){let n=[],o=Qj(t.session.uptime_min),s=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),i=t.savings.total_bytes_returned,a=t.savings.total_calls,c=s+i,u=c>0?s/c*100:0,l=Math.round(s/4);if(s===0){n.push(`context-mode ${o} ${a} calls`),n.push(""),a===0?n.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):n.push(`${Xo(i)} entered context | 0 tokens saved`),n.push(...Gk(t.projectMemory)),n.push("");let p=e?`v${e}`:"context-mode";return n.push(p),e&&r&&r!=="unknown"&&Yj(r,e)&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
473
+ `)}n.push(`${Kk(l)} tokens saved \xB7 ${u.toFixed(1)}% reduction \xB7 ${o}`),n.push(""),n.push(`Without context-mode |${Wh(c,c)}| ${Xo(c)}`),n.push(`With context-mode |${Wh(i,c)}| ${Xo(i)}`),n.push(""),n.push(`${Xo(s)} kept out of your conversation. Never entered context.`),n.push("");let d=[`${a} calls`];t.cache&&t.cache.hits>0&&d.push(`${t.cache.hits} cache hits (+${Xo(t.cache.bytes_saved)})`),n.push(d.join(" \xB7 "));let m=t.savings.by_tool.filter(p=>p.calls>0);if(m.length>=2){n.push("");let p=m.map(h=>{let g=h.context_kb*1024,_=u<100?g/(1-u/100):g,y=Math.max(0,_-g);return{...h,returnedBytes:g,estimatedSaved:y}}).sort((h,g)=>g.estimatedSaved-h.estimatedSaved);for(let h of p){let g=h.tool.length>22?h.tool.slice(0,19)+"...":h.tool;n.push(` ${g.padEnd(22)} ${String(h.calls).padStart(4)} calls ${Xo(h.estimatedSaved).padStart(8)} saved`)}}n.push(...Gk(t.projectMemory)),n.push("");let f=e?`v${e}`:"context-mode";return n.push(f),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
474
+ `)}var Wk,Xj,Qo,Jk=v(()=>{"use strict";Wk={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"},Xj={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won\u2019t ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"},Qo=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((F,yt)=>F+yt,0),s=Object.values(e.calls).reduce((F,yt)=>F+yt,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,l=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),d=Array.from(l).sort().map(F=>({tool:F,calls:e.calls[F]||0,context_kb:Math.round((e.bytesReturned[F]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[F]||0)/4)})),f=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let F=a+e.cacheBytesSaved,yt=F/Math.max(o,1),je=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:je,total_with_cache:F,total_savings_ratio:yt}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),y=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,x=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),k=x?!x.consumed:!1,E=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),B=new Map;for(let F of E){B.has(F.category)||B.set(F.category,new Set);let yt=B.get(F.category);if(yt.size<5){let je=F.data;F.category==="file"?je=F.data.split("/").pop()||F.data:(F.category==="prompt"||F.category==="user-prompt")&&(je=je.length>50?je.slice(0,47)+"...":je),je.length>40&&(je=je.slice(0,37)+"..."),yt.add(je)}}let H=g.map(F=>({category:F.category,count:F.cnt,label:Wk[F.category]||F.category,preview:B.get(F.category)?Array.from(B.get(F.category)).join(", "):"",why:Xj[F.category]||"Survives context resets"})),J=this.db.prepare("SELECT COUNT(*) as cnt, COUNT(DISTINCT session_id) as sessions FROM session_events").get(),He=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all().filter(F=>F.cnt>0).map(F=>({category:F.category,count:F.cnt,label:Wk[F.category]||F.category}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:d,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:p,session:{id:n,uptime_min:f},continuity:{total_events:h,by_category:H,compact_count:y,resume_ready:k},projectMemory:{total_events:J.cnt,session_count:J.sessions,by_category:He}}}}});var lw={};Le(lw,{extractSnippet:()=>rg,formatBatchQueryResults:()=>cw,positionsFromHighlight:()=>aw});import{createRequire as nw}from"node:module";import{createHash as eD}from"node:crypto";import{existsSync as Ce,unlinkSync as Or,readdirSync as tD,readFileSync as Xh,writeFileSync as ow,rmSync as nu,mkdirSync as au,cpSync as rD,statSync as Yk,symlinkSync as nD,lstatSync as oD}from"node:fs";import{execSync as Zt}from"node:child_process";import{join as me,dirname as tr,resolve as bt,sep as sD}from"node:path";import{fileURLToPath as iD}from"node:url";import{homedir as ts,tmpdir as Qh}from"node:os";import{request as aD}from"node:https";function cD(t){try{let e=Ir();if(!Ce(e))return;let r=tD(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=me(e,n);try{t.index({path:o,source:"session-events"}),Or(o)}catch{}}}catch{}}function Ir(){if(ou)return ou.getSessionDir();let t=me(ts(),".claude","context-mode","sessions");return au(t,{recursive:!0}),t}function sw(){return process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.VSCODE_CWD||process.env.OPENCODE_PROJECT_DIR||process.env.PI_PROJECT_DIR||process.env.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function $i(){let e=sw().replace(/\\/g,"/");return eD("sha256").update(e).digest("hex").slice(0,16)}function Yh(){let t=$i(),e=Ir(),r=me(tr(e),"content");return au(r,{recursive:!0}),me(r,`${t}.db`)}function Yn(){if(!gr){let t=Yh();gr=new Xc(t);try{let e=tr(Yh());Lh(e,14),gr.cleanupStaleSources(14);let r=me(ts(),".context-mode","content");Ce(r)&&Lh(r,0)}catch{}Mh()}return cD(gr),gr}async function dD(){return new Promise(t=>{let e=aD("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function pD(){let t=ou?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function mD(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function fD(){return!an||an==="unknown"?!1:mD(an,sn)}function hD(){if(!fD())return!1;let t=Date.now();if(tu>=uD){if(t-Xk<lD)return!1;tu=0}return tu===0&&(Xk=t),tu++,!0}function gD(){if(!Qk){Qk=!0;try{let t=bt(ts(),".claude","plugins","installed_plugins.json");if(!Ce(t))return;let e=JSON.parse(Xh(t,"utf-8")),r=bt(ts(),".claude","plugins","cache"),n=Ce(bt(kt,"package.json"))?kt:tr(kt);for(let[o,s]of Object.entries(e.plugins??{}))if(o==="context-mode@context-mode")for(let i of s){let a=i.installPath;if(!a||Ce(a)||!bt(a).startsWith(r+sD))continue;try{oD(a).isSymbolicLink()&&Or(a)}catch{}let c=tr(a);Ce(c)||au(c,{recursive:!0}),Ce(n)&&nD(n,a,process.platform==="win32"?"junction":void 0)}}catch{}}}function Z(t,e){if(gD(),hD()&&e.content.length>0){let n=pD();e.content[0].text=`\u26A0\uFE0F context-mode v${sn} outdated \u2192 v${an} available. Upgrade: ${n}
475
475
 
476
- `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return De.calls[t]=(De.calls[t]||0)+1,De.bytesReturned[t]=(De.bytesReturned[t]||0)+r,e}function tr(t){De.bytesIndexed+=t}function Qh(t,e){try{let r=Lh(process.env.CLAUDE_PROJECT_DIR),n=Fh(t,r);if(n.decision==="deny")return Z(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function ow(t,e,r){try{let n=Ik(t,e);if(n.length===0)return null;let o=Lh(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Fh(s,o);if(i.decision==="deny")return Z(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 hD(t,e){try{let r=process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=Ok("Read",r),o=Ck(t,n,process.platform==="win32",r);if(o.denied)return Z(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}function sw(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===yD){for(e.push(r),n++;n<t.length&&t[n]!==xD;)r++,n++;n<t.length&&n++}else r++,n++;return e}function eg(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of sw(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let m=l.indexOf(d);for(;m!==-1;)o.push(m),m=l.indexOf(d,m+1)}}if(o.length===0)return t.slice(0,r)+`
476
+ `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return Me.calls[t]=(Me.calls[t]||0)+1,Me.bytesReturned[t]=(Me.bytesReturned[t]||0)+r,e}function rr(t){Me.bytesIndexed+=t}function tg(t,e){try{let r=Uh(process.env.CLAUDE_PROJECT_DIR),n=Zh(t,r);if(n.decision==="deny")return Z(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function iw(t,e,r){try{let n=Nk(t,e);if(n.length===0)return null;let o=Uh(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Zh(s,o);if(i.decision==="deny")return Z(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 _D(t,e){try{let r=process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=Ik("Read",r),o=Ak(t,n,process.platform==="win32",r);if(o.denied)return Z(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}function aw(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===vD){for(e.push(r),n++;n<t.length&&t[n]!==SD;)r++,n++;n<t.length&&n++}else r++,n++;return e}function rg(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of aw(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let m=l.indexOf(d);for(;m!==-1;)o.push(m),m=l.indexOf(d,m+1)}}if(o.length===0)return t.slice(0,r)+`
477
477
  \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(`
478
478
 
479
- `)}function iw(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
479
+ `)}function cw(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
480
480
  (output cap reached \u2014 use ctx_search(queries: ["${i}"]) for details)
481
- `);continue}let a=t.searchWithFallback(i,3,r,void 0,"exact");if(o.push(`## ${i}`),o.push(""),a.length>0){for(let c of a){let u=eg(c.content,i,3e3,c.highlighted);o.push(`### ${c.title}`),o.push(u),o.push(""),s+=u.length+c.title.length}continue}o.push("No matching sections found."),o.push("")}return o.push("\n> **Tip:** Results are scoped to this batch only. To search across all indexed sources, use `ctx_search(queries: [...])`."),o}function aw(t,e){let r=Kn();tr(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
482
- Use ctx_search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}function Xo(t,e,r,n=5){let o=t.split(`
483
- `).length,s=Buffer.byteLength(t),i=Kn(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use ctx_search(queries: [...]) to explore the indexed content."),d.join(`
481
+ `);continue}let a=t.searchWithFallback(i,3,r,void 0,"exact");if(o.push(`## ${i}`),o.push(""),a.length>0){for(let c of a){let u=rg(c.content,i,3e3,c.highlighted);o.push(`### ${c.title}`),o.push(u),o.push(""),s+=u.length+c.title.length}continue}o.push("No matching sections found."),o.push("")}return o.push("\n> **Tip:** Results are scoped to this batch only. To search across all indexed sources, use `ctx_search(queries: [...])`."),o}function uw(t,e){let r=Yn();rr(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
482
+ Use ctx_search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}function es(t,e,r,n=5){let o=t.split(`
483
+ `).length,s=Buffer.byteLength(t),i=Yn(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use ctx_search(queries: [...]) to explore the indexed content."),d.join(`
484
484
  `)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let m=d.content.split(`
485
485
  `)[0].slice(0,120);l.push(` - ${d.title}: ${m}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use ctx_search(queries: [...]) to retrieve full content of any section."),l.join(`
486
- `)}function tg(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function SD(t){let e=tg(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function bD(){return Wh||(Wh=tw(import.meta.url).resolve("turndown")),Wh}function kD(){return Gh||(Gh=tw(import.meta.url).resolve("turndown-plugin-gfm")),Gh}function wD(t,e){let r=JSON.stringify(bD()),n=JSON.stringify(kD()),o=JSON.stringify(e);return`
486
+ `)}function ng(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function kD(t){let e=ng(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}function wD(){return Kh||(Kh=nw(import.meta.url).resolve("turndown")),Kh}function $D(){return Jh||(Jh=nw(import.meta.url).resolve("turndown-plugin-gfm")),Jh}function ED(t,e){let r=JSON.stringify(wD()),n=JSON.stringify($D()),o=JSON.stringify(e);return`
487
487
  const TurndownService = require(${r});
488
488
  const { gfm } = require(${n});
489
489
  const fs = require('fs');
@@ -529,12 +529,12 @@ async function main() {
529
529
  emit('text', text);
530
530
  }
531
531
  main();
532
- `}function ew(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function $D(){let t=jh();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?Yh():"/tmp",r=me(e,`context-mode-mcp-ready-${process.pid}`),n=()=>{wi.cleanupBackgrounded(),hr&&hr.close();try{Pr(Xh)}catch{}try{Pr(r)}catch{}if(Rr&&Rr.pid&&!Rr.killed)try{Rr.kill("SIGTERM")}catch{}},o=async()=>{n(),process.exit(0)};process.on("exit",n),process.on("SIGINT",()=>{o()}),process.on("SIGTERM",()=>{o()}),zk({onShutdown:()=>o()});let s=new Hc;await Je.connect(s);try{rw(r,String(process.pid))}catch{}try{let{detectPlatform:i,getAdapter:a}=await Promise.resolve().then(()=>(al(),z_)),c=Je.server.getClientVersion(),u=i(c??void 0);ru=await a(u.platform),c&&console.error(`MCP client: ${c.name} v${c.version} \u2192 ${u.platform}`)}catch{}uD().then(i=>{i!=="unknown"&&(on=i)}),console.error(`Context Mode MCP server v${nn} running on stdio`),console.error(`Detected runtimes:
533
- ${ji(iu)}`),Xn()||(console.error(`
534
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var bt,nn,iu,eu,Je,wi,Xh,hr,ru,Rr,De,on,Qc,Jk,aD,cD,Yk,gD,_D,yD,xD,nu,ou,Gn,Vh,vD,Xk,Qk,Wh,Gh,uw=v(()=>{"use strict";sk();uk();Th();Oh();$k();Ak();Mi();Nk();jk();Mk();qk();Si();Gk();zn();bt=er(oD(import.meta.url)),nn=(()=>{for(let t of["../package.json","./package.json"]){let e=St(bt,t);if(Oe(e))try{return JSON.parse(Jh(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
532
+ `}function rw(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}async function TD(){let t=Mh();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=process.platform==="win32"?Qh():"/tmp",r=me(e,`context-mode-mcp-ready-${process.pid}`),n=()=>{Ei.cleanupBackgrounded(),gr&&gr.close();try{Or(eg)}catch{}try{Or(r)}catch{}if(Cr&&Cr.pid&&!Cr.killed)try{Cr.kill("SIGTERM")}catch{}},o=async()=>{n(),process.exit(0)};process.on("exit",n),process.on("SIGINT",()=>{o()}),process.on("SIGTERM",()=>{o()}),Dk({onShutdown:()=>o()});let s=new Bc;await Ye.connect(s);try{ow(r,String(process.pid))}catch{}try{let{detectPlatform:i,getAdapter:a}=await Promise.resolve().then(()=>(ul(),D_)),c=Ye.server.getClientVersion(),u=i(c??void 0);ou=await a(u.platform),c&&console.error(`MCP client: ${c.name} v${c.version} \u2192 ${u.platform}`)}catch{}dD().then(i=>{i!=="unknown"&&(an=i)}),console.error(`Context Mode MCP server v${sn} running on stdio`),console.error(`Detected runtimes:
533
+ ${Mi(cu)}`),eo()||(console.error(`
534
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}var kt,sn,cu,ru,Ye,Ei,eg,gr,ou,Cr,Me,an,tu,Xk,uD,lD,Qk,yD,xD,vD,SD,su,iu,Jn,Gh,bD,ew,tw,Kh,Jh,dw=v(()=>{"use strict";ak();dk();Rh();Ih();Tk();zk();Fi();jk();Mk();Fk();Vk();xr();ki();Jk();Dn();kt=tr(iD(import.meta.url)),sn=(()=>{for(let t of["../package.json","./package.json"]){let e=bt(kt,t);if(Ce(e))try{return JSON.parse(Xh(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
535
535
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
536
- `)});iu=Yn(),eu=Di(iu),Je=new Uc({name:"context-mode",version:nn});Je.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Je.server.setRequestHandler(wo,async()=>({prompts:[]}));Je.server.setRequestHandler(bo,async()=>({resources:[]}));Je.server.setRequestHandler(ko,async()=>({resourceTemplates:[]}));wi=new qo({runtimes:iu,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Xh=me(Yh(),`cm-fs-preload-${process.pid}.js`);rw(Xh,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
537
- `);hr=null;ru=null,Rr=null;De={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},on=null,Qc=0,Jk=0,aD=3,cD=3600*1e3;Yk=!1;gD=eu.join(", "),_D=Xn()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",yD="",xD="";Je.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.${_D} Available: ${gD}.
536
+ `)});cu=Qn(),ru=Li(cu),Ye=new Hc({name:"context-mode",version:sn});Ye.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Ye.server.setRequestHandler(Eo,async()=>({prompts:[]}));Ye.server.setRequestHandler(wo,async()=>({resources:[]}));Ye.server.setRequestHandler($o,async()=>({resourceTemplates:[]}));Ei=new Vo({runtimes:cu,projectRoot:process.env.CLAUDE_PROJECT_DIR}),eg=me(Qh(),`cm-fs-preload-${process.pid}.js`);ow(eg,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
537
+ `);gr=null;ou=null,Cr=null;Me={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},an=null,tu=0,Xk=0,uD=3,lD=3600*1e3;Qk=!1;yD=ru.join(", "),xD=eo()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",vD="",SD="";Ye.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.${xD} Available: ${yD}.
538
538
 
539
539
  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.
540
540
 
@@ -542,7 +542,7 @@ THINK IN CODE: When you need to analyze, count, filter, compare, or process data
542
542
 
543
543
  When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({language:q.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:q.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:q.coerce.number().optional().default(3e4).describe("Max execution time in ms"),background:q.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:q.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use ctx_search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
544
544
 
545
- 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=Qh(e,"execute");if(s)return s}else{let s=ow(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
545
+ 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=tg(e,"execute");if(s)return s}else{let s=iw(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
546
546
  // FS read instrumentation \u2014 count bytes read via fs.readFileSync/readFile
547
547
  let __cm_fs=0;
548
548
  process.on('exit',()=>{if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch{}});
@@ -601,20 +601,20 @@ ${e}
601
601
  }
602
602
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
603
603
  setInterval(()=>{},2147483647);`:""}
604
- })(typeof require!=='undefined'?require:null);`);let i=await wi.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);a&&(De.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,""));let c=i.stderr?.match(/__CM_FS__:(\d+)/);if(c&&(De.bytesSandboxed+=parseInt(c[1]),i.stderr=i.stderr.replace(/\n?__CM_FS__:\d+\n?/g,"")),i.timedOut){let l=i.stdout?.trim();return i.backgrounded&&l?Z("ctx_execute",{content:[{type:"text",text:`${l}
604
+ })(typeof require!=='undefined'?require:null);`);let i=await Ei.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);a&&(Me.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,""));let c=i.stderr?.match(/__CM_FS__:(\d+)/);if(c&&(Me.bytesSandboxed+=parseInt(c[1]),i.stderr=i.stderr.replace(/\n?__CM_FS__:\d+\n?/g,"")),i.timedOut){let l=i.stdout?.trim();return i.backgrounded&&l?Z("ctx_execute",{content:[{type:"text",text:`${l}
605
605
 
606
606
  _(process backgrounded after ${r}ms \u2014 still running)_`}]}):l?Z("ctx_execute",{content:[{type:"text",text:`${l}
607
607
 
608
608
  _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):Z("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
609
609
 
610
610
  stderr:
611
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=Uh({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>nu?(tr(Buffer.byteLength(d)),Z("ctx_execute",{content:[{type:"text",text:Xo(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>ou?(tr(Buffer.byteLength(d)),Z("ctx_execute",{content:[{type:"text",text:Xo(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Z("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>nu?(tr(Buffer.byteLength(u)),Z("ctx_execute",{content:[{type:"text",text:Xo(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>ou?Z("ctx_execute",aw(u,`execute:${t}`)):Z("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return Z("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});nu=5e3,ou=102400;Je.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.
611
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=Hh({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>su?(rr(Buffer.byteLength(d)),Z("ctx_execute",{content:[{type:"text",text:es(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>iu?(rr(Buffer.byteLength(d)),Z("ctx_execute",{content:[{type:"text",text:es(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Z("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>su?(rr(Buffer.byteLength(u)),Z("ctx_execute",{content:[{type:"text",text:es(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>iu?Z("ctx_execute",uw(u,`execute:${t}`)):Z("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return Z("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});su=5e3,iu=102400;Ye.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.
612
612
 
613
613
  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.
614
614
 
615
615
  THINK IN CODE: Write code that processes FILE_CONTENT and console.log() only the answer. Don't read files into context to analyze mentally. Write robust, pure JavaScript \u2014 no npm deps, try/catch, null-safe. Node.js + Bun compatible.
616
616
 
617
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({path:q.string().describe("Absolute file path or relative to project root"),language:q.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:q.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:q.coerce.number().optional().default(3e4).describe("Max execution time in ms"),intent:q.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=hD(t,"execute_file");if(s)return s;if(e==="shell"){let i=Qh(r,"execute_file");if(i)return i}else{let i=ow(r,e,"execute_file");if(i)return i}try{let i=await wi.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return Z("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}=Uh({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>nu?(tr(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:Xo(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>ou?(tr(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:Xo(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):Z("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)>nu?(tr(Buffer.byteLength(a)),Z("ctx_execute_file",{content:[{type:"text",text:Xo(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>ou?Z("ctx_execute_file",aw(a,`file:${t}`)):Z("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return Z("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Je.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.
617
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({path:q.string().describe("Absolute file path or relative to project root"),language:q.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:q.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:q.coerce.number().optional().default(3e4).describe("Max execution time in ms"),intent:q.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=_D(t,"execute_file");if(s)return s;if(e==="shell"){let i=tg(r,"execute_file");if(i)return i}else{let i=iw(r,e,"execute_file");if(i)return i}try{let i=await Ei.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return Z("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}=Hh({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>su?(rr(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:es(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>iu?(rr(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:es(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):Z("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>su?(rr(Buffer.byteLength(a)),Z("ctx_execute_file",{content:[{type:"text",text:es(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>iu?Z("ctx_execute_file",uw(a,`file:${t}`)):Z("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return Z("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Ye.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.
618
618
 
619
619
  WHEN TO USE:
620
620
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -626,27 +626,27 @@ WHEN TO USE:
626
626
 
627
627
  After indexing, use 'ctx_search' to retrieve specific sections on-demand.
628
628
  When \`path\` is provided, a content hash is stored for automatic stale detection in search results.
629
- Do NOT use for: log files, test output, CSV, build output \u2014 use 'ctx_execute_file' for those.`,inputSchema:q.object({content:q.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:q.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:q.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return Z("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)tr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");tr(s.readFileSync(e).byteLength)}catch{}let o=Kn().index({content:t,path:e,source:r});return Z("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
630
- Use ctx_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 Z("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});Gn=0,Vh=Date.now(),vD=6e4,Xk=3,Qk=8;Je.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call. File-backed sources are auto-refreshed when the source file changes.
629
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'ctx_execute_file' for those.`,inputSchema:q.object({content:q.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:q.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:q.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return Z("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)rr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");rr(s.readFileSync(e).byteLength)}catch{}let o=Yn().index({content:t,path:e,source:r});return Z("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
630
+ Use ctx_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 Z("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});Jn=0,Gh=Date.now(),bD=6e4,ew=3,tw=8;Ye.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call. File-backed sources are auto-refreshed when the source file changes.
631
631
 
632
632
  TIPS: 2-4 specific terms per query. Use 'source' to scope results.
633
633
 
634
634
  SESSION STATE: If skills, roles, or decisions were set earlier in this conversation, they are still active. Do not discard or contradict them.
635
635
 
636
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({queries:q.preprocess(tg,q.array(q.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:q.number().optional().default(3).describe("Results per query (default: 3)"),source:q.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:q.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'."),sort:q.enum(["relevance","timeline"]).optional().default("relevance").describe("Sort mode. 'relevance' (default): BM25 ranked, current session only. 'timeline': chronological across current session, prior sessions, and auto-memory.")})},async t=>{try{let e=Kn(),r=t.sort||"relevance";if(r!=="timeline"&&e.getStats().chunks===0)return Z("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
636
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({queries:q.preprocess(ng,q.array(q.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:q.number().optional().default(3).describe("Results per query (default: 3)"),source:q.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:q.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'."),sort:q.enum(["relevance","timeline"]).optional().default("relevance").describe("Sort mode. 'relevance' (default): BM25 ranked, current session only. 'timeline': chronological across current session, prior sessions, and auto-memory.")})},async t=>{try{let e=Yn(),r=t.sort||"relevance";if(r!=="timeline"&&e.getStats().chunks===0)return Z("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
637
637
 
638
638
  ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
639
639
  \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
640
640
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
641
641
  \u2022 ctx_index(content, source) \u2014 manually index text content
642
642
 
643
- After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let n=t,o=[];if(Array.isArray(n.queries)&&n.queries.length>0?o.push(...n.queries):typeof n.query=="string"&&n.query.length>0&&o.push(n.query),o.length===0)return Z("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:s=3,source:i,contentType:a}=t,c=Date.now();if(c-Vh>vD&&(Gn=0,Vh=c),Gn++,Gn>Qk)return Z("ctx_search",{content:[{type:"text",text:`BLOCKED: ${Gn} search calls in ${Math.round((c-Vh)/1e3)}s. You're flooding context. STOP making individual search calls. Use ctx_batch_execute(commands, queries) for your next research step.`}],isError:!0});let u=Gn>Xk?1:Math.min(s,2),l=40*1024,d=0,m=[],f=null;if(r==="timeline")try{let g=Or(),_=me(g,`${ki()}.db`);Oe(_)&&(f=new Yc({dbPath:_}))}catch{}let p=process.env.CLAUDE_CONFIG_DIR||me(Qo(),".claude");try{for(let g of o){if(d>l){m.push(`## ${g}
643
+ After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let n=t,o=[];if(Array.isArray(n.queries)&&n.queries.length>0?o.push(...n.queries):typeof n.query=="string"&&n.query.length>0&&o.push(n.query),o.length===0)return Z("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:s=3,source:i,contentType:a}=t,c=Date.now();if(c-Gh>bD&&(Jn=0,Gh=c),Jn++,Jn>tw)return Z("ctx_search",{content:[{type:"text",text:`BLOCKED: ${Jn} search calls in ${Math.round((c-Gh)/1e3)}s. You're flooding context. STOP making individual search calls. Use ctx_batch_execute(commands, queries) for your next research step.`}],isError:!0});let u=Jn>ew?1:Math.min(s,2),l=40*1024,d=0,m=[],f=null;if(r==="timeline")try{let g=Ir(),_=me(g,`${$i()}.db`);Ce(_)&&(f=new Qc({dbPath:_}))}catch{}let p=process.env.CLAUDE_CONFIG_DIR||me(ts(),".claude");try{for(let g of o){if(d>l){m.push(`## ${g}
644
644
  (output cap reached)
645
- `);continue}let _;if(r==="timeline"?_=Hk({query:g,limit:u,store:e,sort:r,source:i,contentType:a,sessionDB:f,projectDir:nw(),configDir:p}):_=e.searchWithFallback(g,u,i,a),_.length===0){m.push(`## ${g}
646
- No results found.`);continue}let y=_.map((x,k)=>{let E=x.origin||"current-session",B=x.timestamp?x.timestamp.slice(0,16).replace("T"," "):"",H=`--- [${E}${B?" | "+B:""} | ${x.source}] ---`,J=`### ${x.title}`,tt=eg(x.content,g,1500,x.highlighted);return`${H}
645
+ `);continue}let _;if(r==="timeline"?_=Bk({query:g,limit:u,store:e,sort:r,source:i,contentType:a,sessionDB:f,projectDir:sw(),configDir:p}):_=e.searchWithFallback(g,u,i,a),_.length===0){m.push(`## ${g}
646
+ No results found.`);continue}let y=_.map((x,k)=>{let E=x.origin||"current-session",B=x.timestamp?x.timestamp.slice(0,16).replace("T"," "):"",H=`--- [${E}${B?" | "+B:""} | ${x.source}] ---`,J=`### ${x.title}`,rt=rg(x.content,g,1500,x.highlighted);return`${H}
647
647
  ${J}
648
648
 
649
- ${tt}`}).join(`
649
+ ${rt}`}).join(`
650
650
 
651
651
  `);m.push(`## ${g}
652
652
 
@@ -656,23 +656,23 @@ ${y}`),d+=y.length}}finally{try{f?.close()}catch{}}let h=m.join(`
656
656
 
657
657
  `);if(e.lastRefreshCount>0&&(h=`> Auto-refreshed ${e.lastRefreshCount} stale source${e.lastRefreshCount>1?"s":""} (file changed since indexing).
658
658
 
659
- `+h),Gn>=Xk&&(h+=`
659
+ `+h),Jn>=ew&&(h+=`
660
660
 
661
- \u26A0 search call #${Gn}/${Qk} in this window. Results limited to ${u}/query. Batch queries: ctx_search(queries: ["q1","q2","q3"]) or use ctx_batch_execute.`),h.trim().length===0){let g=e.listSources(),_=g.length>0?`
662
- Indexed sources: ${g.map(y=>`"${y.label}" (${y.chunkCount} sections)`).join(", ")}`:"";return Z("ctx_search",{content:[{type:"text",text:`No results found.${_}`}]})}return Z("ctx_search",{content:[{type:"text",text:h}]})}catch(e){let r=e instanceof Error?e.message:String(e);return Z("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});Wh=null,Gh=null;Je.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 ctx_search() for deeper lookups.
661
+ \u26A0 search call #${Jn}/${tw} in this window. Results limited to ${u}/query. Batch queries: ctx_search(queries: ["q1","q2","q3"]) or use ctx_batch_execute.`),h.trim().length===0){let g=e.listSources(),_=g.length>0?`
662
+ Indexed sources: ${g.map(y=>`"${y.label}" (${y.chunkCount} sections)`).join(", ")}`:"";return Z("ctx_search",{content:[{type:"text",text:`No results found.${_}`}]})}return Z("ctx_search",{content:[{type:"text",text:h}]})}catch(e){let r=e instanceof Error?e.message:String(e);return Z("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});Kh=null,Jh=null;Ye.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 ctx_search() for deeper lookups.
663
663
 
664
664
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
665
665
 
666
666
  Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.
667
667
 
668
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({url:q.string().describe("The URL to fetch and index"),source:q.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:q.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=Kn(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),m=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=i.chunkCount*1600;return De.cacheHits++,De.cacheBytesSaved+=f,Z("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
668
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({url:q.string().describe("The URL to fetch and index"),source:q.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:q.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=Yn(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),m=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=i.chunkCount*1600;return Me.cacheHits++,Me.cacheBytesSaved+=f,Z("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
669
669
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
670
670
 
671
671
  You MUST call ctx_search() to answer questions about this content \u2014 this cached response contains no content.
672
- Use: ctx_search(queries: [...], source: "${i.label}")`}]})}}}let n=me(Yh(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=wD(t,n),s=await wi.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=Kn(),a=(s.stdout||"").trim(),c;try{c=Jh(n,"utf-8").trim()}catch{return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});tr(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
672
+ Use: ctx_search(queries: [...], source: "${i.label}")`}]})}}}let n=me(Qh(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=ED(t,n),s=await Ei.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=Yn(),a=(s.stdout||"").trim(),c;try{c=Xh(n,"utf-8").trim()}catch{return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});rr(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
673
673
 
674
674
  \u2026[truncated \u2014 use ctx_search() for full content]`:c,m=(Buffer.byteLength(c)/1024).toFixed(1),f=[`Fetched and indexed **${u.totalChunks} sections** (${m}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use ctx_search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
675
- `);return Z("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(o){let s=o instanceof Error?o.message:String(o);return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{tu(n)}catch{}}});Je.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.
675
+ `);return Z("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(o){let s=o instanceof Error?o.message:String(o);return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{nu(n)}catch{}}});Ye.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.
676
676
 
677
677
  THIS IS THE PRIMARY TOOL. Use this instead of multiple ctx_execute() calls.
678
678
 
@@ -681,64 +681,64 @@ Provide all commands to run and all queries to search \u2014 everything happens
681
681
 
682
682
  THINK IN CODE: When commands produce data you need to analyze, add processing commands that filter and summarize. Don't pull raw output into context \u2014 let the sandbox do the work.
683
683
 
684
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({commands:q.preprocess(SD,q.array(q.object({label:q.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:q.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:q.preprocess(tg,q.array(q.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed.")),timeout:q.coerce.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=Qh(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1,i=`NODE_OPTIONS="--require ${Xh}" `;for(let x of t){let k=Date.now()-o,E=r-k;if(E<=0){n.push(`# ${x.label}
684
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:q.object({commands:q.preprocess(kD,q.array(q.object({label:q.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:q.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header.")),queries:q.preprocess(ng,q.array(q.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed.")),timeout:q.coerce.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=tg(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1,i=`NODE_OPTIONS="--require ${eg}" `;for(let x of t){let k=Date.now()-o,E=r-k;if(E<=0){n.push(`# ${x.label}
685
685
 
686
686
  (skipped \u2014 batch timeout exceeded)
687
- `),s=!0;continue}let B=await wi.execute({language:"shell",code:`${i}${x.command} 2>&1`,timeout:E}),H=B.stdout||"(no output)",J=H.matchAll(/__CM_FS__:(\d+)/g),tt=0;for(let Ze of J)tt+=parseInt(Ze[1]);if(tt>0&&(De.bytesSandboxed+=tt,H=H.replace(/__CM_FS__:\d+\n?/g,"")),n.push(`# ${x.label}
687
+ `),s=!0;continue}let B=await Ei.execute({language:"shell",code:`${i}${x.command} 2>&1`,timeout:E}),H=B.stdout||"(no output)",J=H.matchAll(/__CM_FS__:(\d+)/g),rt=0;for(let He of J)rt+=parseInt(He[1]);if(rt>0&&(Me.bytesSandboxed+=rt,H=H.replace(/__CM_FS__:\d+\n?/g,"")),n.push(`# ${x.label}
688
688
 
689
689
  ${H}
690
- `),B.timedOut){s=!0;let Ze=t.indexOf(x);for(let F=Ze+1;F<t.length;F++)n.push(`# ${t[F].label}
690
+ `),B.timedOut){s=!0;let He=t.indexOf(x);for(let F=He+1;F<t.length;F++)n.push(`# ${t[F].label}
691
691
 
692
692
  (skipped \u2014 batch timeout exceeded)
693
693
  `);break}}let a=n.join(`
694
694
  `),c=Buffer.byteLength(a),u=a.split(`
695
- `).length;if(s&&n.length===0)return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});tr(c);let l=Kn(),d=`batch:${t.map(x=>x.label).join(",").slice(0,80)}`,m=l.index({content:a,source:d}),f=l.getChunksBySource(m.sourceId),p=["## Indexed Sections",""],h=[];for(let x of f){let k=Buffer.byteLength(x.content);p.push(`- ${x.title} (${(k/1024).toFixed(1)}KB)`),h.push(x.title)}let g=iw(l,e,d),_=l.getDistinctiveTerms?l.getDistinctiveTerms(m.sourceId):[],y=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${m.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,_.length>0?`
695
+ `).length;if(s&&n.length===0)return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});rr(c);let l=Yn(),d=`batch:${t.map(x=>x.label).join(",").slice(0,80)}`,m=l.index({content:a,source:d}),f=l.getChunksBySource(m.sourceId),p=["## Indexed Sections",""],h=[];for(let x of f){let k=Buffer.byteLength(x.content);p.push(`- ${x.title} (${(k/1024).toFixed(1)}KB)`),h.push(x.title)}let g=cw(l,e,d),_=l.getDistinctiveTerms?l.getDistinctiveTerms(m.sourceId):[],y=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${m.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,_.length>0?`
696
696
  Searchable terms for follow-up: ${_.join(", ")}`:""].join(`
697
- `);return Z("ctx_batch_execute",{content:[{type:"text",text:y}]})}catch(n){let o=n instanceof Error?n.message:String(n);return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Je.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:q.object({})},async()=>{let t;try{let e=ki(),r=Zh(),n=me(Or(),`${e}${r}.db`);if(Oe(n)){let o=Vn(),s=new o(n,{readonly:!0});try{let a=new Yo(s).queryAll(De);t=Xc(a,nn,on)}finally{s.close()}}else{let s=new Yo(ew()).queryAll(De);t=Xc(s,nn,on)}}catch{let r=new Yo(ew()).queryAll(De);t=Xc(r,nn,on)}return Z("ctx_stats",{content:[{type:"text",text:t}]})});Je.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:q.object({})},async()=>{let t=["## context-mode doctor",""],e=Oe(St(bt,"package.json"))?bt:er(bt),r=11,n=(eu.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${eu.length}/${r} (${n}%) \u2014 ${eu.join(", ")}`),Xn()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new qo({runtimes:iu});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("- [x] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`- [ ] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=Vn();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=St(e,"hooks","pretooluse.mjs");return Oe(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${nn}`),Z("ctx_doctor",{content:[{type:"text",text:t.join(`
698
- `)}]})});Je.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:q.object({})},async()=>{let t=Oe(St(bt,"package.json"))?bt:er(bt),e=St(t,"cli.bundle.mjs"),r=St(t,"build","cli.js");try{let s=Or(),i=me(er(s),"insight-cache");if(Oe(i)){try{process.platform==="win32"?Ut(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :4747') do taskkill /F /PID %a`,{stdio:"pipe"}):Ut("lsof -ti:4747 | xargs kill 2>/dev/null",{stdio:"pipe"})}catch{}tu(i,{recursive:!0,force:!0})}}catch{}let n;if(Oe(e))n=`node "${e}" upgrade`;else if(Oe(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["run","build"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install","--production"],{cwd:P,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
699
- `),u=St(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
700
- `);return Z("ctx_upgrade",{content:[{type:"text",text:o}]})});Je.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:"Permanently deletes ALL session data for this project: FTS5 knowledge base (indexed content), session events DB (analytics, metadata, resume snapshots), and session events markdown. Resets in-memory stats. This is irreversible.",inputSchema:q.object({confirm:q.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return Z("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(hr){let r=!1;try{hr.cleanup(),r=!0}catch{}hr=null,r&&e.push("knowledge base (FTS5)")}else{let r=Kh(),n=!1;for(let o of["","-wal","-shm"])try{Pr(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=me(Qo(),".context-mode","content",`${ki()}.db`);for(let n of["","-wal","-shm"])try{Pr(r+n)}catch{}}catch{}try{let r=ki(),n=Zh(),o=Or(),s=me(o,`${r}${n}.db`),i=me(o,`${r}${n}-events.md`),a=me(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{Pr(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{Pr(i),u=!0}catch{}u&&e.push("session events markdown");try{Pr(a)}catch{}}catch{}return De.calls={},De.bytesReturned={},De.bytesIndexed=0,De.bytesSandboxed=0,De.cacheHits=0,De.cacheBytesSaved=0,De.sessionStart=Date.now(),e.push("session stats"),Z("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});Je.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:q.object({port:q.coerce.number().optional().describe("Port to serve on (default: 4747)")})},async({port:t})=>{let e=t||4747,r=Oe(St(bt,"package.json"))?bt:er(bt),n=St(r,"insight"),o=Or(),s=me(er(o),"insight-cache");if(!Oe(me(n,"server.mjs")))return Z("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let i=[],a=!1;su(s,{recursive:!0});let c=Kk(me(n,"server.mjs")).mtimeMs,u=Oe(me(s,"server.mjs"))?Kk(me(s,"server.mjs")).mtimeMs:0;if(c>u&&(i.push("Copying source files..."),eD(n,s,{recursive:!0,force:!0}),i.push("Source files copied."),a=!0),!Oe(me(s,"node_modules"))||a){i.push("Installing dependencies (first run, ~30s)...");try{Ut(process.platform==="win32"?"npm.cmd install --production=false":"npm install --production=false",{cwd:s,stdio:"pipe",timeout:3e5})}catch{try{tu(me(s,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Oe(me(s,"node_modules","vite"))||!Oe(me(s,"node_modules","better-sqlite3")))throw tu(me(s,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");i.push("Dependencies installed.")}i.push("Building dashboard..."),Ut("npx vite build",{cwd:s,stdio:"pipe",timeout:6e4}),i.push("Build complete.");let d=!1;try{let{request:g}=await import("node:http");await new Promise((_,y)=>{let x=g(`http://127.0.0.1:${e}/api/overview`,{timeout:2e3},k=>{k.resume(),_()});x.on("error",()=>y()),x.on("timeout",()=>{x.destroy(),y()}),x.end()}),d=!0}catch{}if(d&&a){i.push("Killing stale dashboard server (source updated)...");try{process.platform==="win32"?Ut(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :${e}') do taskkill /F /PID %a`,{stdio:"pipe"}):Ut(`lsof -ti:${e} | xargs kill 2>/dev/null`,{stdio:"pipe"}),await new Promise(g=>setTimeout(g,500))}catch{}i.push("Stale server killed.")}else if(d){i.push("Dashboard already running.");let g=`http://localhost:${e}`,_=process.platform;try{_==="darwin"?Ut(`open "${g}"`,{stdio:"pipe"}):_==="win32"?Ut(`start "" "${g}"`,{stdio:"pipe"}):Ut(`xdg-open "${g}" 2>/dev/null || sensible-browser "${g}" 2>/dev/null`,{stdio:"pipe"})}catch{}return Z("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${e}`}]})}if(Rr&&Rr.pid&&!Rr.killed)try{Rr.kill("SIGTERM")}catch{}let{spawn:m}=await import("node:child_process"),f=m("node",[me(s,"server.mjs")],{cwd:s,env:{...process.env,PORT:String(e),INSIGHT_SESSION_DIR:Or(),INSIGHT_CONTENT_DIR:me(er(Or()),"content"),INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});f.on("error",()=>{}),f.unref(),Rr=f,await new Promise(g=>setTimeout(g,1500));try{let{request:g}=await import("node:http");await new Promise((_,y)=>{let x=g(`http://127.0.0.1:${e}/api/overview`,{timeout:3e3},k=>{_(),k.resume()});x.on("error",y),x.on("timeout",()=>{x.destroy(),y(new Error("timeout"))}),x.end()})}catch{return Z("ctx_insight",{content:[{type:"text",text:`Port ${e} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
697
+ `);return Z("ctx_batch_execute",{content:[{type:"text",text:y}]})}catch(n){let o=n instanceof Error?n.message:String(n);return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Ye.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:q.object({})},async()=>{let t;try{let e=$i(),r=qh(),n=me(Ir(),`${e}${r}.db`);if(Ce(n)){let o=Gn(),s=new o(n,{readonly:!0});try{let a=new Qo(s).queryAll(Me);t=eu(a,sn,an)}finally{s.close()}}else{let s=new Qo(rw()).queryAll(Me);t=eu(s,sn,an)}}catch{let r=new Qo(rw()).queryAll(Me);t=eu(r,sn,an)}return Z("ctx_stats",{content:[{type:"text",text:t}]})});Ye.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:q.object({})},async()=>{let t=["## context-mode doctor",""],e=Ce(bt(kt,"package.json"))?kt:tr(kt),r=11,n=(ru.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${ru.length}/${r} (${n}%) \u2014 ${ru.join(", ")}`),eo()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new Vo({runtimes:cu});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("- [x] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`- [ ] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=Gn();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=bt(e,"hooks","pretooluse.mjs");return Ce(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${sn}`),Z("ctx_doctor",{content:[{type:"text",text:t.join(`
698
+ `)}]})});Ye.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:q.object({})},async()=>{let t=Ce(bt(kt,"package.json"))?kt:tr(kt),e=bt(t,"cli.bundle.mjs"),r=bt(t,"build","cli.js");try{let s=Ir(),i=me(tr(s),"insight-cache");if(Ce(i)){try{process.platform==="win32"?Zt(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :4747') do taskkill /F /PID %a`,{stdio:"pipe"}):Zt("lsof -ti:4747 | xargs kill 2>/dev/null",{stdio:"pipe"})}catch{}nu(i,{recursive:!0,force:!0})}}catch{}let n;if(Ce(e))n=`${fe(e)} upgrade`;else if(Ce(r))n=`${fe(r)} upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["run","build"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["install","--production"],{cwd:P,stdio:"inherit",shell:process.platform==="win32"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
699
+ `),u=bt(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=fe(u)}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
700
+ `);return Z("ctx_upgrade",{content:[{type:"text",text:o}]})});Ye.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:"Permanently deletes ALL session data for this project: FTS5 knowledge base (indexed content), session events DB (analytics, metadata, resume snapshots), and session events markdown. Resets in-memory stats. This is irreversible.",inputSchema:q.object({confirm:q.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return Z("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(gr){let r=!1;try{gr.cleanup(),r=!0}catch{}gr=null,r&&e.push("knowledge base (FTS5)")}else{let r=Yh(),n=!1;for(let o of["","-wal","-shm"])try{Or(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=me(ts(),".context-mode","content",`${$i()}.db`);for(let n of["","-wal","-shm"])try{Or(r+n)}catch{}}catch{}try{let r=$i(),n=qh(),o=Ir(),s=me(o,`${r}${n}.db`),i=me(o,`${r}${n}-events.md`),a=me(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{Or(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{Or(i),u=!0}catch{}u&&e.push("session events markdown");try{Or(a)}catch{}}catch{}return Me.calls={},Me.bytesReturned={},Me.bytesIndexed=0,Me.bytesSandboxed=0,Me.cacheHits=0,Me.cacheBytesSaved=0,Me.sessionStart=Date.now(),e.push("session stats"),Z("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});Ye.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:q.object({port:q.coerce.number().optional().describe("Port to serve on (default: 4747)")})},async({port:t})=>{let e=t||4747,r=Ce(bt(kt,"package.json"))?kt:tr(kt),n=bt(r,"insight"),o=Ir(),s=me(tr(o),"insight-cache");if(!Ce(me(n,"server.mjs")))return Z("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let i=[],a=!1;au(s,{recursive:!0});let c=Yk(me(n,"server.mjs")).mtimeMs,u=Ce(me(s,"server.mjs"))?Yk(me(s,"server.mjs")).mtimeMs:0;if(c>u&&(i.push("Copying source files..."),rD(n,s,{recursive:!0,force:!0}),i.push("Source files copied."),a=!0),!Ce(me(s,"node_modules"))||a){i.push("Installing dependencies (first run, ~30s)...");try{Zt(process.platform==="win32"?"npm.cmd install --production=false":"npm install --production=false",{cwd:s,stdio:"pipe",timeout:3e5})}catch{try{nu(me(s,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Ce(me(s,"node_modules","vite"))||!Ce(me(s,"node_modules","better-sqlite3")))throw nu(me(s,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");i.push("Dependencies installed.")}i.push("Building dashboard..."),Zt("npx vite build",{cwd:s,stdio:"pipe",timeout:6e4}),i.push("Build complete.");let d=!1;try{let{request:g}=await import("node:http");await new Promise((_,y)=>{let x=g(`http://127.0.0.1:${e}/api/overview`,{timeout:2e3},k=>{k.resume(),_()});x.on("error",()=>y()),x.on("timeout",()=>{x.destroy(),y()}),x.end()}),d=!0}catch{}if(d&&a){i.push("Killing stale dashboard server (source updated)...");try{process.platform==="win32"?Zt(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :${e}') do taskkill /F /PID %a`,{stdio:"pipe"}):Zt(`lsof -ti:${e} | xargs kill 2>/dev/null`,{stdio:"pipe"}),await new Promise(g=>setTimeout(g,500))}catch{}i.push("Stale server killed.")}else if(d){i.push("Dashboard already running.");let g=`http://localhost:${e}`,_=process.platform;try{_==="darwin"?Zt(`open "${g}"`,{stdio:"pipe"}):_==="win32"?Zt(`start "" "${g}"`,{stdio:"pipe"}):Zt(`xdg-open "${g}" 2>/dev/null || sensible-browser "${g}" 2>/dev/null`,{stdio:"pipe"})}catch{}return Z("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${e}`}]})}if(Cr&&Cr.pid&&!Cr.killed)try{Cr.kill("SIGTERM")}catch{}let{spawn:m}=await import("node:child_process"),f=m("node",[me(s,"server.mjs")],{cwd:s,env:{...process.env,PORT:String(e),INSIGHT_SESSION_DIR:Ir(),INSIGHT_CONTENT_DIR:me(tr(Ir()),"content"),INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});f.on("error",()=>{}),f.unref(),Cr=f,await new Promise(g=>setTimeout(g,1500));try{let{request:g}=await import("node:http");await new Promise((_,y)=>{let x=g(`http://127.0.0.1:${e}/api/overview`,{timeout:3e3},k=>{_(),k.resume()});x.on("error",y),x.on("timeout",()=>{x.destroy(),y(new Error("timeout"))}),x.end()})}catch{return Z("ctx_insight",{content:[{type:"text",text:`Port ${e} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
701
701
 
702
702
  To fix:
703
703
  - Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${e}`:`lsof -ti:${e} | xargs kill`}
704
- - Or use a different port: ctx_insight({ port: ${e+1} })`}]})}let p=`http://localhost:${e}`,h=process.platform;try{h==="darwin"?Ut(`open "${p}"`,{stdio:"pipe"}):h==="win32"?Ut(`start "" "${p}"`,{stdio:"pipe"}):Ut(`xdg-open "${p}" 2>/dev/null || sensible-browser "${p}" 2>/dev/null`,{stdio:"pipe"})}catch{}return i.push(`Dashboard running at ${p}`),Z("ctx_insight",{content:[{type:"text",text:i.map(g=>`- ${g}`).join(`
704
+ - Or use a different port: ctx_insight({ port: ${e+1} })`}]})}let p=`http://localhost:${e}`,h=process.platform;try{h==="darwin"?Zt(`open "${p}"`,{stdio:"pipe"}):h==="win32"?Zt(`start "" "${p}"`,{stdio:"pipe"}):Zt(`xdg-open "${p}" 2>/dev/null || sensible-browser "${p}" 2>/dev/null`,{stdio:"pipe"})}catch{}return i.push(`Dashboard running at ${p}`),Z("ctx_insight",{content:[{type:"text",text:i.map(g=>`- ${g}`).join(`
705
705
  `)+`
706
706
 
707
707
  Open: ${p}
708
- PID: ${f.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${f.pid} /F`:`kill ${f.pid}`}`}]})}catch(i){let a=i instanceof Error?i.message:String(i);return Z("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${a}`}]})}});$D().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as Aw,stdin as Nw}from"node:process";import*as Ir from"node:readline";var ig=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,ag=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,cg=t=>t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9800&&t<=9811||t===9855||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12771||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=19903||t>=19968&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t===94192||t===94193||t>=94208&&t<=100343||t>=100352&&t<=101589||t>=101632&&t<=101640||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128727||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129672||t>=129680&&t<=129725||t>=129727&&t<=129733||t>=129742&&t<=129755||t>=129760&&t<=129768||t>=129776&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141;var lu=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Pi=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Ri=/\t{1,1000}/y,du=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"),Oi=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,bw=new RegExp("\\p{M}+","gu"),kw={limit:1/0,ellipsis:""},ug=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?ug(o,kw,r).width:0),i=r.ansiWidth??0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.ambiguousWidth??1,l=r.emojiWidth??2,d=r.fullWidthWidth??2,m=r.regularWidth??1,f=r.wideWidth??2,p=0,h=0,g=t.length,_=0,y=!1,x=g,k=Math.max(0,n-s),E=0,B=0,H=0,J=0;e:for(;;){if(B>E||h>=g&&h>p){let tt=t.slice(E,B)||t.slice(p,h);_=0;for(let Ze of tt.replaceAll(bw,"")){let F=Ze.codePointAt(0)||0;if(ag(F)?J=d:cg(F)?J=f:u!==m&&ig(F)?J=u:J=m,H+J>k&&(x=Math.min(x,Math.max(E,p)+_)),H+J>n){y=!0;break e}_+=Ze.length,H+=J}E=B=0}if(h>=g)break;if(Oi.lastIndex=h,Oi.test(t)){if(_=Oi.lastIndex-h,J=_*m,H+J>k&&(x=Math.min(x,h+Math.floor((k-H)/m))),H+J>n){y=!0;break}H+=J,E=p,B=h,h=p=Oi.lastIndex;continue}if(lu.lastIndex=h,lu.test(t)){if(H+i>k&&(x=Math.min(x,h)),H+i>n){y=!0;break}H+=i,E=p,B=h,h=p=lu.lastIndex;continue}if(Pi.lastIndex=h,Pi.test(t)){if(_=Pi.lastIndex-h,J=_*a,H+J>k&&(x=Math.min(x,h+Math.floor((k-H)/a))),H+J>n){y=!0;break}H+=J,E=p,B=h,h=p=Pi.lastIndex;continue}if(Ri.lastIndex=h,Ri.test(t)){if(_=Ri.lastIndex-h,J=_*c,H+J>k&&(x=Math.min(x,h+Math.floor((k-H)/c))),H+J>n){y=!0;break}H+=J,E=p,B=h,h=p=Ri.lastIndex;continue}if(du.lastIndex=h,du.test(t)){if(H+l>k&&(x=Math.min(x,h)),H+l>n){y=!0;break}H+=l,E=p,B=h,h=p=du.lastIndex;continue}h+=1}return{width:y?k:H,index:y?x:g,truncated:y,ellipsed:y&&n>=s}},lg=ug;var ww={limit:1/0,ellipsis:"",ellipsisWidth:0},$w=(t,e={})=>lg(t,ww,e).width,rt=$w;var Ci="\x1B",hg="\x9B",Ew=39,mu="\x07",gg="[",Tw="]",_g="m",fu=`${Tw}8;;`,dg=new RegExp(`(?:\\${gg}(?<code>\\d+)m|\\${fu}(?<uri>.*)${mu})`,"y"),pg=t=>{if(t>=30&&t<=37||t>=90&&t<=97)return 39;if(t>=40&&t<=47||t>=100&&t<=107)return 49;if(t===1||t===2)return 22;if(t===3)return 23;if(t===4)return 24;if(t===7)return 27;if(t===8)return 28;if(t===9)return 29;if(t===0)return 0},mg=t=>`${Ci}${gg}${t}${_g}`,fg=t=>`${Ci}${fu}${t}${mu}`,pu=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:rt(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,m=rt(d);a+m<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===Ci||d===hg)&&(o=!0,s=e.startsWith(fu,l+1)),o?s?d===mu&&(o=!1,s=!1):d===_g&&(o=!1):(a+=m,a===r&&!u.done&&(t.push(""),a=0)),c=u,u=n.next(),l+=d.length}i=t.at(-1),!a&&i!==void 0&&i.length&&t.length>1&&(t[t.length-2]+=t.pop())},Pw=t=>{let e=t.split(" "),r=e.length;for(;r&&!rt(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},Rw=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,s,i=t.split(" "),a=[""],c=0;for(let d=0;d<i.length;d++){let m=i[d];if(r.trim!==!1){let p=a.at(-1)??"",h=p.trimStart();p.length!==h.length&&(a[a.length-1]=h,c=rt(h))}d!==0&&(c>=e&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),c=0),(c||r.trim===!1)&&(a[a.length-1]+=" ",c++));let f=rt(m);if(r.hard&&f>e){let p=e-c,h=1+Math.floor((f-p-1)/e);Math.floor((f-1)/e)<h&&a.push(""),pu(a,m,e),c=rt(a.at(-1)??"");continue}if(c+f>e&&c&&f){if(r.wordWrap===!1&&c<e){pu(a,m,e),c=rt(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>e&&r.wordWrap===!1){pu(a,m,e),c=rt(a.at(-1)??"");continue}a[a.length-1]+=m,c+=f}r.trim!==!1&&(a=a.map(d=>Pw(d)));let u=a.join(`
709
- `),l=!1;for(let d=0;d<u.length;d++){let m=u[d];if(n+=m,!l)l=m>="\uD800"&&m<="\uDBFF";else continue;if(m===Ci||m===hg){dg.lastIndex=d+1;let p=dg.exec(u)?.groups;if(p?.code!==void 0){let h=Number.parseFloat(p.code);o=h===Ew?void 0:h}else p?.uri!==void 0&&(s=p.uri.length===0?void 0:p.uri)}if(u[d+1]===`
710
- `){s&&(n+=fg(""));let f=o?pg(o):void 0;o&&f&&(n+=mg(f))}else m===`
711
- `&&(o&&pg(o)&&(n+=mg(o)),s&&(n+=fg(s)))}return n},Ow=/\r?\n/;function Jn(t,e,r){return String(t).normalize().split(Ow).map(n=>Rw(n,e,r)).join(`
712
- `)}var rs=ts(gu(),1);import{ReadStream as xg}from"node:tty";var zw=["up","down","left","right","space","enter","cancel"],jw=["January","February","March","April","May","June","July","August","September","October","November","December"],rr={actions:new Set(zw),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...jw],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(t,e)=>`There are only ${t} days in ${e}`,afterMin:t=>`Date must be on or after ${t.toISOString().slice(0,10)}`,beforeMax:t=>`Date must be on or before ${t.toISOString().slice(0,10)}`}}};function vg(t,e){if(typeof t=="string")return rr.aliases.get(t)===e;for(let r of t)if(r!==void 0&&vg(r,e))return!0;return!1}var Dw=globalThis.process.platform.startsWith("win");function Sg({input:t=Nw,output:e=Aw,overwrite:r=!0,hideCursor:n=!0}={}){let o=Ir.createInterface({input:t,output:e,prompt:"",tabSize:1});Ir.emitKeypressEvents(t,o),t instanceof xg&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(vg([u,a,c],"cancel")){n&&e.write(rs.cursor.show),process.exit(0);return}if(!r)return;Ir.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{Ir.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(rs.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(rs.cursor.show),t instanceof xg&&t.isTTY&&!Dw&&t.setRawMode(!1),o.terminal=!1,o.close()}}var _u=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as ke,stripVTControlCharacters as _M}from"node:util";import wt from"node:process";var ns=ts(gu(),1);function Lw(){return wt.platform!=="win32"?wt.env.TERM!=="linux":!!wt.env.CI||!!wt.env.WT_SESSION||!!wt.env.TERMINUS_SUBLIME||wt.env.ConEmuTask==="{cmd::Cmder}"||wt.env.TERM_PROGRAM==="Terminus-Sublime"||wt.env.TERM_PROGRAM==="vscode"||wt.env.TERM==="xterm-256color"||wt.env.TERM==="alacritty"||wt.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var yu=Lw(),Fw=()=>process.env.CI==="true";var le=(t,e)=>yu?t:e,SM=le("\u25C6","*"),Uw=le("\u25A0","x"),Zw=le("\u25B2","x"),xu=le("\u25C7","o"),Hw=le("\u250C","T"),Ar=le("\u2502","|"),qw=le("\u2514","\u2014"),bM=le("\u2510","T"),kM=le("\u2518","\u2014"),wM=le("\u25CF",">"),$M=le("\u25CB"," "),EM=le("\u25FB","[\u2022]"),TM=le("\u25FC","[+]"),PM=le("\u25FB","[ ]"),RM=le("\u25AA","\u2022"),bg=le("\u2500","-"),Bw=le("\u256E","+"),Vw=le("\u251C","+"),Ww=le("\u256F","+"),Gw=le("\u2570","+"),OM=le("\u256D","+"),Kw=le("\u25CF","\u2022"),Jw=le("\u25C6","*"),Yw=le("\u25B2","!"),Xw=le("\u25A0","x");var I={message:(t=[],{symbol:e=ke("gray",Ar),secondarySymbol:r=ke("gray",Ar),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??rr.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let m=0;m<o;m++)i.push(c);let d=Array.isArray(t)?t:t.split(`
708
+ PID: ${f.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${f.pid} /F`:`kill ${f.pid}`}`}]})}catch(i){let a=i instanceof Error?i.message:String(i);return Z("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${a}`}]})}});TD().catch(t=>{console.error("Fatal:",t),process.exit(1)})});import{stdout as zw,stdin as jw}from"node:process";import*as Nr from"node:readline";var cg=t=>t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109,ug=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,lg=t=>t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9800&&t<=9811||t===9855||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12771||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=19903||t>=19968&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t===94192||t===94193||t>=94208&&t<=100343||t>=100352&&t<=101589||t>=101632&&t<=101640||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128727||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129672||t>=129680&&t<=129725||t>=129727&&t<=129733||t>=129742&&t<=129755||t>=129760&&t<=129768||t>=129776&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141;var pu=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,Oi=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Ci=/\t{1,1000}/y,mu=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"),Ii=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,ww=new RegExp("\\p{M}+","gu"),$w={limit:1/0,ellipsis:""},dg=(t,e={},r={})=>{let n=e.limit??1/0,o=e.ellipsis??"",s=e?.ellipsisWidth??(o?dg(o,$w,r).width:0),i=r.ansiWidth??0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.ambiguousWidth??1,l=r.emojiWidth??2,d=r.fullWidthWidth??2,m=r.regularWidth??1,f=r.wideWidth??2,p=0,h=0,g=t.length,_=0,y=!1,x=g,k=Math.max(0,n-s),E=0,B=0,H=0,J=0;e:for(;;){if(B>E||h>=g&&h>p){let rt=t.slice(E,B)||t.slice(p,h);_=0;for(let He of rt.replaceAll(ww,"")){let F=He.codePointAt(0)||0;if(ug(F)?J=d:lg(F)?J=f:u!==m&&cg(F)?J=u:J=m,H+J>k&&(x=Math.min(x,Math.max(E,p)+_)),H+J>n){y=!0;break e}_+=He.length,H+=J}E=B=0}if(h>=g)break;if(Ii.lastIndex=h,Ii.test(t)){if(_=Ii.lastIndex-h,J=_*m,H+J>k&&(x=Math.min(x,h+Math.floor((k-H)/m))),H+J>n){y=!0;break}H+=J,E=p,B=h,h=p=Ii.lastIndex;continue}if(pu.lastIndex=h,pu.test(t)){if(H+i>k&&(x=Math.min(x,h)),H+i>n){y=!0;break}H+=i,E=p,B=h,h=p=pu.lastIndex;continue}if(Oi.lastIndex=h,Oi.test(t)){if(_=Oi.lastIndex-h,J=_*a,H+J>k&&(x=Math.min(x,h+Math.floor((k-H)/a))),H+J>n){y=!0;break}H+=J,E=p,B=h,h=p=Oi.lastIndex;continue}if(Ci.lastIndex=h,Ci.test(t)){if(_=Ci.lastIndex-h,J=_*c,H+J>k&&(x=Math.min(x,h+Math.floor((k-H)/c))),H+J>n){y=!0;break}H+=J,E=p,B=h,h=p=Ci.lastIndex;continue}if(mu.lastIndex=h,mu.test(t)){if(H+l>k&&(x=Math.min(x,h)),H+l>n){y=!0;break}H+=l,E=p,B=h,h=p=mu.lastIndex;continue}h+=1}return{width:y?k:H,index:y?x:g,truncated:y,ellipsed:y&&n>=s}},pg=dg;var Ew={limit:1/0,ellipsis:"",ellipsisWidth:0},Tw=(t,e={})=>pg(t,Ew,e).width,nt=Tw;var Ai="\x1B",_g="\x9B",Pw=39,hu="\x07",yg="[",Rw="]",xg="m",gu=`${Rw}8;;`,mg=new RegExp(`(?:\\${yg}(?<code>\\d+)m|\\${gu}(?<uri>.*)${hu})`,"y"),fg=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},hg=t=>`${Ai}${yg}${t}${xg}`,gg=t=>`${Ai}${gu}${t}${hu}`,fu=(t,e,r)=>{let n=e[Symbol.iterator](),o=!1,s=!1,i=t.at(-1),a=i===void 0?0:nt(i),c=n.next(),u=n.next(),l=0;for(;!c.done;){let d=c.value,m=nt(d);a+m<=r?t[t.length-1]+=d:(t.push(d),a=0),(d===Ai||d===_g)&&(o=!0,s=e.startsWith(gu,l+1)),o?s?d===hu&&(o=!1,s=!1):d===xg&&(o=!1):(a+=m,a===r&&!u.done&&(t.push(""),a=0)),c=u,u=n.next(),l+=d.length}i=t.at(-1),!a&&i!==void 0&&i.length&&t.length>1&&(t[t.length-2]+=t.pop())},Ow=t=>{let e=t.split(" "),r=e.length;for(;r&&!nt(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},Cw=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,s,i=t.split(" "),a=[""],c=0;for(let d=0;d<i.length;d++){let m=i[d];if(r.trim!==!1){let p=a.at(-1)??"",h=p.trimStart();p.length!==h.length&&(a[a.length-1]=h,c=nt(h))}d!==0&&(c>=e&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),c=0),(c||r.trim===!1)&&(a[a.length-1]+=" ",c++));let f=nt(m);if(r.hard&&f>e){let p=e-c,h=1+Math.floor((f-p-1)/e);Math.floor((f-1)/e)<h&&a.push(""),fu(a,m,e),c=nt(a.at(-1)??"");continue}if(c+f>e&&c&&f){if(r.wordWrap===!1&&c<e){fu(a,m,e),c=nt(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>e&&r.wordWrap===!1){fu(a,m,e),c=nt(a.at(-1)??"");continue}a[a.length-1]+=m,c+=f}r.trim!==!1&&(a=a.map(d=>Ow(d)));let u=a.join(`
709
+ `),l=!1;for(let d=0;d<u.length;d++){let m=u[d];if(n+=m,!l)l=m>="\uD800"&&m<="\uDBFF";else continue;if(m===Ai||m===_g){mg.lastIndex=d+1;let p=mg.exec(u)?.groups;if(p?.code!==void 0){let h=Number.parseFloat(p.code);o=h===Pw?void 0:h}else p?.uri!==void 0&&(s=p.uri.length===0?void 0:p.uri)}if(u[d+1]===`
710
+ `){s&&(n+=gg(""));let f=o?fg(o):void 0;o&&f&&(n+=hg(f))}else m===`
711
+ `&&(o&&fg(o)&&(n+=hg(o)),s&&(n+=gg(s)))}return n},Iw=/\r?\n/;function Xn(t,e,r){return String(t).normalize().split(Iw).map(n=>Cw(n,e,r)).join(`
712
+ `)}var os=ns(yu(),1);import{ReadStream as Sg}from"node:tty";var Dw=["up","down","left","right","space","enter","cancel"],Mw=["January","February","March","April","May","June","July","August","September","October","November","December"],nr={actions:new Set(Dw),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...Mw],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(t,e)=>`There are only ${t} days in ${e}`,afterMin:t=>`Date must be on or after ${t.toISOString().slice(0,10)}`,beforeMax:t=>`Date must be on or before ${t.toISOString().slice(0,10)}`}}};function bg(t,e){if(typeof t=="string")return nr.aliases.get(t)===e;for(let r of t)if(r!==void 0&&bg(r,e))return!0;return!1}var Lw=globalThis.process.platform.startsWith("win");function kg({input:t=jw,output:e=zw,overwrite:r=!0,hideCursor:n=!0}={}){let o=Nr.createInterface({input:t,output:e,prompt:"",tabSize:1});Nr.emitKeypressEvents(t,o),t instanceof Sg&&t.isTTY&&t.setRawMode(!0);let s=(i,{name:a,sequence:c})=>{let u=String(i);if(bg([u,a,c],"cancel")){n&&e.write(os.cursor.show),process.exit(0);return}if(!r)return;Nr.moveCursor(e,a==="return"?0:-1,a==="return"?-1:0,()=>{Nr.clearLine(e,1,()=>{t.once("keypress",s)})})};return n&&e.write(os.cursor.hide),t.once("keypress",s),()=>{t.off("keypress",s),n&&e.write(os.cursor.show),t instanceof Sg&&t.isTTY&&!Lw&&t.setRawMode(!1),o.terminal=!1,o.close()}}var xu=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80;import{styleText as we,stripVTControlCharacters as xM}from"node:util";import $t from"node:process";var ss=ns(yu(),1);function Uw(){return $t.platform!=="win32"?$t.env.TERM!=="linux":!!$t.env.CI||!!$t.env.WT_SESSION||!!$t.env.TERMINUS_SUBLIME||$t.env.ConEmuTask==="{cmd::Cmder}"||$t.env.TERM_PROGRAM==="Terminus-Sublime"||$t.env.TERM_PROGRAM==="vscode"||$t.env.TERM==="xterm-256color"||$t.env.TERM==="alacritty"||$t.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var vu=Uw(),Zw=()=>process.env.CI==="true";var le=(t,e)=>vu?t:e,kM=le("\u25C6","*"),Hw=le("\u25A0","x"),qw=le("\u25B2","x"),Su=le("\u25C7","o"),Bw=le("\u250C","T"),zr=le("\u2502","|"),Vw=le("\u2514","\u2014"),wM=le("\u2510","T"),$M=le("\u2518","\u2014"),EM=le("\u25CF",">"),TM=le("\u25CB"," "),PM=le("\u25FB","[\u2022]"),RM=le("\u25FC","[+]"),OM=le("\u25FB","[ ]"),CM=le("\u25AA","\u2022"),wg=le("\u2500","-"),Ww=le("\u256E","+"),Gw=le("\u251C","+"),Kw=le("\u256F","+"),Jw=le("\u2570","+"),IM=le("\u256D","+"),Yw=le("\u25CF","\u2022"),Xw=le("\u25C6","*"),Qw=le("\u25B2","!"),e$=le("\u25A0","x");var I={message:(t=[],{symbol:e=we("gray",zr),secondarySymbol:r=we("gray",zr),output:n=process.stdout,spacing:o=1,withGuide:s}={})=>{let i=[],a=s??nr.withGuide,c=a?r:"",u=a?`${e} `:"",l=a?`${r} `:"";for(let m=0;m<o;m++)i.push(c);let d=Array.isArray(t)?t:t.split(`
713
713
  `);if(d.length>0){let[m,...f]=d;m.length>0?i.push(`${u}${m}`):i.push(a?e:"");for(let p of f)p.length>0?i.push(`${l}${p}`):i.push(a?r:"")}n.write(`${i.join(`
714
714
  `)}
715
- `)},info:(t,e)=>{I.message(t,{...e,symbol:ke("blue",Kw)})},success:(t,e)=>{I.message(t,{...e,symbol:ke("green",Jw)})},step:(t,e)=>{I.message(t,{...e,symbol:ke("green",xu)})},warn:(t,e)=>{I.message(t,{...e,symbol:ke("yellow",Yw)})},warning:(t,e)=>{I.warn(t,e)},error:(t,e)=>{I.message(t,{...e,symbol:ke("red",Xw)})}};var vu=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??rr.withGuide?`${ke("gray",Hw)} `:"";r.write(`${n}${t}
716
- `)},Ii=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??rr.withGuide?`${ke("gray",Ar)}
717
- ${ke("gray",qw)} `:"";r.write(`${n}${t}
718
-
719
- `)};var Qw=t=>ke("dim",t),e$=(t,e,r)=>{let n={hard:!0,trim:!1},o=Jn(t,e,n).split(`
720
- `),s=o.reduce((c,u)=>Math.max(rt(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(rt(u),c),0),a=e-(i-s);return Jn(t,a,n)},Su=(t="",e="",r)=>{let n=r?.output??wt.stdout,o=r?.withGuide??rr.withGuide,s=r?.format??Qw,i=["",...e$(t,_u(n)-6,s).split(`
721
- `).map(s),""],a=rt(e),c=Math.max(i.reduce((m,f)=>{let p=rt(f);return p>m?p:m},0),a)+2,u=i.map(m=>`${ke("gray",Ar)} ${m}${" ".repeat(c-rt(m))}${ke("gray",Ar)}`).join(`
722
- `),l=o?`${ke("gray",Ar)}
723
- `:"",d=o?Vw:Gw;n.write(`${l}${ke("green",xu)} ${ke("reset",e)} ${ke("gray",bg.repeat(Math.max(c-a-1,1))+Bw)}
715
+ `)},info:(t,e)=>{I.message(t,{...e,symbol:we("blue",Yw)})},success:(t,e)=>{I.message(t,{...e,symbol:we("green",Xw)})},step:(t,e)=>{I.message(t,{...e,symbol:we("green",Su)})},warn:(t,e)=>{I.message(t,{...e,symbol:we("yellow",Qw)})},warning:(t,e)=>{I.warn(t,e)},error:(t,e)=>{I.message(t,{...e,symbol:we("red",e$)})}};var bu=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??nr.withGuide?`${we("gray",Bw)} `:"";r.write(`${n}${t}
716
+ `)},Ni=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??nr.withGuide?`${we("gray",zr)}
717
+ ${we("gray",Vw)} `:"";r.write(`${n}${t}
718
+
719
+ `)};var t$=t=>we("dim",t),r$=(t,e,r)=>{let n={hard:!0,trim:!1},o=Xn(t,e,n).split(`
720
+ `),s=o.reduce((c,u)=>Math.max(nt(u),c),0),i=o.map(r).reduce((c,u)=>Math.max(nt(u),c),0),a=e-(i-s);return Xn(t,a,n)},ku=(t="",e="",r)=>{let n=r?.output??$t.stdout,o=r?.withGuide??nr.withGuide,s=r?.format??t$,i=["",...r$(t,xu(n)-6,s).split(`
721
+ `).map(s),""],a=nt(e),c=Math.max(i.reduce((m,f)=>{let p=nt(f);return p>m?p:m},0),a)+2,u=i.map(m=>`${we("gray",zr)} ${m}${" ".repeat(c-nt(m))}${we("gray",zr)}`).join(`
722
+ `),l=o?`${we("gray",zr)}
723
+ `:"",d=o?Gw:Jw;n.write(`${l}${we("green",Su)} ${we("reset",e)} ${we("gray",wg.repeat(Math.max(c-a-1,1))+Ww)}
724
724
  ${u}
725
- ${ke("gray",d+bg.repeat(c+2)+Ww)}
726
- `)};var t$=t=>ke("magenta",t),bu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=yu?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=yu?80:120,signal:a,...c}={})=>{let u=Fw(),l,d,m=!1,f=!1,p="",h,g=performance.now(),_=_u(r),y=c?.styleFrame??t$,x=be=>{let kt=be>1?o??rr.messages.error:n??rr.messages.cancel;f=be===1,m&&(ze(kt,be),f&&typeof e=="function"&&e())},k=()=>x(2),E=()=>x(1),B=()=>{process.on("uncaughtExceptionMonitor",k),process.on("unhandledRejection",k),process.on("SIGINT",E),process.on("SIGTERM",E),process.on("exit",x),a&&a.addEventListener("abort",E)},H=()=>{process.removeListener("uncaughtExceptionMonitor",k),process.removeListener("unhandledRejection",k),process.removeListener("SIGINT",E),process.removeListener("SIGTERM",E),process.removeListener("exit",x),a&&a.removeEventListener("abort",E)},J=()=>{if(h===void 0)return;u&&r.write(`
727
- `);let be=Jn(h,_,{hard:!0,trim:!1}).split(`
728
- `);be.length>1&&r.write(ns.cursor.up(be.length-1)),r.write(ns.cursor.to(0)),r.write(ns.erase.down())},tt=be=>be.replace(/\.+$/,""),Ze=be=>{let kt=(performance.now()-be)/1e3,gr=Math.floor(kt/60),_r=Math.floor(kt%60);return gr>0?`[${gr}m ${_r}s]`:`[${_r}s]`},F=c.withGuide??rr.withGuide,_t=(be="")=>{m=!0,l=Sg({output:r}),p=tt(be),g=performance.now(),F&&r.write(`${ke("gray",Ar)}
729
- `);let kt=0,gr=0;B(),d=setInterval(()=>{if(u&&p===h)return;J(),h=p;let _r=y(s[kt]),Ti;if(u)Ti=`${_r} ${p}...`;else if(t==="timer")Ti=`${_r} ${p} ${Ze(g)}`;else{let hw=".".repeat(Math.floor(gr)).slice(0,3);Ti=`${_r} ${p}${hw}`}let fw=Jn(Ti,_,{hard:!0,trim:!1});r.write(fw),kt=kt+1<s.length?kt+1:0,gr=gr<4?gr+.125:0},i)},ze=(be="",kt=0,gr=!1)=>{if(!m)return;m=!1,clearInterval(d),J();let _r=kt===0?ke("green",xu):kt===1?ke("red",Uw):ke("red",Zw);p=be??p,gr||(t==="timer"?r.write(`${_r} ${p} ${Ze(g)}
730
- `):r.write(`${_r} ${p}
731
- `)),H(),l()};return{start:_t,stop:(be="")=>ze(be,0),message:(be="")=>{p=tt(be??p)},cancel:(be="")=>ze(be,1),error:(be="")=>ze(be,2),clear:()=>ze("",0,!0),get isCancelled(){return f}}},CM={light:le("\u2500","-"),heavy:le("\u2501","="),block:le("\u2588","#")};var IM=`${ke("gray",Ar)} `;var T=ts($g(),1);Mi();al();import{execFileSync as rg}from"node:child_process";import{readFileSync as au,writeFileSync as ED,cpSync as lw,accessSync as dw,existsSync as Cr,rmSync as es,closeSync as TD,openSync as PD,chmodSync as RD,constants as pw}from"node:fs";import{request as OD}from"node:https";import{resolve as Ne,dirname as ng,join as gt}from"node:path";import{tmpdir as CD,devNull as ID,homedir as og}from"node:os";import{fileURLToPath as AD,pathToFileURL as ND}from"node:url";var zD={"claude-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"},"gemini-cli":{beforetool:"hooks/gemini-cli/beforetool.mjs",aftertool:"hooks/gemini-cli/aftertool.mjs",precompress:"hooks/gemini-cli/precompress.mjs",sessionstart:"hooks/gemini-cli/sessionstart.mjs"},"vscode-copilot":{pretooluse:"hooks/vscode-copilot/pretooluse.mjs",posttooluse:"hooks/vscode-copilot/posttooluse.mjs",precompact:"hooks/vscode-copilot/precompact.mjs",sessionstart:"hooks/vscode-copilot/sessionstart.mjs"},cursor:{pretooluse:"hooks/cursor/pretooluse.mjs",posttooluse:"hooks/cursor/posttooluse.mjs",sessionstart:"hooks/cursor/sessionstart.mjs",stop:"hooks/cursor/stop.mjs"},codex:{pretooluse:"hooks/codex/pretooluse.mjs",posttooluse:"hooks/codex/posttooluse.mjs",sessionstart:"hooks/codex/sessionstart.mjs",userpromptsubmit:"hooks/codex/userpromptsubmit.mjs",stop:"hooks/codex/stop.mjs"},kiro:{pretooluse:"hooks/kiro/pretooluse.mjs",posttooluse:"hooks/kiro/posttooluse.mjs"},"jetbrains-copilot":{pretooluse:"hooks/jetbrains-copilot/pretooluse.mjs",posttooluse:"hooks/jetbrains-copilot/posttooluse.mjs",precompact:"hooks/jetbrains-copilot/precompact.mjs",sessionstart:"hooks/jetbrains-copilot/sessionstart.mjs"},"qwen-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"}};async function jD(t,e){try{TD(2),PD(ID,"w")}catch{process.stderr.write=(()=>!0)}let r=zD[t]?.[e];r||process.exit(1);let n=Ei();await import(ND(gt(n,r)).href)}var sn=process.argv.slice(2);sn[0]==="doctor"?UD().then(t=>process.exit(t)):sn[0]==="upgrade"?HD():sn[0]==="hook"?jD(sn[1],sn[2]):sn[0]==="insight"?ZD(sn[1]?Number(sn[1]):4747):Promise.resolve().then(()=>(uw(),cw));function HB(t){return t.replace(/\\/g,"/")}var cu=process.platform==="win32";function $i(t,e={}){rg(cu?"npm.cmd":"npm",t,{...e,...cu?{shell:!0}:{}})}function DD(t,e={}){let{execSync:r}=sg("node:child_process");r(cu?t.replace(/^npm /,"npm.cmd "):t,{...e,...cu?{shell:!0}:{}})}function MD(){let t=AD(import.meta.url),e=ng(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?Ne(e,".."):e}function LD(t){if(process.platform==="win32"){let e=process.env.LOCALAPPDATA;return e?Ne(e,t,"node_modules","context-mode"):Ne(og(),"AppData","Local",t,"node_modules","context-mode")}return Ne(og(),".cache",t,"node_modules","context-mode")}function Ei(){let t=dn().platform;return t==="opencode"||t==="kilo"?LD(t):MD()}function mw(){try{return JSON.parse(au(Ne(Ei(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function FD(){return new Promise(t=>{let e=OD("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}async function UD(){process.stdout.isTTY&&console.clear();let t=dn(),e=await ds(t.platform);vu(T.default.bgMagenta(T.default.white(" context-mode doctor "))),I.info(`Platform: ${T.default.cyan(e.name)}`+T.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=bu();n.start("Running diagnostics");let o,s;try{o=Yn(),s=Di(o)}catch{return n.stop("Diagnostics partial"),I.warn(T.default.yellow("Could not detect runtimes")+T.default.dim(" \u2014 module may be missing, restart session after upgrade")),Ii(T.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),Su(ji(o),"Runtimes"),Xn()?I.success(T.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):I.warn(T.default.yellow("Performance: NORMAL")+" \u2014 Using Node.js (install Bun for 3-5x speed boost)");let i=11,a=(s.length/i*100).toFixed(0);s.length<2?(r++,I.error(T.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+T.default.dim(` \u2014 ${s.join(", ")||"none"}`))):I.info(`Language coverage: ${s.length}/${i} (${a}%)`+T.default.dim(` \u2014 ${s.join(", ")}`)),I.step("Testing server initialization...");try{let{PolyglotExecutor:h}=await Promise.resolve().then(()=>(Oh(),hk)),_=await new h({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(_.exitCode===0&&_.stdout.trim()==="ok")I.success(T.default.green("Server test: PASS"));else{r++;let y=_.stderr?.trim()?` (${_.stderr.trim().slice(0,200)})`:"";I.error(T.default.red("Server test: FAIL")+` \u2014 exit ${_.exitCode}${y}`)}}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(T.default.yellow("Server test: SKIP")+T.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(T.default.red("Server test: FAIL")+` \u2014 ${g}`))}I.step(`Checking ${e.name} hooks configuration...`);let c=Ei(),u=e.validateHooks(c);for(let h of u)h.status==="pass"?I.success(T.default.green(`${h.check}: PASS`)+` \u2014 ${h.message}`):I.error(T.default.red(`${h.check}: FAIL`)+` \u2014 ${h.message}`+(h.fix?T.default.dim(`
732
- Run: ${h.fix}`):""));I.step("Checking hook script...");let l=Ne(c,"hooks","pretooluse.mjs");try{dw(l,pw.R_OK),I.success(T.default.green("Hook script exists: PASS")+T.default.dim(` \u2014 ${l}`))}catch{I.error(T.default.red("Hook script exists: FAIL")+T.default.dim(` \u2014 not found at ${l}`))}I.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?I.success(T.default.green("Plugin enabled: PASS")+T.default.dim(` \u2014 ${d.message}`)):I.warn(T.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),I.step("Checking FTS5 / SQLite...");try{let h=(await Promise.resolve().then(()=>(Si(),yk))).loadDatabase(),g=new h(":memory:");g.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),g.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let _=g.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();g.close(),_&&_.content==="hello world"?I.success(T.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,I.error(T.default.red("FTS5 / SQLite: FAIL")+" \u2014 query returned unexpected result"))}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(T.default.yellow("FTS5 / better-sqlite3: SKIP")+T.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(T.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+T.default.dim(`
733
- Try: npm rebuild better-sqlite3`)))}I.step("Checking versions...");let m=mw(),f=await FD(),p=e.getInstalledVersion();return f==="unknown"?I.warn(T.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, could not reach npm registry`):m===f?I.success(T.default.green("npm (MCP): PASS")+` \u2014 v${m}`):I.warn(T.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, latest v${f}`+T.default.dim(`
725
+ ${we("gray",d+wg.repeat(c+2)+Kw)}
726
+ `)};var n$=t=>we("magenta",t),wu=({indicator:t="dots",onCancel:e,output:r=process.stdout,cancelMessage:n,errorMessage:o,frames:s=vu?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:i=vu?80:120,signal:a,...c}={})=>{let u=Zw(),l,d,m=!1,f=!1,p="",h,g=performance.now(),_=xu(r),y=c?.styleFrame??n$,x=ke=>{let wt=ke>1?o??nr.messages.error:n??nr.messages.cancel;f=ke===1,m&&(je(wt,ke),f&&typeof e=="function"&&e())},k=()=>x(2),E=()=>x(1),B=()=>{process.on("uncaughtExceptionMonitor",k),process.on("unhandledRejection",k),process.on("SIGINT",E),process.on("SIGTERM",E),process.on("exit",x),a&&a.addEventListener("abort",E)},H=()=>{process.removeListener("uncaughtExceptionMonitor",k),process.removeListener("unhandledRejection",k),process.removeListener("SIGINT",E),process.removeListener("SIGTERM",E),process.removeListener("exit",x),a&&a.removeEventListener("abort",E)},J=()=>{if(h===void 0)return;u&&r.write(`
727
+ `);let ke=Xn(h,_,{hard:!0,trim:!1}).split(`
728
+ `);ke.length>1&&r.write(ss.cursor.up(ke.length-1)),r.write(ss.cursor.to(0)),r.write(ss.erase.down())},rt=ke=>ke.replace(/\.+$/,""),He=ke=>{let wt=(performance.now()-ke)/1e3,_r=Math.floor(wt/60),yr=Math.floor(wt%60);return _r>0?`[${_r}m ${yr}s]`:`[${yr}s]`},F=c.withGuide??nr.withGuide,yt=(ke="")=>{m=!0,l=kg({output:r}),p=rt(ke),g=performance.now(),F&&r.write(`${we("gray",zr)}
729
+ `);let wt=0,_r=0;B(),d=setInterval(()=>{if(u&&p===h)return;J(),h=p;let yr=y(s[wt]),Ri;if(u)Ri=`${yr} ${p}...`;else if(t==="timer")Ri=`${yr} ${p} ${He(g)}`;else{let _w=".".repeat(Math.floor(_r)).slice(0,3);Ri=`${yr} ${p}${_w}`}let gw=Xn(Ri,_,{hard:!0,trim:!1});r.write(gw),wt=wt+1<s.length?wt+1:0,_r=_r<4?_r+.125:0},i)},je=(ke="",wt=0,_r=!1)=>{if(!m)return;m=!1,clearInterval(d),J();let yr=wt===0?we("green",Su):wt===1?we("red",Hw):we("red",qw);p=ke??p,_r||(t==="timer"?r.write(`${yr} ${p} ${He(g)}
730
+ `):r.write(`${yr} ${p}
731
+ `)),H(),l()};return{start:yt,stop:(ke="")=>je(ke,0),message:(ke="")=>{p=rt(ke??p)},cancel:(ke="")=>je(ke,1),error:(ke="")=>je(ke,2),clear:()=>je("",0,!0),get isCancelled(){return f}}},AM={light:le("\u2500","-"),heavy:le("\u2501","="),block:le("\u2588","#")};var NM=`${we("gray",zr)} `;var T=ns(Tg(),1);Fi();ul();import{execFileSync as og}from"node:child_process";import{readFileSync as uu,writeFileSync as PD,cpSync as pw,accessSync as mw,existsSync as Ar,rmSync as rs,closeSync as RD,openSync as OD,chmodSync as CD,constants as fw}from"node:fs";import{request as ID}from"node:https";import{resolve as ze,dirname as sg,join as _t}from"node:path";import{tmpdir as AD,devNull as ND,homedir as ig}from"node:os";import{fileURLToPath as zD,pathToFileURL as jD}from"node:url";var DD={"claude-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"},"gemini-cli":{beforetool:"hooks/gemini-cli/beforetool.mjs",aftertool:"hooks/gemini-cli/aftertool.mjs",precompress:"hooks/gemini-cli/precompress.mjs",sessionstart:"hooks/gemini-cli/sessionstart.mjs"},"vscode-copilot":{pretooluse:"hooks/vscode-copilot/pretooluse.mjs",posttooluse:"hooks/vscode-copilot/posttooluse.mjs",precompact:"hooks/vscode-copilot/precompact.mjs",sessionstart:"hooks/vscode-copilot/sessionstart.mjs"},cursor:{pretooluse:"hooks/cursor/pretooluse.mjs",posttooluse:"hooks/cursor/posttooluse.mjs",sessionstart:"hooks/cursor/sessionstart.mjs",stop:"hooks/cursor/stop.mjs"},codex:{pretooluse:"hooks/codex/pretooluse.mjs",posttooluse:"hooks/codex/posttooluse.mjs",sessionstart:"hooks/codex/sessionstart.mjs",userpromptsubmit:"hooks/codex/userpromptsubmit.mjs",stop:"hooks/codex/stop.mjs"},kiro:{pretooluse:"hooks/kiro/pretooluse.mjs",posttooluse:"hooks/kiro/posttooluse.mjs"},"jetbrains-copilot":{pretooluse:"hooks/jetbrains-copilot/pretooluse.mjs",posttooluse:"hooks/jetbrains-copilot/posttooluse.mjs",precompact:"hooks/jetbrains-copilot/precompact.mjs",sessionstart:"hooks/jetbrains-copilot/sessionstart.mjs"},"qwen-code":{pretooluse:"hooks/pretooluse.mjs",posttooluse:"hooks/posttooluse.mjs",precompact:"hooks/precompact.mjs",sessionstart:"hooks/sessionstart.mjs",userpromptsubmit:"hooks/userpromptsubmit.mjs"}};async function MD(t,e){try{RD(2),OD(ND,"w")}catch{process.stderr.write=(()=>!0)}let r=DD[t]?.[e];r||process.exit(1);let n=Pi();await import(jD(_t(n,r)).href)}var cn=process.argv.slice(2);cn[0]==="doctor"?HD().then(t=>process.exit(t)):cn[0]==="upgrade"?BD():cn[0]==="hook"?MD(cn[1],cn[2]):cn[0]==="insight"?qD(cn[1]?Number(cn[1]):4747):Promise.resolve().then(()=>(dw(),lw));function e3(t){return t.replace(/\\/g,"/")}var lu=process.platform==="win32";function Ti(t,e={}){og(lu?"npm.cmd":"npm",t,{...e,...lu?{shell:!0}:{}})}function LD(t,e={}){let{execSync:r}=ag("node:child_process");r(lu?t.replace(/^npm /,"npm.cmd "):t,{...e,...lu?{shell:!0}:{}})}function FD(){let t=zD(import.meta.url),e=sg(t);return e.endsWith("/build")||e.endsWith("\\build")||e.endsWith("/src")||e.endsWith("\\src")?ze(e,".."):e}function UD(t){if(process.platform==="win32"){let e=process.env.LOCALAPPDATA;return e?ze(e,t,"node_modules","context-mode"):ze(ig(),"AppData","Local",t,"node_modules","context-mode")}return ze(ig(),".cache",t,"node_modules","context-mode")}function Pi(){let t=mn().platform;return t==="opencode"||t==="kilo"?UD(t):FD()}function hw(){try{return JSON.parse(uu(ze(Pi(),"package.json"),"utf-8")).version??"unknown"}catch{return"unknown"}}async function ZD(){return new Promise(t=>{let e=ID("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}async function HD(){process.stdout.isTTY&&console.clear();let t=mn(),e=await ms(t.platform);bu(T.default.bgMagenta(T.default.white(" context-mode doctor "))),I.info(`Platform: ${T.default.cyan(e.name)}`+T.default.dim(` (${t.confidence} confidence \u2014 ${t.reason})`));let r=0,n=wu();n.start("Running diagnostics");let o,s;try{o=Qn(),s=Li(o)}catch{return n.stop("Diagnostics partial"),I.warn(T.default.yellow("Could not detect runtimes")+T.default.dim(" \u2014 module may be missing, restart session after upgrade")),Ni(T.default.yellow("Doctor could not fully run \u2014 try again after restarting")),1}n.stop("Diagnostics complete"),ku(Mi(o),"Runtimes"),eo()?I.success(T.default.green("Performance: FAST")+" \u2014 Bun detected for JS/TS execution"):I.warn(T.default.yellow("Performance: NORMAL")+" \u2014 Using Node.js (install Bun for 3-5x speed boost)");let i=11,a=(s.length/i*100).toFixed(0);s.length<2?(r++,I.error(T.default.red(`Language coverage: ${s.length}/${i} (${a}%)`)+" \u2014 too few runtimes detected"+T.default.dim(` \u2014 ${s.join(", ")||"none"}`))):I.info(`Language coverage: ${s.length}/${i} (${a}%)`+T.default.dim(` \u2014 ${s.join(", ")}`)),I.step("Testing server initialization...");try{let{PolyglotExecutor:h}=await Promise.resolve().then(()=>(Ih(),_k)),_=await new h({runtimes:o}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(_.exitCode===0&&_.stdout.trim()==="ok")I.success(T.default.green("Server test: PASS"));else{r++;let y=_.stderr?.trim()?` (${_.stderr.trim().slice(0,200)})`:"";I.error(T.default.red("Server test: FAIL")+` \u2014 exit ${_.exitCode}${y}`)}}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(T.default.yellow("Server test: SKIP")+T.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(T.default.red("Server test: FAIL")+` \u2014 ${g}`))}I.step(`Checking ${e.name} hooks configuration...`);let c=Pi(),u=e.validateHooks(c);for(let h of u)h.status==="pass"?I.success(T.default.green(`${h.check}: PASS`)+` \u2014 ${h.message}`):I.error(T.default.red(`${h.check}: FAIL`)+` \u2014 ${h.message}`+(h.fix?T.default.dim(`
732
+ Run: ${h.fix}`):""));I.step("Checking hook script...");let l=ze(c,"hooks","pretooluse.mjs");try{mw(l,fw.R_OK),I.success(T.default.green("Hook script exists: PASS")+T.default.dim(` \u2014 ${l}`))}catch{I.error(T.default.red("Hook script exists: FAIL")+T.default.dim(` \u2014 not found at ${l}`))}I.step(`Checking ${e.name} plugin registration...`);let d=e.checkPluginRegistration();d.status==="pass"?I.success(T.default.green("Plugin enabled: PASS")+T.default.dim(` \u2014 ${d.message}`)):I.warn(T.default.yellow("Plugin enabled: WARN")+` \u2014 ${d.message}`),I.step("Checking FTS5 / SQLite...");try{let h=(await Promise.resolve().then(()=>(ki(),vk))).loadDatabase(),g=new h(":memory:");g.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),g.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let _=g.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();g.close(),_&&_.content==="hello world"?I.success(T.default.green("FTS5 / SQLite: PASS")+" \u2014 native module works"):(r++,I.error(T.default.red("FTS5 / SQLite: FAIL")+" \u2014 query returned unexpected result"))}catch(h){let g=h instanceof Error?h.message:String(h);g.includes("Cannot find module")||g.includes("MODULE_NOT_FOUND")?I.warn(T.default.yellow("FTS5 / better-sqlite3: SKIP")+T.default.dim(" \u2014 module not available (restart session after upgrade)")):(r++,I.error(T.default.red("FTS5 / better-sqlite3: FAIL")+` \u2014 ${g}`+T.default.dim(`
733
+ Try: npm rebuild better-sqlite3`)))}I.step("Checking versions...");let m=hw(),f=await ZD(),p=e.getInstalledVersion();return f==="unknown"?I.warn(T.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, could not reach npm registry`):m===f?I.success(T.default.green("npm (MCP): PASS")+` \u2014 v${m}`):I.warn(T.default.yellow("npm (MCP): WARN")+` \u2014 local v${m}, latest v${f}`+T.default.dim(`
734
734
  Run: /context-mode:ctx-upgrade`)),p==="not installed"?I.info(T.default.dim(`${e.name}: not installed`)+" \u2014 using standalone MCP mode"):f!=="unknown"&&p===f?I.success(T.default.green(`${e.name}: PASS`)+` \u2014 v${p}`):f!=="unknown"?I.warn(T.default.yellow(`${e.name}: WARN`)+` \u2014 v${p}, latest v${f}`+T.default.dim(`
735
- Run: /context-mode:ctx-upgrade`)):I.info(`${e.name}: v${p}`+T.default.dim(" \u2014 could not verify against npm registry")),r>0?(Ii(T.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Ii(s.length>=4?T.default.green("Diagnostics complete!"):T.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function ZD(t){try{let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=Ne(Ei(),"insight"),a=dn(),u=(await ds(a.platform)).getSessionDir(),l=gt(ng(u),"content"),d=gt(ng(u),"insight-cache");Cr(gt(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(d,{recursive:!0});let m=n(gt(i,"server.mjs")).mtimeMs,f=Cr(gt(d,"server.mjs"))?n(gt(d,"server.mjs")).mtimeMs:0;if(m>f&&(console.log("Copying Insight source..."),s(i,d,{recursive:!0,force:!0})),!Cr(gt(d,"node_modules"))){console.log("Installing dependencies (first run)...");try{DD("npm install --production=false",{cwd:d,stdio:"inherit",timeout:3e5})}catch{try{es(gt(d,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Cr(gt(d,"node_modules","vite"))||!Cr(gt(d,"node_modules","better-sqlite3")))throw es(gt(d,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry")}console.log("Building dashboard..."),e("npx vite build",{cwd:d,stdio:"pipe",timeout:6e4});let p=`http://localhost:${t}`;console.log(`
735
+ Run: /context-mode:ctx-upgrade`)):I.info(`${e.name}: v${p}`+T.default.dim(" \u2014 could not verify against npm registry")),r>0?(Ni(T.default.red(`Diagnostics failed \u2014 ${r} critical issue(s) found`)),1):(Ni(s.length>=4?T.default.green("Diagnostics complete!"):T.default.yellow("Some checks need attention \u2014 see above for details")),0)}async function qD(t){try{let{execSync:e,spawn:r}=await import("node:child_process"),{statSync:n,mkdirSync:o,cpSync:s}=await import("node:fs"),i=ze(Pi(),"insight"),a=mn(),u=(await ms(a.platform)).getSessionDir(),l=_t(sg(u),"content"),d=_t(sg(u),"insight-cache");Ar(_t(i,"server.mjs"))||(console.error("Error: Insight source not found. Try upgrading context-mode."),process.exit(1)),o(d,{recursive:!0});let m=n(_t(i,"server.mjs")).mtimeMs,f=Ar(_t(d,"server.mjs"))?n(_t(d,"server.mjs")).mtimeMs:0;if(m>f&&(console.log("Copying Insight source..."),s(i,d,{recursive:!0,force:!0})),!Ar(_t(d,"node_modules"))){console.log("Installing dependencies (first run)...");try{LD("npm install --production=false",{cwd:d,stdio:"inherit",timeout:3e5})}catch{try{rs(_t(d,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Ar(_t(d,"node_modules","vite"))||!Ar(_t(d,"node_modules","better-sqlite3")))throw rs(_t(d,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry")}console.log("Building dashboard..."),e("npx vite build",{cwd:d,stdio:"pipe",timeout:6e4});let p=`http://localhost:${t}`;console.log(`
736
736
  context-mode Insight
737
737
  ${p}
738
- `);let h=r("node",[gt(d,"server.mjs")],{cwd:d,env:{...process.env,PORT:String(t),INSIGHT_SESSION_DIR:u,INSIGHT_CONTENT_DIR:l},stdio:"inherit"});h.on("error",()=>{}),await new Promise(_=>setTimeout(_,1500));try{let{request:_}=await import("node:http");await new Promise((y,x)=>{let k=_(`http://127.0.0.1:${t}/api/overview`,{timeout:3e3},E=>{y(),E.resume()});k.on("error",x),k.on("timeout",()=>{k.destroy(),x(new Error("timeout"))}),k.end()})}catch{console.error(`
738
+ `);let h=r("node",[_t(d,"server.mjs")],{cwd:d,env:{...process.env,PORT:String(t),INSIGHT_SESSION_DIR:u,INSIGHT_CONTENT_DIR:l},stdio:"inherit"});h.on("error",()=>{}),await new Promise(_=>setTimeout(_,1500));try{let{request:_}=await import("node:http");await new Promise((y,x)=>{let k=_(`http://127.0.0.1:${t}/api/overview`,{timeout:3e3},E=>{y(),E.resume()});k.on("error",x),k.on("timeout",()=>{k.destroy(),x(new Error("timeout"))}),k.end()})}catch{console.error(`
739
739
  Error: Port ${t} appears to be in use. Either a previous dashboard is still running, or another service is using this port.`),console.error(`
740
740
  To fix:`),console.error(` Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${t}`:`lsof -ti:${t} | xargs kill`}`),console.error(` Or use a different port: context-mode insight ${t+1}`),h.kill(),process.exit(1)}let g=process.platform;try{g==="darwin"?e(`open "${p}"`,{stdio:"pipe"}):g==="win32"?e(`start "" "${p}"`,{stdio:"pipe"}):e(`xdg-open "${p}" 2>/dev/null || sensible-browser "${p}" 2>/dev/null`,{stdio:"pipe"})}catch{}process.on("SIGINT",()=>{h.kill(),process.exit(0)}),process.on("SIGTERM",()=>{h.kill(),process.exit(0)})}catch(e){let r=e instanceof Error?e.message:String(e);console.error(`
741
- Insight error: ${r}`),process.exit(1)}}async function HD(){process.stdout.isTTY&&console.clear();let t=dn(),e=await ds(t.platform);vu(T.default.bgCyan(T.default.black(" context-mode upgrade "))),I.info(`Platform: ${T.default.cyan(e.name)}`+T.default.dim(` (${t.confidence} confidence)`));let r=Ei(),n=[],o=bu();I.step("Pulling latest from GitHub...");let s=mw(),i=gt(CD(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{rg("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",i],{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let d=i,f=JSON.parse(au(Ne(d,"package.json"),"utf-8")).version??"unknown";if(f===s){I.success(T.default.green("Already on latest")+` \u2014 v${s}`),es(i,{recursive:!0,force:!0});return}else I.info(`Update available: ${T.default.yellow("v"+s)} \u2192 ${T.default.green("v"+f)}`);o.start("Installing dependencies & building"),$i(["install","--no-audit","--no-fund"],{cwd:d,stdio:"pipe",timeout:12e4}),$i(["run","build"],{cwd:d,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let h=[...JSON.parse(au(Ne(d,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of h)try{es(Ne(r,_),{recursive:!0,force:!0}),lw(Ne(d,_),Ne(r,_),{recursive:!0})}catch{}let g={mcpServers:{"context-mode":{command:"node",args:[Ne(r,"start.mjs")]}}};if(ED(Ne(r,".mcp.json"),JSON.stringify(g,null,2)+`
742
- `),o.stop(T.default.green(`Updated in-place to v${f}`)),e.updatePluginRegistry(r,f),I.info(T.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),$i(["install","--production","--no-audit","--no-fund"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop("Dependencies ready"),t.platform!=="opencode"&&t.platform!=="kilo"){o.start("Rebuilding native addons");try{$i(["rebuild","better-sqlite3"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop(T.default.green("Native addons rebuilt")),n.push("Rebuilt better-sqlite3 for current Node.js")}catch(_){let y=_ instanceof Error?_.message:String(_);o.stop(T.default.yellow("Native addon rebuild warning")),I.warn(T.default.yellow("better-sqlite3 rebuild issue")+` \u2014 ${y}`+T.default.dim(`
743
- Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{$i(["install","-g",r,"--no-audit","--no-fund"],{stdio:"pipe",timeout:3e4}),o.stop(T.default.green("npm global updated")),n.push("Updated npm global package")}catch{o.stop(T.default.yellow("npm global update skipped")),I.info(T.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}es(i,{recursive:!0,force:!0});try{let _=Ne(og(),".claude","plugins","installed_plugins.json");if(Cr(_)){let x=JSON.parse(au(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(x))for(let k of x){let E=k.installPath;if(E&&E!==r&&Cr(E)){let B=Ne(d,"skills");Cr(B)&&(lw(B,Ne(E,"skills"),{recursive:!0}),n.push("Synced skills to active install path"))}}}}catch{}n.push(f!==s?`Updated v${s} \u2192 v${f}`:`Reinstalled v${s} from GitHub`),I.success(T.default.green("Plugin reinstalled from GitHub!")+T.default.dim(` \u2014 v${f}`))}catch(d){let m=d instanceof Error?d.message:String(d);o.stop(T.default.red("Update failed")),I.error(T.default.red("GitHub pull failed")+` \u2014 ${m}`),I.info(T.default.dim("Continuing with hooks/settings fix..."));try{es(i,{recursive:!0,force:!0})}catch{}}I.step(`Backing up ${e.name} settings...`);let a=e.backupSettings();a?.endsWith(".bak")?(I.success(T.default.green("Backup created")+T.default.dim(" -> "+a)),n.push("Backed up settings")):a?I.success(T.default.green("Backup skipped")+T.default.dim(" \u2014 no changes needed")):I.warn(T.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),I.step(`Configuring ${e.name} hooks...`);let c=e.configureAllHooks(r);for(let d of c)I.info(T.default.dim(` ${d}`)),n.push(d);I.success(T.default.green("Hooks configured")+T.default.dim(` \u2014 ${e.name}`)),I.step("Setting hook script permissions...");let u=e.setHookPermissions(r);if(process.platform!=="win32")for(let d of["build/cli.js","cli.bundle.mjs"]){let m=Ne(r,d);try{dw(m,pw.F_OK),RD(m,493),u.push(m)}catch{}}u.length>0?(I.success(T.default.green("Permissions set")+T.default.dim(` \u2014 ${u.length} hook script(s)`)),n.push(`Set ${u.length} hook scripts as executable`)):I.error(T.default.red("No hook scripts found")+T.default.dim(" \u2014 expected in "+Ne(r,"hooks"))),n.length>0?Su(n.map(d=>T.default.green(" + ")+d).join(`
744
- `),"Changes Applied"):I.info(T.default.dim("No changes were needed."));let l=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";I.warn(T.default.yellow("Restart for new MCP tools to take effect.")+T.default.dim(` (${l})`)),I.step("Running doctor to verify..."),console.log();try{let d=Ne(r,"cli.bundle.mjs"),m=Ne(r,"build","cli.js"),f=Cr(d)?d:m;rg("node",[f,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{I.warn(T.default.yellow("Doctor had warnings")+T.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}export{DD as npmExec,$i as npmExecFile,HB as toUnixPath};
741
+ Insight error: ${r}`),process.exit(1)}}async function BD(){process.stdout.isTTY&&console.clear();let t=mn(),e=await ms(t.platform);bu(T.default.bgCyan(T.default.black(" context-mode upgrade "))),I.info(`Platform: ${T.default.cyan(e.name)}`+T.default.dim(` (${t.confidence} confidence)`));let r=Pi(),n=[],o=wu();I.step("Pulling latest from GitHub...");let s=hw(),i=_t(AD(),`context-mode-upgrade-${Date.now()}`);o.start("Cloning mksglu/context-mode");try{og("git",["clone","--depth","1","https://github.com/mksglu/context-mode.git",i],{stdio:"pipe",timeout:3e4}),o.stop("Downloaded");let d=i,f=JSON.parse(uu(ze(d,"package.json"),"utf-8")).version??"unknown";if(f===s){I.success(T.default.green("Already on latest")+` \u2014 v${s}`),rs(i,{recursive:!0,force:!0});return}else I.info(`Update available: ${T.default.yellow("v"+s)} \u2192 ${T.default.green("v"+f)}`);o.start("Installing dependencies & building"),Ti(["install","--no-audit","--no-fund"],{cwd:d,stdio:"pipe",timeout:12e4}),Ti(["run","build"],{cwd:d,stdio:"pipe",timeout:6e4}),o.stop("Built successfully"),o.start("Updating files in-place");let h=[...JSON.parse(uu(ze(d,"package.json"),"utf-8")).files||[],"src","package.json"];for(let _ of h)try{rs(ze(r,_),{recursive:!0,force:!0}),pw(ze(d,_),ze(r,_),{recursive:!0})}catch{}let g={mcpServers:{"context-mode":{command:"node",args:[ze(r,"start.mjs")]}}};if(PD(ze(r,".mcp.json"),JSON.stringify(g,null,2)+`
742
+ `),o.stop(T.default.green(`Updated in-place to v${f}`)),e.updatePluginRegistry(r,f),I.info(T.default.dim(" Registry synced to "+r)),o.start("Installing production dependencies"),Ti(["install","--production","--no-audit","--no-fund"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop("Dependencies ready"),t.platform!=="opencode"&&t.platform!=="kilo"){o.start("Rebuilding native addons");try{Ti(["rebuild","better-sqlite3"],{cwd:r,stdio:"pipe",timeout:6e4}),o.stop(T.default.green("Native addons rebuilt")),n.push("Rebuilt better-sqlite3 for current Node.js")}catch(_){let y=_ instanceof Error?_.message:String(_);o.stop(T.default.yellow("Native addon rebuild warning")),I.warn(T.default.yellow("better-sqlite3 rebuild issue")+` \u2014 ${y}`+T.default.dim(`
743
+ Try manually: cd "${r}" && npm rebuild better-sqlite3`))}}o.start("Updating npm global package");try{Ti(["install","-g",r,"--no-audit","--no-fund"],{stdio:"pipe",timeout:3e4}),o.stop(T.default.green("npm global updated")),n.push("Updated npm global package")}catch{o.stop(T.default.yellow("npm global update skipped")),I.info(T.default.dim(" Could not update global npm \u2014 may need sudo or standalone install"))}rs(i,{recursive:!0,force:!0});try{let _=ze(ig(),".claude","plugins","installed_plugins.json");if(Ar(_)){let x=JSON.parse(uu(_,"utf-8"))?.plugins?.["context-mode@context-mode"];if(Array.isArray(x))for(let k of x){let E=k.installPath;if(E&&E!==r&&Ar(E)){let B=ze(d,"skills");Ar(B)&&(pw(B,ze(E,"skills"),{recursive:!0}),n.push("Synced skills to active install path"))}}}}catch{}n.push(f!==s?`Updated v${s} \u2192 v${f}`:`Reinstalled v${s} from GitHub`),I.success(T.default.green("Plugin reinstalled from GitHub!")+T.default.dim(` \u2014 v${f}`))}catch(d){let m=d instanceof Error?d.message:String(d);o.stop(T.default.red("Update failed")),I.error(T.default.red("GitHub pull failed")+` \u2014 ${m}`),I.info(T.default.dim("Continuing with hooks/settings fix..."));try{rs(i,{recursive:!0,force:!0})}catch{}}I.step(`Backing up ${e.name} settings...`);let a=e.backupSettings();a?.endsWith(".bak")?(I.success(T.default.green("Backup created")+T.default.dim(" -> "+a)),n.push("Backed up settings")):a?I.success(T.default.green("Backup skipped")+T.default.dim(" \u2014 no changes needed")):I.warn(T.default.yellow("No existing settings to backup")+" \u2014 a new one will be created"),I.step(`Configuring ${e.name} hooks...`);let c=e.configureAllHooks(r);for(let d of c)I.info(T.default.dim(` ${d}`)),n.push(d);I.success(T.default.green("Hooks configured")+T.default.dim(` \u2014 ${e.name}`)),I.step("Setting hook script permissions...");let u=e.setHookPermissions(r);if(process.platform!=="win32")for(let d of["build/cli.js","cli.bundle.mjs"]){let m=ze(r,d);try{mw(m,fw.F_OK),CD(m,493),u.push(m)}catch{}}u.length>0?(I.success(T.default.green("Permissions set")+T.default.dim(` \u2014 ${u.length} hook script(s)`)),n.push(`Set ${u.length} hook scripts as executable`)):I.error(T.default.red("No hook scripts found")+T.default.dim(" \u2014 expected in "+ze(r,"hooks"))),n.length>0?ku(n.map(d=>T.default.green(" + ")+d).join(`
744
+ `),"Changes Applied"):I.info(T.default.dim("No changes were needed."));let l=e.name==="Claude Code"?"/reload-plugins, new terminal, or restart session":"new terminal or restart session";I.warn(T.default.yellow("Restart for new MCP tools to take effect.")+T.default.dim(` (${l})`)),I.step("Running doctor to verify..."),console.log();try{let d=ze(r,"cli.bundle.mjs"),m=ze(r,"build","cli.js"),f=Ar(d)?d:m;og("node",[f,"doctor"],{stdio:"inherit",timeout:3e4,cwd:r})}catch{I.warn(T.default.yellow("Doctor had warnings")+T.default.dim(` \u2014 restart your ${e.name} session to pick up the new version`))}}export{LD as npmExec,Ti as npmExecFile,e3 as toUnixPath};