agentic-numerical-control 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,164 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <meta name="color-scheme" content="light dark">
7
+ <title>Machine</title>
8
+ <script type="module" crossorigin>var sd=Object.defineProperty;var id=(e,t,n)=>t in e?sd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var q=(e,t,n)=>id(e,typeof t!="symbol"?t+"":t,n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))o(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const a of i.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&o(a)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function o(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();var rd=Object.create,ai=Object.defineProperty,ad=Object.getOwnPropertyDescriptor,cd=Object.getOwnPropertyNames,ld=Object.getPrototypeOf,ud=Object.prototype.hasOwnProperty,dd=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),pd=(e,t)=>{let n={};for(var o in e)ai(n,o,{get:e[o],enumerable:!0});return n},md=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(var s=cd(t),i=0,a=s.length,l;i<a;i++)l=s[i],!ud.call(e,l)&&l!==n&&ai(e,l,{get:(c=>t[c]).bind(null,l),enumerable:!(o=ad(t,l))||o.enumerable});return e},hd=(e,t,n)=>(n=e!=null?rd(ld(e)):{},md(ai(n,"default",{value:e,enumerable:!0}),e));const fd=new Set(["https://json-schema.org/draft/2019-09/schema","http://json-schema.org/draft/2019-09/schema"]);function Sd(e){return typeof e=="string"&&fd.has(e.replace(/#$/,""))}function Ds(e){const t=Object.values(e).filter(o=>typeof o=="number");return Object.entries(e).filter(([o,s])=>t.indexOf(+o)===-1).map(([o,s])=>s)}function dr(e,t="|"){return e.map(n=>ba(n)).join(t)}function Hs(e,t){return typeof t=="bigint"?t.toString():t}class gd{constructor(t){this._getter=t,this._value=void 0}get value(){const t=this._getter;return t!==void 0&&(this._value=t(),this._getter=void 0),this._value}}function ss(e){return new gd(e)}function _d(e){return e==null}function ci(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function bd(e,t){const n=e/t,o=Math.round(n),s=4*Number.EPSILON*Math.max(Math.abs(n),1);return Math.abs(n-o)<s?0:n-o}const pr=Symbol("evaluating");function yd(e,t,n){let o;Object.defineProperty(e,t,{get(){if(o!==pr)return o===void 0&&(o=pr,o=n()),o},set(s){Object.defineProperty(e,t,{value:s})},configurable:!0})}function Me(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function li(e){const t=Object.getOwnPropertyDescriptor(e,"shape");return t!=null&&t.get?t.get.raw:t==null?void 0:t.value}function De(e){return li(e._zod.def)??e._zod.def.shape}function fa(e,t,n){Object.defineProperty(e,t,{get(){const o=n();return Me(this,t,o),o},enumerable:!0,configurable:!0})}function Sa(e,t,n){t in e?Me(e,t,n):e[t]=n}function ft(e,t,n,o){const s=De(t);for(const i of n){const a=Object.getOwnPropertyDescriptor(s,i);a.enumerable&&(a.get?fa(e,i,()=>{const l=t._zod.def.shape[i];return o?o(l,i):l}):Sa(e,i,o?o(a.value,i):a.value))}}function vd(e,t){for(const n of Reflect.ownKeys(t)){const o=Object.getOwnPropertyDescriptor(t,n);o.enumerable&&(o.get?fa(e,n,()=>t[n]):Sa(e,n,o.value))}}function be(...e){const t={};for(const n of e){const o=Object.getOwnPropertyDescriptors(n);Object.assign(t,o)}return Object.defineProperties({},t)}function Rd(e){return JSON.stringify(e)}function wd(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const ga="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function io(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Td=ss(()=>{var e;if(Oe.jitless||typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)!=null&&e.includes("Cloudflare")))return!1;try{const t=Function;return new t(""),!0}catch{return!1}});function Ht(e){if(io(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(io(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function _a(e){return Ht(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const Pd=new Set(["string","number","symbol"]);function Ft(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Xe(e,t,n){const o=new e._zod.constr(t??e._zod.def);return(!t||n!=null&&n.parent)&&(o._zod.parent=e),o}function E(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if((t==null?void 0:t.message)!==void 0){if((t==null?void 0:t.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function ba(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function kd(e){return Object.keys(e).filter(t=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}const ya={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]},Cd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function $d(e,t){const n=e._zod.def,o=n.checks;if(o&&o.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i={};return ft(i,e,is(e,t)),Xe(e,be(n,{shape:i,checks:[]}))}function is(e,t){var s;const n=De(e),o=[];for(const i of Reflect.ownKeys(t)){if(!((s=Object.getOwnPropertyDescriptor(n,i))!=null&&s.enumerable))throw new Error(`Unrecognized key: "${String(i)}"`);t[i]&&o.push(i)}return o}function Ed(e,t){const n=e._zod.def,o=n.checks;if(o&&o.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=new Set(is(e,t)),a={};return ft(a,e,Reflect.ownKeys(De(e)).filter(l=>!i.has(l))),Xe(e,be(n,{shape:a,checks:[]}))}function Od(e,t){if(!Ht(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0){const s=De(e);for(const i of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(s,i)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return Xe(e,be(e._zod.def,{shape:va(e,t)}))}function va(e,t){const n={};return ft(n,e,Reflect.ownKeys(De(e))),vd(n,t),n}function Id(e,t){if(!Ht(t))throw new Error("Invalid input to safeExtend: expected a plain object");return Xe(e,be(e._zod.def,{shape:va(e,t)}))}function qd(e,t){var s,i;if(!((s=t==null?void 0:t._zod)!=null&&s.def))throw new Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if((i=e._zod.def.checks)!=null&&i.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");const n={};ft(n,e,Reflect.ownKeys(De(e))),ft(n,t,Reflect.ownKeys(De(t)));const o=be(e._zod.def,{shape:n,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Xe(e,o)}function mr(e,t,n,o="partial"){const i=t._zod.def.checks;if(i&&i.length>0)throw new Error(`.${o}() cannot be used on object schemas containing refinements`);const l=n?new Set(is(t,n)):void 0,c={};return ft(c,t,Reflect.ownKeys(De(t)),e&&((p,m)=>l&&!l.has(m)?p:new e({type:"optional",innerType:p}))),Xe(t,be(t._zod.def,{shape:c,checks:[]}))}function Nd(e,t,n){const o=n?new Set(is(t,n)):void 0,s={};return ft(s,t,Reflect.ownKeys(De(t)),(i,a)=>o&&!o.has(a)?i:new e({type:"nonoptional",innerType:i})),Xe(t,be(t._zod.def,{shape:s}))}function Ze(e,t=0){var n;if(e.aborted===!0)return!0;for(let o=t;o<e.issues.length;o++)if(((n=e.issues[o])==null?void 0:n.continue)!==!0)return!0;return!1}function zd(e,t=0){var n;if(e.aborted===!0)return!0;for(let o=t;o<e.issues.length;o++)if(((n=e.issues[o])==null?void 0:n.continue)===!1)return!0;return!1}function Lt(e,t){return t.map(n=>{var o;return(o=n).path??(o.path=[]),n.path.unshift(e),n})}function Gn(e){return typeof e=="string"?e:e==null?void 0:e.message}function hr(e){const t=[];for(const n of e??[]){const o=n._zod.def;if(!/_(length|size)$|_equals$/.test(o.check))break;const s=o.maximum??o.length??o.size;s>=0&&t.push([s,n])}return t}function Fs(e,t,n){var o;for(let s=t;s<e.length;s++)(o=e[s]).schema??(o.schema=n)}function Ye(e,t,n){var c,p,m,h,f,g,b,v,R,T;var o;const s=(p=(c=e.inst)==null?void 0:c._zod)==null?void 0:p.traits;s!=null&&s.has("$ZodType")&&(s.has("$ZodCheck")?(o=e).schema??(o.schema=e.inst):e.schema=e.inst);const i=e.schema!==e.inst?(h=(m=e.schema)==null?void 0:m._zod.def)==null?void 0:h.error:void 0,a=e.message?e.message:Gn((b=(g=(f=e.inst)==null?void 0:f._zod.def)==null?void 0:g.error)==null?void 0:b.call(g,e))??Gn(i==null?void 0:i(e))??Gn((v=t==null?void 0:t.error)==null?void 0:v.call(t,e))??Gn((R=n.customError)==null?void 0:R.call(n,e))??Gn((T=n.localeError)==null?void 0:T.call(n,e))??"Invalid input",l={};for(const C of Object.keys(e))C==="inst"||C==="schema"||C==="continue"||C==="input"||C==="__proto__"||(l[C]=e[C]);return l.path??(l.path=[]),l.message=a,t!=null&&t.reportInput&&(l.input=e.input),l}const xd=/[\uD800-\uDBFF]/;function ui(e){const t=e.length;if(!xd.test(e))return t;let n=t;for(let o=0;o<t-1;o++)(e.charCodeAt(o)&64512)===55296&&(e.charCodeAt(o+1)&64512)===56320&&(n--,o++);return n}function di(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Md(e){const t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";const n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function ro(...e){const[t,n,o]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:o}:{...t}}function Ld(e,t){for(const n in t){const o=Object.getOwnPropertyDescriptor(t,n);o.get?Object.defineProperty(e,n,{...o,enumerable:!1}):Ad(e,n,o.value)}}function Qe(e,t,n,o=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:o,value:n}),n}function Ra(e,t,n){return Qe(e,t,n,!1)}function wa(e,t){for(const n in e){const o=e[n];Object.defineProperty(t,n,{configurable:!0,enumerable:!0,get(){return Qe(this,n,o(this))},set(s){Qe(this,n,s)}})}return t}function Ad(e,t,n){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?n:Qe(this,t,n.bind(this))},set(o){Qe(this,t,o)}})}function jd(e,t){const n=Object.getPrototypeOf(e);return t in n?void 0:n}let Es,Ke=!1;const Zd={configurable:!0,get(){Ke=!0}};function x(e,t,n){const o=Object.getPrototypeOf(e._zod);if(t in o&&Es!==e._zod){Es=void 0;return}Es=e._zod,Object.defineProperty(o,t,{configurable:!0,get(){Object.defineProperty(this,t,Zd);const s=Ke;Ke=!1;try{const i=n(this);return Ke?delete this[t]:Object.defineProperty(this,t,{configurable:!0,writable:!0,value:i}),Ke=Ke||s,i}catch(i){throw delete this[t],Ke=Ke||s,i}},set(s){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s})}})}function Ud(e,t,n,o){const s=jd(e,t);s&&Object.defineProperty(s,t,{configurable:!0,get(){const i={configurable:!0,writable:!0,enumerable:o,value:void 0};return Object.defineProperty(this,t,i),i.value=n(this),Object.defineProperty(this,t,i),i.value},set(i){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:o,value:i})}})}const Dd="~constantCatch";function Hd(e){const t=()=>e;return t[Dd]=!0,t}var fr;const Fd=Object.freeze({status:"aborted"}),Os={value:void 0,enumerable:!1};let Sr="captureStackTrace"in Error?Error:null;function Jd(e){const t=Sr;if(t){const n=t.stackTraceLimit;if(typeof n=="number"){try{t.stackTraceLimit=0}catch{return Sr=null,new e}try{return new e}finally{t.stackTraceLimit=n}}}return new e}function _(e,t,n,o){const s={};function i(f){this.def=f,this.constr=h,this.traits=new Set}i.prototype=s;const a=n,l=a&&new WeakSet;function c(f,g){if(f._zod){if(f._zod.traits.has(e))return}else{Os.value=new i(g);try{Object.defineProperty(f,"_zod",Os)}finally{Os.value=void 0}}if(f._zod.traits.add(e),t(f,g),l){const v=Object.getPrototypeOf(f),R=f._zod.constr.prototype;let T=v;for(;T&&T!==R;)T=Object.getPrototypeOf(T);const C=T??v;l.has(C)||(l.add(C),Ld(C,a))}const b=h.prototype;for(const v in b)Object.prototype.hasOwnProperty.call(b,v)&&(v in f||(f[v]=b[v].bind(f)))}const p=(o==null?void 0:o.Parent)??Object;class m extends p{}Object.defineProperty(m,"name",{value:e});function h(f){var R;const g=o!=null&&o.Parent?Jd(m):this;c(g,f);const b=g._zod.deferred;if(b){for(const T of b)T();g._zod.deferred=void 0}const v=(R=globalThis.__zod_globalConfig)==null?void 0:R.postProcessor;return v&&v(g),g}return Object.defineProperty(h,"init",{value:c}),Object.defineProperty(h,Symbol.hasInstance,{value:f=>{var g,b;return o!=null&&o.Parent&&f instanceof o.Parent?!0:(b=(g=f==null?void 0:f._zod)==null?void 0:g.traits)==null?void 0:b.has(e)}}),Object.defineProperty(h,"name",{value:e}),h}class mt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Ta extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}(fr=globalThis).__zod_globalConfig??(fr.__zod_globalConfig={});const Oe=globalThis.__zod_globalConfig;function Ie(e){return e&&Object.assign(Oe,e),Oe}function Vd(){const e=this._zod;return e.message??(e.message=JSON.stringify(e.def,Hs,2)),e.message}function Bd(e){this._zod.message=e}const Kd={get:Vd,set:Bd,enumerable:!0,configurable:!0},Is={value:void 0,enumerable:!1},gr=new WeakSet([Object.prototype,Error.prototype]),Wd=(e,t)=>{e.name="$ZodError",Is.value=t,Object.defineProperty(e,"issues",Is),Is.value=void 0,Object.defineProperty(e,"message",Kd);const n=Object.getPrototypeOf(e);gr.has(n)||(gr.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){const o=()=>this.message;return Object.defineProperty(this,"toString",{value:o,configurable:!0,writable:!0}),o},set(o){Object.defineProperty(this,"toString",{value:o,configurable:!0,writable:!0})}}))},Gd=_("$ZodError",Wd);function Yd(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t==="__proto__"?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function Qd(e,t=n=>n.message){const n={},o=[];for(const s of e.issues)s.path.length>0?Yd(n,s.path[0],()=>[]).push(t(s)):o.push(t(s));return{formErrors:o,fieldErrors:n}}function Xd(e,t=n=>n.message){const n={_errors:[]},o=(s,i=[])=>{for(const a of s.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(l=>o({issues:l},[...i,...a.path]));else if(a.code==="invalid_key")o({issues:a.issues},[...i,...a.path]);else if(a.code==="invalid_element")o({issues:a.issues},[...i,...a.path]);else{const l=[...i,...a.path];if(l.length===0)n._errors.push(t(a));else{let c=n,p=0;for(;p<l.length;){const m=l[p],h=p===l.length-1;if(m==="_errors"){h&&c._errors.push(t(a)),p++;continue}Object.prototype.hasOwnProperty.call(c,m)||Object.defineProperty(c,m,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});const f=c[m];h&&f._errors.push(t(a)),c=f,p++}}}};return o(e),n}function rs(e,t){return{callee:(t==null?void 0:t.callee)??e,Err:t==null?void 0:t.Err}}const pi=e=>{const t=(n,o,s,i)=>{const a=s?{...s,async:!1}:{async:!1},l=n._zod.run({value:o,issues:[]},a);if(l instanceof Promise)throw new mt;if(l.issues.length){const c=new((i==null?void 0:i.Err)??e)(l.issues.map(p=>Ye(p,a,Ie())));throw ga(c,(i==null?void 0:i.callee)??t),c}return l.value};return t},mi=e=>{const t=async(n,o,s,i)=>{const a=s?{...s,async:!0}:{async:!0};let l=n._zod.run({value:o,issues:[]},a);if(l instanceof Promise&&(l=await l),l.issues.length){const c=new((i==null?void 0:i.Err)??e)(l.issues.map(p=>Ye(p,a,Ie())));throw ga(c,(i==null?void 0:i.callee)??t),c}return l.value};return t},hi=e=>(t,n,o)=>{const s=o?{...o,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},s);if(i instanceof Promise)throw new mt;return i.issues.length?Pa(e,i.issues,s):{success:!0,data:i.value}};function Pa(e,t,n){let o;return{success:!1,get error(){return o||(o=new e(t.map(s=>Ye(s,n,Ie()))),t=void 0,n=void 0),o},set error(s){o=s,t=void 0,n=void 0}}}const fi=e=>async(t,n,o)=>{const s=o?{...o,async:!0}:{async:!0};let i=t._zod.run({value:n,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?Pa(e,i.issues,s):{success:!0,data:i.value}},ep=Symbol.for("zod.compile.invalid"),tp=Symbol.for("zod.compile.fallback"),np=((e,t,n)=>{const o=e._zod.bag.validator;if(o!==void 0){if(o(t)!==ep)return!0;if(o.definite===!0&&n===void 0)return!1}return op(e,t,n)});function op(e,t,n){const o=n?{...n,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},s=e._zod.bag.fallbackRun;let i;if(s?(o[tp]=!0,i=s({value:t,issues:[]},o)):i=e._zod.run({value:t,issues:[]},o),i instanceof Promise)throw new mt;return i.issues.length===0}const sp=async(e,t,n)=>{const o=n?{...n,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0};let s=e._zod.run({value:t,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length===0},ip=e=>{const t=pi(e),n=(o,s,i,a)=>{const l=i?{...i,direction:"backward"}:{direction:"backward"};return t(o,s,l,rs(n,a))};return n},rp=e=>{const t=pi(e),n=(o,s,i,a)=>t(o,s,i,rs(n,a));return n},ap=e=>{const t=mi(e),n=async(o,s,i,a)=>{const l=i?{...i,direction:"backward"}:{direction:"backward"};return await t(o,s,l,rs(n,a))};return n},cp=e=>{const t=mi(e),n=async(o,s,i,a)=>await t(o,s,i,rs(n,a));return n},lp=e=>(t,n,o)=>{const s=o?{...o,direction:"backward"}:{direction:"backward"};return hi(e)(t,n,s)},up=e=>(t,n,o)=>hi(e)(t,n,o),dp=e=>async(t,n,o)=>{const s=o?{...o,direction:"backward"}:{direction:"backward"};return fi(e)(t,n,s)},pp=e=>async(t,n,o)=>fi(e)(t,n,o),mp=/^[cC][0-9a-z]{6,}$/,hp=/^[0-9a-z]+$/,fp=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,Sp=/^[0-9a-vA-V]{20}$/,gp=/^[A-Za-z0-9]{27}$/,_p=/^[a-zA-Z0-9_-]{21}$/;function bp(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}const yp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,vp=/^([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})$/,_r=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[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|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Rp=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,wp="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function Tp(){return new RegExp(wp,"u")}const Pp=/^(?:(?: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])$/,kp=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,Cp=/^((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])$/,$p=/^(([0-9a-fA-F]{1,4}:){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}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ep=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Op=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/,Ip=/^https?$/,qp=/^\+[1-9]\d{6,14}$/,ka="(?:(?:\\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])))";function Np(e){return new RegExp(`^${e}$`)}const zp=Np(ka);function Js(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function xp(e){return new RegExp(`^${Js(e)}$`)}function Mp(e){const t=["Z"];e.offset&&t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const n=`${Js({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,o=e.local?`${n}|${Js({precision:e.precision})}`:n;return new RegExp(`^${ka}T(?:${o})$`)}const Lp=/^[\s\S]{0,}$/,Ap=/^-?\d+$/,Si=/^-?\d+(?:\.\d+)?$/,jp=/^(?:true|false)$/i,Zp=/^null$/i,Up=/^undefined$/i,Dp=/^[^A-Z]*$/,Hp=/^[^a-z]*$/,pe=_("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),gi=e=>{const t=e.value;return!_d(t)&&t.length!==void 0},Jo={number:"number",bigint:"bigint",object:"date"},Ca=_("$ZodCheckLessThan",(e,t)=>{pe.init(e,t);const n=Jo[typeof t.value];e._zod.check=o=>{(t.inclusive?o.value<=t.value:o.value<t.value)||o.issues.push({origin:Jo[typeof o.value]??n,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),$a=_("$ZodCheckGreaterThan",(e,t)=>{pe.init(e,t);const n=Jo[typeof t.value];e._zod.check=o=>{(t.inclusive?o.value>=t.value:o.value>t.value)||o.issues.push({origin:Jo[typeof o.value]??n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Fp=_("$ZodCheckMultipleOf",(e,t)=>{pe.init(e,t),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):bd(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Jp=_("$ZodCheckNumberFormat",(e,t)=>{var a;pe.init(e,t),t.format=t.format||"float64";const n=(a=t.format)==null?void 0:a.includes("int"),o=n?"int":"number",[s,i]=ya[t.format];e._zod.check=l=>{const c=l.value;if(n){if(!Number.isInteger(c)){l.issues.push({expected:o,format:t.format,code:"invalid_type",continue:!1,input:c,inst:e});return}if(!Number.isSafeInteger(c)){c>0?l.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:o,inclusive:!0,continue:!t.abort}):l.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:o,inclusive:!0,continue:!t.abort});return}}c<s&&l.issues.push({origin:"number",input:c,code:"too_small",minimum:s,inclusive:!0,inst:e,continue:!t.abort}),c>i&&l.issues.push({origin:"number",input:c,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}}),Vp=_("$ZodCheckMaxLength",(e,t)=>{var n;pe.init(e,t),(n=e._zod.def).when??(n.when=gi),e._zod.check=o=>{const s=o.value,i=s.length;if((typeof s=="string"&&i>t.maximum?ui(s):i)<=t.maximum)return;const l=di(s);o.issues.push({origin:l,code:"too_big",maximum:t.maximum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),Bp=_("$ZodCheckMinLength",(e,t)=>{var n;pe.init(e,t),(n=e._zod.def).when??(n.when=gi),e._zod.check=o=>{const s=o.value,i=s.length;if((typeof s=="string"&&i>=t.minimum&&i<t.minimum*2?ui(s):i)>=t.minimum)return;const l=di(s);o.issues.push({origin:l,code:"too_small",minimum:t.minimum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),Kp=_("$ZodCheckLengthEquals",(e,t)=>{var n;pe.init(e,t),(n=e._zod.def).when??(n.when=gi),e._zod.check=o=>{const s=o.value,i=s.length,a=typeof s=="string"&&i>=t.length&&i<=t.length*2?ui(s):i;if(a===t.length)return;const l=di(s),c=a>t.length;o.issues.push({origin:l,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:o.value,inst:e,continue:!t.abort})}}),as=_("$ZodCheckStringFormat",(e,t)=>{var n,o;pe.init(e,t),t.pattern?(n=e._zod).check??(n.check=s=>{t.pattern.lastIndex=0,!t.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:t.format,input:s.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(o=e._zod).check??(o.check=()=>{})}),Wp=_("$ZodCheckRegex",(e,t)=>{as.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Gp=_("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Dp),as.init(e,t)}),Yp=_("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Hp),as.init(e,t)}),Qp=_("$ZodCheckIncludes",(e,t)=>{pe.init(e,t);const n=Ft(t.includes),o=new RegExp(typeof t.position=="number"?`^.{${t.position},}${n}`:n);t.pattern=o,e._zod.check=s=>{s.value.includes(t.includes,t.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:s.value,inst:e,continue:!t.abort})}}),Xp=_("$ZodCheckStartsWith",(e,t)=>{pe.init(e,t);const n=new RegExp(`^${Ft(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.check=o=>{o.value.startsWith(t.prefix)||o.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:o.value,inst:e,continue:!t.abort})}}),em=_("$ZodCheckEndsWith",(e,t)=>{pe.init(e,t);const n=new RegExp(`.*${Ft(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.check=o=>{o.value.endsWith(t.suffix)||o.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:o.value,inst:e,continue:!t.abort})}}),tm=_("$ZodCheckOverwrite",(e,t)=>{pe.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class nm{constructor(t=[],n={}){this.content=[],this.indent=0,this.args=t,this.closed=n}indented(t){this.indent+=1;try{t(this)}finally{this.indent-=1}}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const o=t.split(`
9
+ `).filter(a=>a),s=Math.min(...o.map(a=>a.length-a.trimStart().length)),i=o.map(a=>a.slice(s)).map(a=>" ".repeat(this.indent*2)+a);for(const a of i)this.content.push(a)}compile(){const t=Function,n=(this==null?void 0:this.content)??[""];return new t(...Object.keys(this.closed),`return function (${this.args.join(", ")}) {
10
+ ${n.join(`
11
+ `)}
12
+ };`)(...Object.values(this.closed))}}const om={major:4,minor:6,patch:7},Z=_("$ZodType",(e,t)=>{var i;var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=om;const o=e._zod.def.checks,s=e._zod.traits.has("$ZodCheck")?[e,...o??[]]:o!=null&&o.length?[...o]:[];for(const a of s)for(const l of a._zod.onattach)l(e);if(s.length===0)(n=e._zod).deferred??(n.deferred=[]),(i=e._zod.deferred)==null||i.push(()=>{e._zod.run=e._zod.parse});else{const a=(c,p,m)=>{if(c.memo)return c;let h=Ze(c),f;for(const g of p){if(g._zod.def.when){if(zd(c)||!g._zod.def.when(c))continue}else if(h)continue;const b=c.issues.length,v=g._zod.check(c);if(v instanceof Promise&&(m==null?void 0:m.async)===!1)throw new mt;if(f||v instanceof Promise)f=(f??Promise.resolve()).then(async()=>{await v,c.issues.length!==b&&(Fs(c.issues,b,e),h||(h=Ze(c,b)))});else{if(c.issues.length===b)continue;Fs(c.issues,b,e),h||(h=Ze(c,b))}}return f?f.then(()=>c):c},l=(c,p,m)=>{if(Ze(c))return c.aborted=!0,c;const h=a(p,s,m);if(h instanceof Promise){if(m.async===!1)throw new mt;return h.then(f=>e._zod.parse(f,m))}return e._zod.parse(h,m)};e._zod.run=(c,p)=>{if(p.skipChecks)return e._zod.parse(c,p);if(p.direction==="backward"){const h=e._zod.parse({value:c.value,issues:[]},{...p,skipChecks:!0});return h instanceof Promise?h.then(f=>l(f,c,p)):l(h,c,p)}const m=e._zod.parse(c,p);if(m instanceof Promise){if(p.async===!1)throw new mt;return m.then(h=>a(h,s,p))}return a(m,s,p)}}},{get"~standard"(){return Ra(this,"~standard",Oa(this))},set"~standard"(e){Qe(this,"~standard",e)}}),Ea=(e,t)=>e.issues.length?{issues:e.issues.map(n=>Ye(n,t,Ie()))}:{value:e.value};async function sm(e,t){const n={async:!0};return Ea(await e._zod.run({value:t,issues:[]},n),n)}function Oa(e){return{validate:t=>{const n={async:!1};try{const o=e._zod.run({value:t,issues:[]},n);if(!(o instanceof Promise))return Ea(o,n)}catch{}return sm(e,t)},vendor:"zod",version:1}}const _i=_("$ZodString",(e,t)=>{Z.init(e,t),e._zod.pattern=t.pattern??Lp,e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),F=_("$ZodStringFormat",(e,t)=>{as.init(e,t),_i.init(e,t)}),im=_("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=vp),F.init(e,t)}),rm=_("$ZodUUID",(e,t)=>{if(t.version){const o={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(o===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=_r(o))}else t.pattern??(t.pattern=_r());F.init(e,t)}),am=_("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Rp),F.init(e,t)}),Ia=1,Vo=2;function qa(e){try{return typeof URL<"u"&&typeof URL.canParse=="function"?URL.canParse(e):(new URL(e),!0)}catch{return!1}}function cm(e,t){return!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t)?qa(e)||Vo:lm(e,t)}function lm(e,t){var n;if(!t.normalize&&((n=t.protocol)==null?void 0:n.source)===Ip.source&&!/^https?:\/\//i.test(e))return Ia;try{if(typeof URL<"u"){const o=URL;if(typeof o.parse=="function")return o.parse(e)??Vo}return new URL(e)}catch{return Vo}}const um=/[\t\n\r]/g;function br(e){return e.replace(um,"")}function dm(e,t){return t.lastIndex=0,t.test(e.hostname)}function pm(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}const mm=_("$ZodURL",(e,t)=>{F.init(e,t),e._zod.check=n=>{try{const o=n.value.trim(),s=cm(o,t);if(s===Ia){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}if(s===Vo){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort});return}if(s===!0){n.value=br(o);return}t.hostname&&!dm(s,t.hostname)&&n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort}),t.protocol&&!pm(s,t.protocol)&&n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort}),n.value=t.normalize?s.href:br(o);return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),hm=_("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Tp()),F.init(e,t)}),fm=_("$ZodNanoID",(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw new Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=t.length===void 0?_p:bp(t.length)),F.init(e,t)}),Sm=_("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=mp),F.init(e,t)}),gm=_("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=hp),F.init(e,t)}),_m=_("$ZodULID",(e,t)=>{t.pattern??(t.pattern=fp),F.init(e,t)}),bm=_("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Sp),F.init(e,t)}),ym=_("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=gp),F.init(e,t)}),vm=_("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Mp(t)),F.init(e,t)}),Rm=_("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=zp),F.init(e,t)}),wm=_("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=xp(t)),F.init(e,t)}),Tm=_("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=yp),F.init(e,t)}),Pm=_("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Pp),F.init(e,t)}),km=/^[0-9a-fA-F:.]+$/;function Na(e){return km.test(e)?qa(`http://[${e}]`):!1}const Cm=_("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=kp),F.init(e,t),e._zod.check=n=>{Na(n.value)||n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}),$m=_("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Cp),F.init(e,t)});function Em(e){const t=e.split("/");if(t.length!==2)return!1;const[n,o]=t;if(!o)return!1;const s=Number(o);return`${s}`!==o||s<0||s>128?!1:Na(n)}const Om=_("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=$p),F.init(e,t),e._zod.check=n=>{Em(n.value)||n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}});function za(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const xa=/^[0-9a-zA-Z+/]*={0,2}$/,Im=_("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=xa),F.init(e,t),e._zod.check=n=>{za(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}}),bi=/^[A-Za-z0-9_-]*$/;function qm(e){if(!bi.test(e))return!1;const t=e.replace(/[-_]/g,o=>o==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return za(n)}const Nm=_("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=bi),F.init(e,t),e._zod.check=n=>{qm(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),zm=_("$ZodE164",(e,t)=>{t.pattern??(t.pattern=qp),F.init(e,t)});function xm(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[o]=n;if(!o)return!1;const s=JSON.parse(atob(o));return!("typ"in s&&(s==null?void 0:s.typ)!=="JWT"||!s.alg||t&&(!("alg"in s)||s.alg!==t))}catch{return!1}}const Mm=_("$ZodJWT",(e,t)=>{F.init(e,t),e._zod.check=n=>{xm(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Ma=_("$ZodNumber",(e,t)=>{Z.init(e,t),e._zod.pattern=Si,e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}const s=n.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return n;const i=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:String(s):void 0;return n.issues.push({expected:"number",code:"invalid_type",input:s,inst:e,...i?{received:i}:{}}),n}}),Lm=_("$ZodNumberFormat",(e,t)=>{Jp.init(e,t),Ma.init(e,t)}),Am=_("$ZodBoolean",(e,t)=>{Z.init(e,t),e._zod.pattern=jp,e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=!!n.value}catch{}const s=n.value;return typeof s=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:e}),n}}),jm=_("$ZodUndefined",(e,t)=>{Z.init(e,t),e._zod.pattern=Up,e._zod.values=new Set([void 0]),e._zod.parse=(n,o)=>{const s=n.value;return typeof s>"u"||n.issues.push({expected:"undefined",code:"invalid_type",input:s,inst:e}),n}}),Zm=_("$ZodNull",(e,t)=>{Z.init(e,t),e._zod.pattern=Zp,e._zod.values=new Set([null]),e._zod.parse=(n,o)=>{const s=n.value;return s===null||n.issues.push({expected:"null",code:"invalid_type",input:s,inst:e}),n}}),Um=_("$ZodAny",(e,t)=>{Z.init(e,t),e._zod.parse=n=>n}),Dm=_("$ZodUnknown",(e,t)=>{Z.init(e,t),e._zod.parse=n=>n}),Hm=_("$ZodNever",(e,t)=>{Z.init(e,t),e._zod.parse=(n,o)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function Fm(e,t){const n=hr(e._zod.def.checks);if(!n.length)return;const o=Math.min(...n.map(i=>i[0])),s=e._zod.parse;e._zod.parse=(i,a)=>{const l=t(i.value);if(l>o&&!(a!=null&&a.skipChecks)&&(a==null?void 0:a.direction)!=="backward"){for(const[c,p]of hr(e._zod.def.checks))if(l>c&&p._zod.def.when(i)){const m=i.issues.length;return p._zod.check(i),i.issues[m].continue=!1,Fs(i.issues,m,e),i}}return s(i,a)}}const Jm=e=>Array.isArray(e)?e.length:-1;function yr(e,t,n){e.issues.length&&t.issues.push(...Lt(n,e.issues)),t.value[n]=e.value}const Vm=_("$ZodArray",(e,t)=>{Z.init(e,t);const n=Oe.memoizer;n==null||n.attach(e),e._zod.parse=(o,s)=>{const i=o.value;if(!Array.isArray(i))return o.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),o;o.value=n?n.alloc(e,o,Array(i.length),s):Array(i.length);const a=[],l=s==null?void 0:s.abortEarly;for(let c=0;c<i.length;c++){const p=i[c],m=t.element._zod.run({value:p,issues:[]},s);if(m instanceof Promise)a.push(m.then(h=>yr(h,o,c)));else if(yr(m,o,c),l&&m.issues.length!==0&&Ze(m))break}return a.length?Promise.all(a).then(()=>o):o},Fm(e,Jm)});function Bo(e,t,n,o,s,i){const a=n in o,l=i==="optional";if(!(!a&&l&&s==="optional")){if(e.issues.length){if(s!==void 0&&l&&!a)return;t.issues.push(...Lt(n,e.issues))}if(!a&&s===void 0){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?(a||s==="defaulted"&&!l)&&(t.value[n]=void 0):t.value[n]=e.value}}const Bm=[];function La(e){var a,l,c,p;const t=Object.keys(e.shape),n=Object.getOwnPropertySymbols(e.shape),o=n.length?n:Bm,s=o.length?[...t,...o]:t;for(const m of s)if(!((p=(c=(l=(a=e.shape)==null?void 0:a[m])==null?void 0:l._zod)==null?void 0:c.traits)!=null&&p.has("$ZodType")))throw new Error(`Invalid element at key "${String(m)}": expected a Zod schema`);const i=kd(e.shape);return{...e,allKeys:s,symbolKeys:o,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(i)}}function Aa(e,t,n,o,s,i,a){const l=[],c=s.keySet,p=s.catchall._zod,m=p.def.type,h=p.optin,f=p.optout;let g=0;for(const b in t){if(a&&n.issues.length!==g){if(Ze(n,g))break;g=n.issues.length}if(c.has(b))continue;if(b==="__proto__"){m==="never"&&l.push(b);continue}if(m==="never"){l.push(b);continue}const v=p.run({value:t[b],issues:[]},o);v instanceof Promise?e.push(v.then(R=>Bo(R,n,b,t,h,f))):Bo(v,n,b,t,h,f)}return l.length&&n.issues.push({code:"unrecognized_keys",keys:l,input:t,inst:i,continue:!0}),e.length?Promise.all(e).then(()=>n):n}const Km=_("$ZodObject",(e,t)=>{Z.init(e,t);const n=Object.getOwnPropertyDescriptor(t,"shape"),o=n!=null&&n.get?n.get.raw:t.shape??{};if(o){const p=()=>{const m={...o};return Object.defineProperty(t,"shape",{value:m}),p.raw=m,m};p.raw=o,Object.defineProperty(t,"shape",{get:p})}const s=ss(()=>La(t));x(e,"propValues",p=>{const m=p.def.shape,h={};for(const f in m){const g=m[f]._zod;if(g.values){Object.prototype.hasOwnProperty.call(h,f)||Me(h,f,new Set);for(const b of g.values)h[f].add(b);g.optin!==void 0&&h[f].add(void 0)}}return h});const i=io,a=t.catchall;let l;const c=Oe.memoizer;c==null||c.attach(e),e._zod.parse=(p,m)=>{l??(l=s.value);const h=p.value;if(!i(h))return p.issues.push({expected:"object",code:"invalid_type",input:h,inst:e}),p;p.value=c?c.alloc(e,p,{},m):{};const f=[],g=l.shape,b=m==null?void 0:m.abortEarly;let v=p.issues.length;for(const R of l.allKeys){if(b&&p.issues.length!==v){if(Ze(p,v))break;v=p.issues.length}if(R==="__proto__")continue;const T=g[R],C=T._zod.optin,j=T._zod.optout,L=T._zod.run({value:h[R],issues:[]},m);L instanceof Promise?f.push(L.then(we=>Bo(we,p,R,h,C,j))):Bo(L,p,R,h,C,j)}return a?Aa(f,h,p,m,s.value,e,b===!0):f.length?Promise.all(f).then(()=>p):p}}),Wm=_("$ZodObjectJIT",(e,t)=>{Km.init(e,t);const n=e._zod.parse,o=ss(()=>La(t)),s=Oe.memoizer,i=g=>{var we,qe;const b=o.value,v=b.symbolKeys,R=new nm(["payload","ctx"],{shape:g,inst:e,memo:s,syms:v}),T=D=>`shape[${D}]._zod.run({ value: input[${D}], issues: [] }, ctx)`,C=(D,M)=>`
13
+ let ${D}_ab = false;
14
+ for (let i = 0; i < ${D}.issues.length; i++) {
15
+ const iss = ${D}.issues[i];
16
+ iss.path = iss.path ? [${M}, ...iss.path] : [${M}];
17
+ payload.issues.push(iss);
18
+ if (iss.continue !== true) ${D}_ab = true;
19
+ }
20
+ if (${D}_ab && ctx && ctx.abortEarly) {
21
+ payload.value = newResult;
22
+ return payload;
23
+ }`;R.write("const input = payload.value;");const j=Object.create(null);let L=0;for(const D of b.allKeys)j[D]=`key_${L++}`;R.write(s?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(const D of b.allKeys){if(D==="__proto__")continue;const M=j[D],X=typeof D=="symbol"?`syms[${v.indexOf(D)}]`:Rd(D),A=`${X} in input`,J=g[D],fe=(we=J==null?void 0:J._zod)==null?void 0:we.optin,Te=fe!==void 0,ee=((qe=J==null?void 0:J._zod)==null?void 0:qe.optout)==="optional";if(R.write(`const ${M} = ${T(X)};`),Te&&ee){const Se=fe==="optional"?`${M}_present`:`${M}.value !== undefined || ${M}_present`;R.write(`
24
+ const ${M}_present = ${A};
25
+ if (!${M}.issues.length || ${M}_present) {
26
+ if (${M}.issues.length) {${C(M,X)}
27
+ }
28
+
29
+ if (${Se}) {
30
+ newResult[${X}] = ${M}.value;
31
+ }
32
+ }
33
+
34
+ `)}else Te?(R.write(`
35
+ if (${M}.issues.length) {${C(M,X)}
36
+ }
37
+ `),fe==="defaulted"?R.write(`newResult[${X}] = ${M}.value;`):R.write(`
38
+ if (${M}.value !== undefined || ${A}) {
39
+ newResult[${X}] = ${M}.value;
40
+ }
41
+ `)):R.write(`
42
+ const ${M}_present = ${A};
43
+ if (${M}.issues.length) {${C(M,X)}
44
+ }
45
+ if (!${M}_present && !${M}.issues.length) {
46
+ payload.issues.push({
47
+ code: "invalid_type",
48
+ expected: "nonoptional",
49
+ input: undefined,
50
+ path: [${X}]
51
+ });
52
+ if (ctx && ctx.abortEarly) {
53
+ payload.value = newResult;
54
+ return payload;
55
+ }
56
+ }
57
+
58
+ if (${M}_present) {
59
+ newResult[${X}] = ${M}.value;
60
+ }
61
+
62
+ `)}return R.write("payload.value = newResult;"),R.write("return payload;"),R.compile()};let a;const l=io,c=!Oe.jitless,m=c&&Td.value,h=t.catchall;let f;e._zod.parse=(g,b)=>{f??(f=o.value);const v=g.value;return l(v)?c&&m&&(b==null?void 0:b.async)===!1&&b.jitless!==!0?(a||(a=i(t.shape)),g=a(g,b),h?Aa([],v,g,b,f,e,(b==null?void 0:b.abortEarly)===!0):g):n(g,b):(g.issues.push({expected:"object",code:"invalid_type",input:v,inst:e}),g)}});function vr(e,t,n,o){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const s=e.filter(i=>!Ze(i));return s.length===1?(t.value=s[0].value,s[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(a=>Ye(a,o,Ie())))}),t)}const ja=_("$ZodUnion",(e,t)=>{Z.init(e,t),x(e,"optin",o=>o.def.options.some(s=>s._zod.optin==="defaulted")?"defaulted":o.def.options.some(s=>s._zod.optin!==void 0)?"optional":void 0),x(e,"optout",o=>o.def.options.some(s=>s._zod.optout==="optional")?"optional":void 0),x(e,"values",o=>{if(o.def.options.every(s=>s._zod.values))return new Set(o.def.options.flatMap(s=>Array.from(s._zod.values)))}),x(e,"pattern",o=>{if(o.def.options.every(s=>s._zod.pattern)){const s=o.def.options.map(i=>i._zod.pattern);return new RegExp(`^(${s.map(i=>ci(i.source)).join("|")})$`)}});const n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(o,s)=>{if(n)return n(o,s);let i=!1;const a=[];for(const l of t.options){const c=l._zod.run({value:o.value,issues:[]},s);if(c instanceof Promise)a.push(c),i=!0;else{if(c.issues.length===0)return c;a.push(c)}}return i?Promise.all(a).then(l=>vr(l,o,e,s)):vr(a,o,e,s)}});function Gm(e){var n;const t=new Map;for(const o of e.options){const s=(n=o._zod.propValues)==null?void 0:n[e.discriminator];if(!s||s.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(const i of s)if(t.has(i)){if(i!==void 0)throw new Error(`Duplicate discriminator value "${String(i)}"`);t.set(i,null)}else t.set(i,o)}return t}const Ym=_("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,ja.init(e,t);const n=e._zod.parse;x(e,"propValues",s=>{var l,c;const i={};let a=0;for(const p of s.def.options){const m=p._zod.propValues;if(!m||Object.keys(m).length===0)throw new Error(`Invalid discriminated union option at index "${s.def.options.indexOf(p)}"`);(l=m[s.def.discriminator])!=null&&l.has(void 0)&&a++;for(const[h,f]of Object.entries(m)){Object.prototype.hasOwnProperty.call(i,h)||Me(i,h,new Set);for(const g of f)i[h].add(g)}}return!s.def.unionFallback&&a>1&&((c=i[s.def.discriminator])==null||c.delete(void 0)),i}),t.options.forEach((s,i)=>{const a=li(s._zod.def);if(a&&!Object.prototype.hasOwnProperty.call(a,t.discriminator))throw new Error(`Invalid discriminated union option at index "${i}"`)});const o=ss(()=>Gm(t));e._zod.parse=(s,i)=>{const a=s.value;if(!io(a))return s.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),s;const l=a==null?void 0:a[t.discriminator],c=o.value.get(l);return c&&(l!==void 0||i.direction!=="backward")?c._zod.run(s,i):t.unionFallback||i.direction==="backward"?n(s,i):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(o.value.keys()).filter(p=>o.value.get(p)!==null),input:a,path:[t.discriminator],inst:e}),s)}}),Qm=_("$ZodIntersection",(e,t)=>{Z.init(e,t),e._zod.parse=(n,o)=>{const s=n.value,i=t.left._zod.run({value:s,issues:[]},o),a=t.right._zod.run({value:s,issues:[]},o);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,p])=>Rr(n,c,p)):Rr(n,i,a)}});function Vs(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Ht(e)&&Ht(t)){const n=Object.keys(t),o=Object.keys(e).filter(i=>n.indexOf(i)!==-1),s={...e,...t};Object.prototype.hasOwnProperty.call(s,"__proto__")&&delete s.__proto__;for(const i of o){if(i==="__proto__")continue;const a=Vs(e[i],t[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};s[i]=a.data}return{valid:!0,data:s}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let o=0;o<e.length;o++){const s=e[o],i=t[o],a=Vs(s,i);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Rr(e,t,n){const o=new Map;let s;const i=new Map,a=(p,m)=>{var f,g;let h;if(p.code==="unrecognized_keys"&&!((f=p.path)!=null&&f.length))s??(s=p),h=p.keys;else if(p.code==="invalid_key"&&p.origin==="record"&&((g=p.path)==null?void 0:g.length)===1){const b=String(p.path[0]);i.has(b)||i.set(b,p),h=[b]}else return!1;for(const b of h)o.has(b)||o.set(b,{}),o.get(b)[m]=!0;return!0};for(const p of t.issues)a(p,"l")||e.issues.push(p);for(const p of n.issues)a(p,"r")||e.issues.push(p);const l=[...o].filter(([,p])=>p.l&&p.r).map(([p])=>p);if(l.length){const p=s?l.filter(m=>s.keys.includes(m)):[];p.length&&e.issues.push({...s,keys:p});for(const m of l)!p.includes(m)&&i.has(m)&&e.issues.push(i.get(m))}const c=Vs(t.value,n.value);if(!c.valid){if(Ze(e))return e;throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}const Xm=_("$ZodRecord",(e,t)=>{Z.init(e,t);const n=Oe.memoizer;n==null||n.attach(e),e._zod.parse=(o,s)=>{const i=o.value;if(!Ht(i))return o.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),o;const a=[],l=t.keyType._zod.values;if(l&&!t.partial){o.value=n?n.alloc(e,o,{},s):{};const c=new Set;for(const m of l)if(typeof m=="string"||typeof m=="number"||typeof m=="symbol"){if(c.add(typeof m=="number"?m.toString():m),m==="__proto__")continue;const h=t.keyType._zod.run({value:m,issues:[]},s);if(h instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(h.issues.length){o.issues.push({code:"invalid_key",origin:"record",issues:h.issues.map(b=>Ye(b,s,Ie())),input:m,path:[m],inst:e});continue}const f=h.value;if(f==="__proto__")continue;const g=t.valueType._zod.run({value:i[m],issues:[]},s);g instanceof Promise?a.push(g.then(b=>{b.issues.length&&o.issues.push(...Lt(m,b.issues)),o.value[f]=b.value})):(g.issues.length&&o.issues.push(...Lt(m,g.issues)),o.value[f]=g.value)}let p;for(const m in i)if(!c.has(m))if(t.mode==="loose"){if(m==="__proto__")continue;o.value[m]=i[m]}else p=p??[],p.push(m);p&&p.length>0&&o.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:p,continue:!0})}else{o.value=n?n.alloc(e,o,{},s):{};let c;for(const p of Reflect.ownKeys(i)){if(p==="__proto__"||!Object.prototype.propertyIsEnumerable.call(i,p))continue;let m=t.keyType._zod.run({value:p,issues:[]},s);if(m instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof p=="string"&&Si.test(p)&&m.issues.length){const b=t.keyType._zod.run({value:Number(p),issues:[]},s);if(b instanceof Promise)throw new Error("Async schemas not supported in object keys currently");b.issues.length===0&&(m=b)}if(m.issues.length){t.mode==="loose"?o.value[p]=i[p]:l?(c=c??[],c.push(p)):o.issues.push({code:"invalid_key",origin:"record",issues:m.issues.map(b=>Ye(b,s,Ie())),input:p,path:[p],inst:e});continue}const f=m.value;if(f==="__proto__")continue;const g=t.valueType._zod.run({value:i[p],issues:[]},s);g instanceof Promise?a.push(g.then(b=>{b.issues.length&&o.issues.push(...Lt(p,b.issues)),o.value[f]=b.value})):(g.issues.length&&o.issues.push(...Lt(p,g.issues)),o.value[f]=g.value)}c&&c.length>0&&o.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:c,continue:!0})}return a.length?Promise.all(a).then(()=>o):o}}),eh=_("$ZodEnum",(e,t)=>{Z.init(e,t);const n=Ds(t.entries),o=new Set(n);e._zod.values=o,x(e,"pattern",s=>{const i=Ds(s.def.entries).filter(a=>Pd.has(typeof a));return new RegExp(i.length?`^(${i.map(a=>Ft(a.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(s,i)=>{const a=s.value;return o.has(a)||s.issues.push({code:"invalid_value",values:n,input:a,inst:e}),s}}),th=_("$ZodLiteral",(e,t)=>{Z.init(e,t);const n=new Set(t.values);e._zod.values=n,x(e,"pattern",o=>{const s=o.def.values;return new RegExp(s.length?`^(${s.map(i=>typeof i=="string"?Ft(i):i?Ft(i.toString()):String(i)).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(o,s)=>{const i=o.value;return n.has(i)||o.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),o}}),nh=_("$ZodTransform",(e,t)=>{var n;Z.init(e,t),e._zod.optin="optional",(n=Oe.memoizer)==null||n.guard(e),e._zod.parse=(o,s)=>{if(s.direction==="backward")throw new Ta(e.constructor.name);const i=t.transform(o.value,o);if(s.async)return(i instanceof Promise?i:Promise.resolve(i)).then(l=>(o.value=l,o));if(i instanceof Promise)throw new mt;return o.value=i,o}});function wr(e,t){return e.value=t.issues.length?void 0:t.value,e}const Za=_("$ZodOptional",(e,t)=>{Z.init(e,t),x(e,"optin",n=>n.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",x(e,"values",n=>{const o=n.def.innerType._zod.values;return o?new Set([...o,void 0]):void 0}),x(e,"pattern",n=>{const o=n.def.innerType._zod.pattern;return o?new RegExp(`^(${ci(o.source)})?$`):void 0}),e._zod.parse=(n,o)=>{if(n.value===void 0){if(t.innerType._zod.optin!=="defaulted")return n;const s=t.innerType._zod.run({value:n.value,issues:[]},o);return s instanceof Promise?s.then(i=>wr(n,i)):wr(n,s)}return t.innerType._zod.run(n,o)}}),oh=_("$ZodExactOptional",(e,t)=>{Za.init(e,t),x(e,"values",n=>n.def.innerType._zod.values),x(e,"pattern",n=>n.def.innerType._zod.pattern),e._zod.parse=(n,o)=>t.innerType._zod.run(n,o)}),sh=_("$ZodNullable",(e,t)=>{Z.init(e,t),x(e,"optin",n=>n.def.innerType._zod.optin),x(e,"optout",n=>n.def.innerType._zod.optout),x(e,"pattern",n=>{const o=n.def.innerType._zod.pattern;return o?new RegExp(`^(${ci(o.source)}|null)$`):void 0}),x(e,"values",n=>n.def.innerType._zod.values?new Set([...n.def.innerType._zod.values,null]):void 0),e._zod.parse=(n,o)=>n.value===null?n:t.innerType._zod.run(n,o)}),ih=_("$ZodDefault",(e,t)=>{Z.init(e,t),e._zod.optin="defaulted",x(e,"values",n=>n.def.innerType._zod.values),e._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);if(n.value===void 0)return n.value=t.defaultValue,n;const s=t.innerType._zod.run(n,o);return s instanceof Promise?s.then(i=>Tr(i,t)):Tr(s,t)}});function Tr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const rh=_("$ZodPrefault",(e,t)=>{Z.init(e,t),e._zod.optin="defaulted",x(e,"values",n=>n.def.innerType._zod.values),e._zod.parse=(n,o)=>(o.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,o))}),ah=_("$ZodNonOptional",(e,t)=>{Z.init(e,t),x(e,"values",n=>{const o=n.def.innerType._zod.values;return o?new Set([...o].filter(s=>s!==void 0)):void 0}),e._zod.parse=(n,o)=>{const s=t.innerType._zod.run(n,o);return s instanceof Promise?s.then(i=>Pr(i,e)):Pr(s,e)}});function Pr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}function kr(e,t,n,o){return t.issues.length?(e.value=n.catchValue({...t,value:e.value,error:{issues:t.issues.map(s=>Ye(s,o,Ie()))},input:e.value}),e):(e.value=t.value,t.memo&&(e.memo=!0),e)}const ch=_("$ZodCatch",(e,t)=>{Z.init(e,t),x(e,"optin",n=>n.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),x(e,"optout",n=>n.def.innerType._zod.optout),x(e,"values",n=>n.def.innerType._zod.values),e._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);const s=t.innerType._zod.run({value:n.value,issues:[]},o);return s instanceof Promise?s.then(i=>kr(n,i,t,o)):kr(n,s,t,o)}}),Ua=_("$ZodPipe",(e,t)=>{Z.init(e,t),x(e,"values",n=>n.def.in._zod.values),x(e,"optin",n=>n.def.in._zod.optin),x(e,"optout",n=>n.def.out._zod.optout),x(e,"propValues",n=>n.def.in._zod.propValues),e._zod.parse=(n,o)=>{if(o.direction==="backward"){const i=t.out._zod.run(n,o);return i instanceof Promise?i.then(a=>Io(a,t.in,o)):Io(i,t.in,o)}const s=t.in._zod.run(n,o);return s instanceof Promise?s.then(i=>Io(i,t.out,o)):Io(s,t.out,o)}});function Io(e,t,n){return e.issues.some(o=>o.code!=="unrecognized_keys")?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const lh=_("$ZodPreprocess",(e,t)=>{Ua.init(e,t)}),uh=_("$ZodReadonly",(e,t)=>{Z.init(e,t),x(e,"propValues",n=>n.def.innerType._zod.propValues),x(e,"values",n=>n.def.innerType._zod.values),x(e,"optin",n=>{var o,s;return(s=(o=n.def.innerType)==null?void 0:o._zod)==null?void 0:s.optin}),x(e,"optout",n=>{var o,s;return(s=(o=n.def.innerType)==null?void 0:o._zod)==null?void 0:s.optout}),e._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);const s=t.innerType._zod.run(n,o);return s instanceof Promise?s.then(Cr):Cr(s)}});function Cr(e){return e.memo||(e.value=Object.freeze(e.value)),e}const dh=_("$ZodLazy",(e,t)=>{Z.init(e,t),yd(e._zod,"innerType",()=>{const n=t;return n._cachedInner||(n._cachedInner=t.getter()),n._cachedInner}),x(e,"pattern",n=>{var o,s;return(s=(o=n.innerType)==null?void 0:o._zod)==null?void 0:s.pattern}),x(e,"propValues",n=>{var o,s;return(s=(o=n.innerType)==null?void 0:o._zod)==null?void 0:s.propValues}),x(e,"optin",n=>{var o,s;return((s=(o=n.innerType)==null?void 0:o._zod)==null?void 0:s.optin)??void 0}),x(e,"optout",n=>{var o,s;return((s=(o=n.innerType)==null?void 0:o._zod)==null?void 0:s.optout)??void 0}),e._zod.parse=(n,o)=>e._zod.innerType._zod.run(n,o)}),ph=_("$ZodCustom",(e,t)=>{pe.init(e,t),Z.init(e,t),e._zod.parse=(n,o)=>n,e._zod.check=n=>{const o=n.value,s=t.fn(o);if(s instanceof Promise)return s.then(i=>$r(i,n,o,e));$r(s,n,o,e)}});function $r(e,t,n,o){if(!e){const s={code:"custom",input:n,inst:o,path:[...o._zod.def.path??[]],continue:!o._zod.def.abort};o._zod.def.params&&(s.params=o._zod.def.params),t.issues.push(ro(s))}}class mh extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform"),this.name="ZodCyclicError"}}const Bs="~memo",Er=[];function Da(e){return e!==null&&typeof e=="object"}function qs(e){return e.map(t=>t.path?{...t,path:t.path.slice()}:{...t})}const Ha=new WeakMap,Xn=0,Ho=1,to=2;function Fo(e,t,n){const o=Ha.get(e);if(o!==void 0)return o?to:Xn;if(t.has(e))return to;t.add(e);let s=Xn;const i=m=>{if(s!==to&&(m!=null&&m._zod)){const h=Fo(m,t);h>s&&(s=h)}},a=(m,h)=>{var g;let f=Xn;for(const b of Reflect.ownKeys(m)){const v=Object.getOwnPropertyDescriptor(m,b);if(!v.enumerable)continue;const R=v.get?Ho:(g=v.value)!=null&&g._zod?Fo(v.value,t):Xn;R>f&&(f=R)}return f},l=m=>{m>s&&(s=m)},c=e._zod.def;switch(c.type){case"object":{const m=li(c);l(m?a(m):Ho),i(c.catchall);break}case"array":i(c.element);break;case"tuple":for(const m of c.items)i(m);i(c.rest);break;case"record":case"map":i(c.keyType),i(c.valueType);break;case"set":i(c.valueType);break;case"union":for(const m of c.options)i(m);break;case"intersection":i(c.left),i(c.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":i(c.innerType);break;case"pipe":i(c.in),i(c.out);break;case"function":i(c.input),i(c.output);break;case"lazy":{const m=c._cachedInner??void 0;l(m?Fo(m,t):Ho);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(const m in c){const h=Object.getOwnPropertyDescriptor(c,m);if(!h||h.get)continue;const f=h.value;if(!(!f||typeof f!="object")){if(f._zod)i(f);else if(Array.isArray(f))for(const g of f)i(g)}}}return t.delete(e),hh(e,s)}function hh(e,t){return t!==Ho&&Ha.set(e,t===to),t}function fh(e,t){let n=e.buckets.get(t);return n||(n=new WeakMap,e.buckets.set(t,n)),n}let qo;const No=[],Sh={alloc(e,t,n){const o=qo;if(!o)return n;qo=void 0;const s={value:n,issues:null};return o.set(t.value,s),No.push(s),n},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{const n=e._zod.parse,o=(s,i)=>{if(i.direction!=="backward"&&_h(i,s.value))throw new mh;return n(s,i)};e._zod.parse=o,e._zod.run===n&&(e._zod.run=o)})},attach(e){var t;let n,o=!1,s,i;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{const a=e._zod.parse,l=(c,p)=>{if(n===void 0){const T=Fo(e,new Set);if(T===Xn)return e._zod.parse=a,e._zod.run===l&&(e._zod.run=a),a(c,p);T===to||o?n=!0:o=!0}const m=c.value;if(!Da(m))return a(c,p);let h=p[Bs];h||(h={buckets:new WeakMap,backEdges:void 0},p[Bs]=h);let f;s===p?f=i:(f=fh(h,e),s=p,i=f);const g=f.get(m);if(g)return c.value=g.value,g.issues?g.issues.length&&c.issues.push(...qs(g.issues)):(c.memo=!0,h.backEdges??(h.backEdges=new WeakSet),h.backEdges.add(g.value)),c;qo=f;const b=No.length,v=a(c,p);qo=void 0;const R=No.length>b?No.pop():void 0;return v instanceof Promise?v.then(T=>(R&&(R.issues=T.issues.length?qs(T.issues):Er),T)):(R&&(R.issues=v.issues.length?qs(v.issues):Er),v)};e._zod.parse=l,e._zod.run===a&&(e._zod.run=l)})}};function gh(){return Sh}function _h(e,t){var o;const n=(o=e[Bs])==null?void 0:o.backEdges;return n!==void 0&&Da(t)&&n.has(t)}const bh=()=>{const e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}const n={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",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};function s(i,a){return i==="number"&&typeof a=="number"&&!Number.isFinite(a)?String(a):o[i]??i}return i=>{switch(i.code){case"invalid_type":{const a=s(i.expected),l=Md(i.input),c=s(l,i.input);return`Invalid input: expected ${a}, received ${c}`}case"invalid_value":return i.values.length===1?`Invalid input: expected ${ba(i.values[0])}`:`Invalid option: expected one of ${dr(i.values,"|")}`;case"too_big":{const a=i.exact?"exactly ":i.inclusive?"<=":"<",l=t(i.origin);return l?`Too big: expected ${i.origin??"value"} to have ${a}${i.maximum.toString()} ${l.unit??"elements"}`:`Too big: expected ${i.origin??"value"} to be ${a}${i.maximum.toString()}`}case"too_small":{const a=i.exact?"exactly ":i.inclusive?">=":">",l=t(i.origin);return l?`Too small: expected ${i.origin} to have ${a}${i.minimum.toString()} ${l.unit}`:`Too small: expected ${i.origin} to be ${a}${i.minimum.toString()}`}case"invalid_format":{const a=i;return a.format==="starts_with"?`Invalid string: must start with "${a.prefix}"`:a.format==="ends_with"?`Invalid string: must end with "${a.suffix}"`:a.format==="includes"?`Invalid string: must include "${a.includes}"`:a.format==="regex"?`Invalid string: must match pattern ${a.pattern}`:`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${dr(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":return i.options&&Array.isArray(i.options)&&i.options.length>0?`Invalid discriminator value. Expected ${i.options.map(l=>`'${l}'`).join(" | ")}`:i.inclusive===!1?"Invalid input: more than one option matched":"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}};function yh(){return{localeError:bh()}}var Or;class vh{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const o=n[0];return this._map.set(t,o),o&&typeof o=="object"&&"id"in o&&this._idmap.set(o.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const o={...this.get(n)??{}};delete o.id;const s={...o,...this._map.get(t)};return Object.keys(s).length?s:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function Rh(){return new vh}(Or=globalThis).__zod_globalRegistry??(Or.__zod_globalRegistry=Rh());const eo=globalThis.__zod_globalRegistry;function yi(e){return e.checks&&(e.checks=[...e.checks]),e}function wh(e,t){return new e(yi({type:"string",...E(t)}))}function Fa(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...E(t)})}function Th(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...E(t)})}function Ph(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...E(t)})}function kh(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...E(t)})}function Ch(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...E(t)})}function $h(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...E(t)})}function Ja(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...E(t)})}function Eh(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...E(t)})}function Oh(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...E(t)})}function Ih(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...E(t)})}function qh(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...E(t)})}function Nh(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...E(t)})}function zh(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...E(t)})}function xh(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...E(t)})}function Mh(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...E(t)})}function Lh(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...E(t)})}function Ah(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...E(t)})}function jh(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...E(t)})}function Zh(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...E(t)})}function Uh(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...E(t)})}function Dh(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...E(t)})}function Hh(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...E(t)})}function Va(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...E(t)})}function Ba(e,t){return new e({type:"string",format:"date",check:"string_format",...E(t)})}function Fh(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...E(t)})}function Jh(e,t){return new e({type:"string",format:"duration",check:"string_format",...E(t)})}function Vh(e,t){return new e(yi({type:"number",checks:[],...E(t)}))}function Bh(e,t){return new e(yi({type:"number",coerce:!0,checks:[],...E(t)}))}function Kh(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...E(t)})}function Wh(e,t){return new e({type:"boolean",...E(t)})}function Gh(e,t){return new e({type:"undefined",...E(t)})}function Yh(e,t){return new e({type:"null",...E(t)})}function Qh(e){return new e({type:"any"})}function Xh(e){return new e({type:"unknown"})}function ef(e,t){return new e({type:"never",...E(t)})}function Ir(e,t){return new Ca({check:"less_than",...E(t),value:e,inclusive:!1})}function Ns(e,t){return new Ca({check:"less_than",...E(t),value:e,inclusive:!0})}function qr(e,t){return new $a({check:"greater_than",...E(t),value:e,inclusive:!1})}function zs(e,t){return new $a({check:"greater_than",...E(t),value:e,inclusive:!0})}function Nr(e,t){return new Fp({check:"multiple_of",...E(t),value:e})}function Ka(e,t){return new Vp({check:"max_length",...E(t),maximum:e})}function Ko(e,t){return new Bp({check:"min_length",...E(t),minimum:e})}function Wa(e,t){return new Kp({check:"length_equals",...E(t),length:e})}function tf(e,t){return new Wp({check:"string_format",format:"regex",...E(t),pattern:e})}function nf(e){return new Gp({check:"string_format",format:"lowercase",...E(e)})}function of(e){return new Yp({check:"string_format",format:"uppercase",...E(e)})}function sf(e,t){return new Qp({check:"string_format",format:"includes",...E(t),includes:e})}function rf(e,t){return new Xp({check:"string_format",format:"starts_with",...E(t),prefix:e})}function af(e,t){return new em({check:"string_format",format:"ends_with",...E(t),suffix:e})}function Kt(e){return new tm({check:"overwrite",tx:e})}function cf(e){return Kt(t=>t.normalize(e))}function lf(){return Kt(e=>e.trim())}function uf(){return Kt(e=>e.toLowerCase())}function df(){return Kt(e=>e.toUpperCase())}function pf(){return Kt(e=>wd(e))}function mf(e,t,n){return new e({type:"array",element:t,...E(n)})}function hf(e,t,n){return new e({type:"custom",check:"custom",fn:t,...E(n)})}function ff(e,t){const n=Sf(o=>(o.addIssue=s=>{if(typeof s=="string")o.issues.push(ro(s,o.value,n._zod.def));else{const i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),"input"in i||(i.input=o.value),i.inst??(i.inst=n),i.continue??(i.continue=!n._zod.def.abort),o.issues.push(ro(i))}},e(o.value,o)),t);return n}function Sf(e,t){const n=new pe({check:"custom",...E(t)});return n._zod.check=e,n}function no(e,...t){for(const n of t)for(const o of Reflect.ownKeys(n))Object.prototype.propertyIsEnumerable.call(n,o)&&Me(e,o,n[o]);return e}function Wo(e){let t=(e==null?void 0:e.target)??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:(e==null?void 0:e.metadata)??eo,target:t,unrepresentable:(e==null?void 0:e.unrepresentable)??"throw",override:(e==null?void 0:e.override)??(()=>{}),io:(e==null?void 0:e.io)??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:(e==null?void 0:e.cycles)??"ref",reused:(e==null?void 0:e.reused)??"inline",intersections:[],deferred:[],external:(e==null?void 0:e.external)??void 0}}function oe(e,t,n,o,s){const i=typeof t.unrepresentable=="function"?t.unrepresentable({zodSchema:e,path:o.path,message:s}):t.unrepresentable;if(i==="any")return!1;if(i===void 0||i==="throw")throw new Error(s);return Object.assign(n,i),!0}function H(e,t,n={path:[],schemaPath:[]}){var m,h;var o;const s=e._zod.def,i=t.seen.get(e);if(i)return i.count++,n.schemaPath.includes(e)&&(i.cycle=n.path),i.schema;const a={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,a),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;const l=(h=(m=e._zod).toJSONSchema)==null?void 0:h.call(m);if(l)a.schema=l;else{const f={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,f);else{const b=a.schema,v=t.processors[s.type];if(!v)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${s.type}`);v(e,t,b,f)}const g=e._zod.parent;g&&(a.ref||(a.ref=g),H(g,t,f),t.seen.get(g).isParent=!0)}const c=t.metadataRegistry.get(e);return c&&no(a.schema,c),t.io==="input"&&ue(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&"_prefault"in a.schema&&((o=a.schema).default??(o.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function zr(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Go(e,t){var a,l,c,p;const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;const o=new Map;for(const m of e.seen.entries()){const h=(a=e.metadataRegistry.get(m[0]))==null?void 0:a.id;if(h){const f=o.get(h);if(f&&f!==m[0])throw new Error(`Duplicate schema id "${h}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);o.set(h,m[0])}}const s=m=>{var v;const h=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const R=(v=e.external.registry.get(m[0]))==null?void 0:v.id,T=e.external.uri??(j=>j);if(R)return{ref:T(R)};const C=m[1].defId??m[1].schema.id??`schema${e.counter++}`;return m[1].defId=C,{defId:C,ref:`${T("__shared")}#/${h}/${zr(C)}`}}const f="#",g=`${f}/${h}/`;if(m[1]===n&&!m[1].schema.id)return{ref:f};const b=m[1].schema.id??`__schema${e.counter++}`;return{defId:b,ref:g+zr(b)}},i=m=>{if(m[1].schema.$ref)return;const h=m[1],{ref:f,defId:g}=s(m);h.def={...h.schema},g&&(h.defId=g);const b=h.schema;for(const v in b)delete b[v];b.$ref=f};if(e.cycles==="throw")for(const m of e.seen.entries()){const h=m[1];if(h.cycle)throw new Error(`Cycle detected: #/${(l=h.cycle)==null?void 0:l.join("/")}/<root>
63
+
64
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const m of e.seen.entries()){const h=m[1];if(t===m[0]){i(m);continue}if(e.external){const g=(c=e.external.registry.get(m[0]))==null?void 0:c.id;if(t!==m[0]&&g){i(m);continue}}if((p=e.metadataRegistry.get(m[0]))==null?void 0:p.id){i(m);continue}if(h.cycle){i(m);continue}h.count>1&&e.reused==="ref"&&i(m)}e.external&&(e.sharedDefsExtractedFor=e.external)}function Ga(e){const t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;const n=[];for(const o of t){if(!o||typeof o!="object")return;Ga(o);const s=Object.keys(o);if(s.length!==1||s[0]!=="type")return;const i=o.type;for(const a of Array.isArray(i)?i:[i]){if(typeof a!="string")return;n.includes(a)||n.push(a)}}delete e.anyOf,e.type=n.length===1?n[0]:n}const Ya=new Set(["type","properties","required","additionalProperties"]),xr=["oneOf","anyOf"];function Mr(e){const t=e.additionalProperties;return t===void 0||t===!1||typeof t!="object"||t===null?null:Object.keys(t).length?t:null}function Ks(e){var i;const t=[];for(const a of e){if(typeof a!="object"||a.type!=="object")return null;for(const l in a)if(!Ya.has(l))return null;t.push(a)}const n={},o=new Set;for(const a of t){for(const l in a.properties){if(Object.prototype.hasOwnProperty.call(n,l))continue;const c=[];for(const m of t){const h=((i=m.properties)==null?void 0:i[l])??Mr(m);h!=null&&(c.some(f=>JSON.stringify(f)===JSON.stringify(h))||c.push(h))}const p=c.length===1?c[0]:Ks(c)??{allOf:c};Me(n,l,p)}for(const l of a.required??[])o.add(l)}const s={type:"object",properties:n};if(o.size&&(s.required=[...o]),t.every(a=>a.additionalProperties===!1))s.additionalProperties=!1;else{const a=[];for(const l of t){const c=Mr(l);c&&!a.some(p=>JSON.stringify(p)===JSON.stringify(c))&&a.push(c)}a.length===1?s.additionalProperties=a[0]:a.length>1&&(s.additionalProperties={allOf:a})}return s}function gf(e){const t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(const s of Ya)if(s in e)return;const n=t.filter(s=>xr.some(i=>Array.isArray(s[i])));let o=null;if(!n.length)o=Ks(t);else{const s=n[0],i=xr.find(c=>Array.isArray(s[c]));if(Object.keys(s).length!==1)return;const a=t.filter(c=>c!==s),l=s[i].map(c=>Ks([...a,c]));if(l.some(c=>!c))return;o={[i]:l}}o&&(delete e.allOf,no(e,o))}function Yo(e,t){var l,c,p,m;const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const o=h=>{const f=e.seen.get(h);if(f.ref===null)return;const g=f.def??f.schema,b={...g},v=f.ref;if(f.ref=null,v){o(v);const T=e.seen.get(v),C=T.schema;if(C.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(g.allOf=g.allOf??[],g.allOf.push(C)):no(g,C),no(g,b),h._zod.parent===v)for(const L in g)L==="$ref"||L==="allOf"||L in b||delete g[L];if(C.$ref&&T.def)for(const L in g)L==="$ref"||L==="allOf"||L in T.def&&JSON.stringify(g[L])===JSON.stringify(T.def[L])&&delete g[L]}const R=h._zod.parent;if(R&&R!==v){o(R);const T=e.seen.get(R);if(T!=null&&T.schema.$ref&&(g.$ref=T.schema.$ref,T.def))for(const C in g)C==="$ref"||C==="allOf"||C in T.def&&JSON.stringify(g[C])===JSON.stringify(T.def[C])&&delete g[C]}e.override({zodSchema:h,jsonSchema:g,path:f.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(const h of[...e.seen.entries()].reverse())o(h[0]);if(e.target!=="openapi-3.0")for(const h of e.seen.entries())Ga(h[1].def??h[1].schema);for(const h of e.deferred)h();if(e.intersections.length){const h=new Map;for(const f of e.seen.values())for(const g of[f.schema,f.def]){const b=g==null?void 0:g.allOf;if(!Array.isArray(b))continue;const v=h.get(b);v?v.push(g):h.set(b,[g])}for(const f of e.intersections)for(const g of h.get(f)??[])gf(g)}}const s={};if(e.target==="draft-2020-12"?s.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?s.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?s.$schema="http://json-schema.org/draft-04/schema#":e.target,(l=e.external)!=null&&l.uri){const h=(c=e.external.registry.get(t))==null?void 0:c.id;if(!h)throw new Error("Schema is missing an `id` property");s.$id=e.external.uri(h)}no(s,n.defId?n.schema:n.def??n.schema);const i=(p=e.metadataRegistry.get(t))==null?void 0:p.id;i!==void 0&&s.id===i&&delete s.id;const a=((m=e.external)==null?void 0:m.defs)??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(const h of e.seen.entries()){const f=h[1];f.def&&f.defId&&(f.def.id===f.defId&&delete f.def.id,Me(a,f.defId,f.def))}e.external&&(e.sharedEmitDoneFor=e.external),e.external||Object.keys(a).length>0&&(e.target==="draft-2020-12"?s.$defs=a:s.definitions=a);try{const h=JSON.parse(JSON.stringify(s));return Object.defineProperty(h,"~standard",{value:{...t["~standard"],jsonSchema:{input:Qo(t,"input",e.processors),output:Qo(t,"output",e.processors)}},enumerable:!1,writable:!1}),h}catch{throw new Error("Error converting schema to JSON.")}}function ue(e,t){const n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);const o=e._zod.def;if(o.type==="transform")return!0;if(o.type==="array")return ue(o.element,n);if(o.type==="set")return ue(o.valueType,n);if(o.type==="lazy")return ue(o.getter(),n);if(o.type==="promise"||o.type==="optional"||o.type==="nonoptional"||o.type==="nullable"||o.type==="readonly"||o.type==="default"||o.type==="prefault"||o.type==="catch")return ue(o.innerType,n);if(o.type==="intersection")return ue(o.left,n)||ue(o.right,n);if(o.type==="record"||o.type==="map")return ue(o.keyType,n)||ue(o.valueType,n);if(o.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:ue(o.in,n)||ue(o.out,n);if(o.type==="object"){for(const s in o.shape)if(ue(o.shape[s],n))return!0;return!1}if(o.type==="union"){for(const s of o.options)if(ue(s,n))return!0;return!1}if(o.type==="tuple"){for(const s of o.items)if(ue(s,n))return!0;return!!(o.rest&&ue(o.rest,n))}return!1}const _f=(e,t={})=>n=>{const o=Wo({...n,processors:t});return H(e,o),Go(o,e),Yo(o,e)},Qo=(e,t,n={})=>o=>{const{libraryOptions:s,target:i}=o??{},a=Wo({...s??{},target:i,io:t,processors:n});return H(e,a),Go(a,e),Yo(a,e)},Jt=(e,t,n)=>{(e[t]===void 0||n>e[t])&&(e[t]=n)},Vt=(e,t,n)=>{(e[t]===void 0||n<e[t])&&(e[t]=n)},Lr=(e,t)=>{Jt(e,"minimum",t),Vt(e,"maximum",t)},Qa=(e,t)=>{e.multipleOf??(e.multipleOf=[]),e.multipleOf.includes(t)||e.multipleOf.push(t)},Xa=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},ec=(e,t)=>{e.mime=e.mime?e.mime.filter(n=>t.includes(n)):[...t]},tc=(e,t)=>{e.format=t,t.includes("int")&&(e.isInt=!0)},Ar=(e,t)=>Jt(e,"minimum",t.minimum),jr=(e,t)=>Vt(e,"maximum",t.maximum),Zr=e=>(t,n)=>{tc(t,n.format);const[o,s]=e[n.format];Jt(t,"minimum",o),Vt(t,"maximum",s)},xs={greater_than:(e,t)=>Jt(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>Vt(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>Qa(e,t.value),number_format:Zr(ya),bigint_format:Zr(Cd),min_length:Ar,max_length:jr,length_equals:(e,t)=>Lr(e,t.length),min_size:Ar,max_size:jr,size_equals:(e,t)=>Lr(e,t.size),string_format:(e,t)=>{tc(e,t.format),t.pattern&&Xa(e,t.pattern),(t.format==="base64"||t.format==="base64url")&&(e.contentEncoding=t.format),(t.local||t.precision===-1)&&(e.laxFormat=!0)},mime_type:(e,t)=>ec(e,t.mime)};function ye(e){var i;const t={},n=e._zod.def,o=e._zod.traits.has("$ZodCheck")?[e,...n.checks??[]]:n.checks??[];for(const a of o)(i=xs[a._zod.def.check])==null||i.call(xs,t,a._zod.def);const s=e._zod.bag;s.minimum!==void 0&&Jt(t,"minimum",s.minimum),s.exclusiveMinimum!==void 0&&Jt(t,"exclusiveMinimum",s.exclusiveMinimum),s.maximum!==void 0&&Vt(t,"maximum",s.maximum),s.exclusiveMaximum!==void 0&&Vt(t,"exclusiveMaximum",s.exclusiveMaximum),s.multipleOf!==void 0&&Qa(t,s.multipleOf),s.format!==void 0&&(t.format??(t.format=s.format),s.format.includes("int")&&(t.isInt=!0)),s.mime&&ec(t,s.mime);for(const a of s.patterns??[])Xa(t,a);return t}const bf={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},yf=new Map([[xa,Ep],[bi,Op]]),nc=e=>yf.get(e)??e,oc=(e,t,n,o)=>{const s=n;s.type="string";const{minimum:i,maximum:a,format:l,patterns:c,contentEncoding:p,laxFormat:m}=ye(e);if(typeof i=="number"&&(s.minLength=i),typeof a=="number"&&(s.maxLength=a),l&&(s.format=bf[l]??l,s.format===""&&delete s.format,(l==="time"||m)&&delete s.format),p&&(s.contentEncoding=p),c&&c.size>0){const h=[...c].map(nc);h.length===1?s.pattern=h[0].source:h.length>1&&(s.allOf=[...h.map(f=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))])}},sc=(e,t,n,o)=>{const s=n,{minimum:i,maximum:a,multipleOf:l,exclusiveMaximum:c,exclusiveMinimum:p,isInt:m}=ye(e);s.type=m?"integer":"number";const h=typeof p=="number"&&p>=(i??Number.NEGATIVE_INFINITY),f=typeof c=="number"&&c<=(a??Number.POSITIVE_INFINITY),g=t.target==="draft-04"||t.target==="openapi-3.0";if(h?g?(s.minimum=p,s.exclusiveMinimum=!0):s.exclusiveMinimum=p:typeof i=="number"&&(s.minimum=i),f?g?(s.maximum=c,s.exclusiveMaximum=!0):s.exclusiveMaximum=c:typeof a=="number"&&(s.maximum=a),l){const b=new Set;for(const T of l)Number.isFinite(T)&&T!==0?b.add(Math.abs(T)):oe(e,t,s,o,`A multipleOf divisor of ${T} cannot be represented in JSON Schema`);const[v,...R]=b;v!==void 0&&(s.multipleOf=v),R.length&&(s.allOf=[...s.allOf??[],...R.map(T=>({multipleOf:T}))])}},ic=(e,t,n,o)=>{n.type="boolean"},vf=(e,t,n,o)=>{oe(e,t,n,o,"BigInt cannot be represented in JSON Schema")},Rf=(e,t,n,o)=>{oe(e,t,n,o,"Symbols cannot be represented in JSON Schema")},rc=(e,t,n,o)=>{t.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},ac=(e,t,n,o)=>{oe(e,t,n,o,"Undefined cannot be represented in JSON Schema")},wf=(e,t,n,o)=>{oe(e,t,n,o,"Void cannot be represented in JSON Schema")},cc=(e,t,n,o)=>{n.not={}},lc=(e,t,n,o)=>{},uc=(e,t,n,o)=>{},Tf=(e,t,n,o)=>{oe(e,t,n,o,"Date cannot be represented in JSON Schema")},dc=(e,t,n,o)=>{const s=e._zod.def,i=Ds(s.entries);if(i.length===0){n.not={};return}i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},pc=(e,t,n,o)=>{const s=e._zod.def;if(s.values.length===0){n.not={};return}const i=[];for(const a of s.values)if(a===void 0){if(oe(e,t,n,o,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof a=="bigint"){if(oe(e,t,n,o,"BigInt literals cannot be represented in JSON Schema"))return;i.push(Number(a))}else i.push(a);if(i.length!==0)if(i.length===1){const a=i[0];n.type=a===null?"null":typeof a,t.target==="draft-04"||t.target==="openapi-3.0"?n.enum=[a]:n.const=a}else i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),i.every(a=>typeof a=="boolean")&&(n.type="boolean"),i.every(a=>a===null)&&(n.type="null"),n.enum=i},Pf=(e,t,n,o)=>{oe(e,t,n,o,"NaN cannot be represented in JSON Schema")},kf=(e,t,n,o)=>{const s=n,i=e._zod.pattern;if(!i)throw new Error("Pattern not found in template literal");s.type="string",s.pattern=i.source},Cf=(e,t,n,o)=>{const s=n;s.type="string",s.format="binary",s.contentEncoding="binary";const{minimum:i,maximum:a,mime:l}=ye(e);i!==void 0&&(s.minLength=i),a!==void 0&&(s.maxLength=a),l&&(l.length===0?s.not={}:l.length===1?s.contentMediaType=l[0]:s.anyOf=l.map(c=>({contentMediaType:c})))},$f=(e,t,n,o)=>{n.type="boolean"},mc=(e,t,n,o)=>{oe(e,t,n,o,"Custom types cannot be represented in JSON Schema")},Ef=(e,t,n,o)=>{oe(e,t,n,o,"Function types cannot be represented in JSON Schema")},hc=(e,t,n,o)=>{oe(e,t,n,o,"Transforms cannot be represented in JSON Schema")},Of=(e,t,n,o)=>{oe(e,t,n,o,"Map cannot be represented in JSON Schema")},If=(e,t,n,o)=>{oe(e,t,n,o,"Set cannot be represented in JSON Schema")},fc=(e,t,n,o)=>{const s=n,i=e._zod.def,{minimum:a,maximum:l}=ye(e);typeof a=="number"&&(s.minItems=a),typeof l=="number"&&(s.maxItems=l),s.type="array",s.items=H(i.element,t,{...o,path:[...o.path,"items"]})};function ao(e){const t=e._zod.def;return t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform")?ao(t.out):t.type==="catch"?ao(t.innerType):e._zod.optin}const Sc=(e,t,n,o)=>{var p;const s=n,i=e._zod.def,a=i.shape;if(Object.getOwnPropertySymbols(a).length&&oe(e,t,s,o,"Symbol keys cannot be represented in JSON Schema"))return;s.type="object",s.properties={};for(const m in a)Me(s.properties,m,H(a[m],t,{...o,path:[...o.path,"properties",m]}));const c=[];for(const m of Object.keys(a)){const h=i.shape[m];(t.io==="input"?ao(h)===void 0:h._zod.optout===void 0)&&c.push(m)}c.length>0&&(s.required=c),((p=i.catchall)==null?void 0:p._zod.def.type)==="never"?s.additionalProperties=!1:i.catchall?i.catchall&&(s.additionalProperties=H(i.catchall,t,{...o,path:[...o.path,"additionalProperties"]})):t.io==="output"&&(s.additionalProperties=!1)},gc=(e,t,n,o)=>{const s=e._zod.def,i=s.inclusive===!1,a=s.options.map((l,c)=>H(l,t,{...o,path:[...o.path,i?"oneOf":"anyOf",c]}));i?n.oneOf=a:n.anyOf=a},_c=(e,t,n,o)=>{const s=e._zod.def,i=H(s.left,t,{...o,path:[...o.path,"allOf",0]}),a=H(s.right,t,{...o,path:[...o.path,"allOf",1]}),l=p=>"allOf"in p&&Object.keys(p).length===1,c=[...l(i)?i.allOf:[i],...l(a)?a.allOf:[a]];n.allOf=c,t.intersections.push(c)},qf=(e,t,n,o)=>{const s=n,i=e._zod.def;s.type="array";const a=t.target==="draft-2020-12"?"prefixItems":"items",l=t.target==="draft-2020-12"||t.target==="openapi-3.0"?"items":"additionalItems",c=i.items.map((v,R)=>H(v,t,{...o,path:[...o.path,a,R]})),p=i.rest?H(i.rest,t,{...o,path:[...o.path,l,...t.target==="openapi-3.0"?[i.items.length]:[]]}):null;let m=i.items.length;for(;m>0;){const v=i.items[m-1];if(!(t.io==="input"?ao(v)!==void 0:v._zod.optout==="optional"))break;m--}const h=i.items.length,f=!i.rest;t.target==="draft-2020-12"?(s.prefixItems=c,f?s.items=!1:p&&(s.items=p),m>0&&(s.minItems=m),f&&(s.maxItems=h)):t.target==="openapi-3.0"?(s.items={anyOf:c},p&&s.items.anyOf.push(p),m>0&&(s.minItems=m),f&&(s.maxItems=h)):(s.items=c,f?s.additionalItems=!1:p&&(s.additionalItems=p),m>0&&(s.minItems=m),f&&(s.maxItems=h));const{minimum:g,maximum:b}=ye(e);typeof g=="number"&&(s.minItems=g),typeof b=="number"&&(s.maxItems=b)};function Ws(e,t,n){var b;if(t.$ref){if(n.has(t))return t;n.add(t);const v=(b=e.get(t))==null?void 0:b.def;if(!v)return t;const R=Ws(e,v,n);return R===v?t:R}for(const v of["anyOf","oneOf"]){const R=t[v];if(!Array.isArray(R))continue;const T=R.map(C=>Ws(e,C,n));T.some((C,j)=>C!==R[j])&&(t={...t,[v]:T})}const o=Array.isArray(t.type)?t.type:[t.type],s=!o.includes("string")&&o.some(v=>v==="number"||v==="integer"),i=t.enum??(t.const!==void 0?[t.const]:void 0);if(!s&&!(i!=null&&i.some(v=>typeof v=="number")))return t;const{minimum:a,maximum:l,exclusiveMinimum:c,exclusiveMaximum:p,multipleOf:m,format:h,id:f,...g}=t;return g.enum?g.enum=g.enum.map(v=>typeof v=="number"?String(v):v):typeof g.const=="number"&&(g.const=String(g.const)),s&&(g.type="string",i||(g.pattern=(o.includes("number")?Si:Ap).source)),g}const Gs=new WeakMap;function Nf(e){var o;const t=new Map;for(const s of e.seen.values())s.def&&!t.has(s.schema)&&t.set(s.schema,s);const n=new Map;for(const s of Gs.get(e)??[]){const i=e.seen.get(s),a=(o=(i==null?void 0:i.def)??(i==null?void 0:i.schema))==null?void 0:o.propertyNames;if(!a||a===!0||n.has(a))continue;const l=Ws(t,a,new Set);l!==a&&n.set(a,l)}if(n.size)for(const s of e.seen.values())for(const i of[s.schema,s.def]){const a=i&&n.get(i.propertyNames);a&&(i.propertyNames=a)}}const bc=(e,t,n,o)=>{const s=n,i=e._zod.def;s.type="object";const a=i.keyType,l=ye(a).patterns;if(i.mode==="loose"&&l&&l.size>0){const m=H(i.valueType,t,{...o,path:[...o.path,"patternProperties","*"]});s.patternProperties={};for(const h of l)Me(s.patternProperties,nc(h).source,m)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){s.propertyNames=H(i.keyType,t,{...o,path:[...o.path,"propertyNames"]});let m=Gs.get(t);m||(m=[],Gs.set(t,m),t.deferred.push(()=>Nf(t))),m.push(e)}s.additionalProperties=H(i.valueType,t,{...o,path:[...o.path,"additionalProperties"]})}const c=a._zod.values,p=t.io==="input"&&ao(i.valueType)!==void 0;if(c&&!i.partial&&!p){const m=[...c].filter(h=>typeof h=="string"||typeof h=="number");m.length>0&&(s.required=m.map(String))}},yc=(e,t,n,o)=>{const s=e._zod.def,i=H(s.innerType,t,o),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=s.innerType,n.nullable=!0):n.anyOf=[i,{type:"null"}]},vc=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);i.ref=s.innerType},vi=Symbol();function Rc(e,t,n,o,s){let i=!1;const a=JSON.stringify(e,(l,c)=>typeof c!="bigint"?c:(i=!0,null));return i?(oe(t,n,o,s,"BigInt defaults cannot be represented in JSON Schema"),vi):JSON.parse(a)}const wc=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);i.ref=s.innerType;const a=Rc(s.defaultValue,e,t,n,o);a!==vi&&(n.default=a)},Tc=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);if(i.ref=s.innerType,t.io!=="input")return;const a=Rc(s.defaultValue,e,t,n,o);a!==vi&&(n._prefault=a)},Pc=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);i.ref=s.innerType;let a;try{a=s.catchValue(void 0)}catch{oe(e,t,n,o,"Dynamic catch values are not supported in JSON Schema");return}n.default=a},kc=(e,t,n,o)=>{const s=e._zod.def,i=s.in._zod.traits.has("$ZodTransform"),a=t.io==="input"?i?s.out:s.in:s.out;H(a,t,o);const l=t.seen.get(e);l.ref=a},Cc=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);i.ref=s.innerType,n.readOnly=!0},zf=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);i.ref=s.innerType},Ri=(e,t,n,o)=>{const s=e._zod.def;H(s.innerType,t,o);const i=t.seen.get(e);i.ref=s.innerType},$c=(e,t,n,o)=>{const s=e._zod.innerType;H(s,t,o);const i=t.seen.get(e);i.ref=s},Ur={string:oc,number:sc,boolean:ic,bigint:vf,symbol:Rf,null:rc,undefined:ac,void:wf,never:cc,any:lc,unknown:uc,date:Tf,enum:dc,literal:pc,nan:Pf,template_literal:kf,file:Cf,success:$f,custom:mc,function:Ef,transform:hc,map:Of,set:If,array:fc,object:Sc,union:gc,intersection:_c,tuple:qf,record:bc,nullable:yc,nonoptional:vc,default:wc,prefault:Tc,catch:Pc,pipe:kc,readonly:Cc,promise:zf,optional:Ri,lazy:$c};function Ec(e,t){if("_idmap"in e){const o=e,s=Wo({...t,processors:Ur}),i={};for(const c of o._idmap.entries()){const[p,m]=c;H(m,s)}const a={},l={registry:o,uri:t==null?void 0:t.uri,defs:i};s.external=l;for(const c of o._idmap.entries()){const[p,m]=c;Go(s,m),Me(a,p,Yo(s,m))}if(Object.keys(i).length>0){const c=s.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[c]:i}}return{schemas:a}}const n=Wo({...t,processors:Ur});return H(e,n),Go(n,e),Yo(n,e)}const Dr=new WeakSet([Object.prototype,Error.prototype]);function zo(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){const o=n(this);return Object.defineProperty(this,t,{value:o,configurable:!0,writable:!0}),o},set(o){Object.defineProperty(this,t,{value:o,configurable:!0,writable:!0})}})}const xf=(e,t)=>{Gd.init(e,t),e.name="ZodError";const n=Object.getPrototypeOf(e);Dr.has(n)||(Dr.add(n),zo(n,"format",o=>s=>Xd(o,s)),zo(n,"flatten",o=>s=>Qd(o,s)),zo(n,"addIssue",o=>s=>{o.issues.push(s),o.message=JSON.stringify(o.issues,Hs,2)}),zo(n,"addIssues",o=>s=>{o.issues.push(...s),o.message=JSON.stringify(o.issues,Hs,2)}),Object.defineProperty(n,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}}))},Re=_("ZodError",xf,void 0,{Parent:Error}),Mf=pi(Re),Lf=mi(Re),Oc=hi(Re),Af=fi(Re),jf=ip(Re),Zf=rp(Re),Uf=ap(Re),Df=cp(Re),Hf=lp(Re),Ff=up(Re),Jf=dp(Re),Vf=pp(Re);function Bf(){Oe.localeError||Ie(yh())}function cs(){Oe.memoizer||Ie({memoizer:gh()})}const U=_("ZodType",(e,t)=>(Bf(),Z.init(e,t),e.def=t,e.type=t.type,e),{check(...e){const t=this.def;return this.clone(be(t,{checks:[...t.checks??[],...e.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Xe(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(ZS(e,t))},superRefine(e,t){return this.check(US(e,t))},overwrite(e){return this.check(Kt(e))},optional(){return O(this)},exactOptional(){return kS(this)},nullable(){return Jr(this)},nullish(){return O(Jr(this))},nonoptional(e){return qS(this,e)},array(){return S(this)},or(e){return P([this,e])},and(e){return St(this,e)},transform(e){return Vr(this,jc(e))},default(e){return ES(this,e)},prefault(e){return IS(this,e)},catch(e){return zS(this,e)},pipe(e){return Vr(this,e)},readonly(){return LS(this)},describe(e){const t=this.clone();return eo.add(t,{description:e}),t},meta(...e){if(e.length===0)return eo.get(this);const t=this.clone();return eo.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get"~standard"(){return Ra(this,"~standard",{...Oa(this),jsonSchema:{input:Qo(this,"input"),output:Qo(this,"output")}})},set"~standard"(e){Qe(this,"~standard",e)},parse:function e(t,n){return Mf(this,t,n,{callee:e})},parseAsync:async function e(t,n){return await Lf(this,t,n,{callee:e})},safeParse(e,t){return Oc(this,e,t)},async safeParseAsync(e,t){return Af(this,e,t)},get spa(){return this==null?void 0:this.safeParseAsync},set spa(e){Qe(this,"spa",e)},validate(e,t){return np(this,e,t)},validateAsync(e,t){return sp(this,e,t)},encode:function e(t,n){return jf(this,t,n,{callee:e})},decode:function e(t,n){return Zf(this,t,n,{callee:e})},encodeAsync:async function e(t,n){return await Uf(this,t,n,{callee:e})},decodeAsync:async function e(t,n){return await Df(this,t,n,{callee:e})},safeEncode(e,t){return Hf(this,e,t)},safeDecode(e,t){return Ff(this,e,t)},async safeEncodeAsync(e,t){return Jf(this,e,t)},async safeDecodeAsync(e,t){return Vf(this,e,t)},toJSONSchema(e){return _f(this,{})(e)},get description(){var e;return(e=eo.get(this))==null?void 0:e.description},get _def(){return this._zod.def}}),Ic=_("_ZodString",(e,t)=>{_i.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>oc(e,n,o)},wa({format:e=>ye(e).format??null,minLength:e=>ye(e).minimum??null,maxLength:e=>ye(e).maximum??null},{regex(...e){return this.check(tf(...e))},includes(...e){return this.check(sf(...e))},startsWith(...e){return this.check(rf(...e))},endsWith(...e){return this.check(af(...e))},min(...e){return this.check(Ko(...e))},max(...e){return this.check(Ka(...e))},length(...e){return this.check(Wa(...e))},nonempty(...e){return this.check(Ko(1,...e))},lowercase(e){return this.check(nf(e))},uppercase(e){return this.check(of(e))},trim(){return this.check(lf())},normalize(...e){return this.check(cf(...e))},toLowerCase(){return this.check(uf())},toUpperCase(){return this.check(df())},slugify(){return this.check(pf())}})),Kf=_("ZodString",(e,t)=>{_i.init(e,t),Ic.init(e,t)},{email(e){return this.check(Fa(zc,e))},url(e){return this.check(Ja(xc,e))},jwt(e){return this.check(Hh(mS,e))},emoji(e){return this.check(Eh(Xf,e))},guid(e){return this.check(Th(Qf,e))},uuid(e){return this.check(Ph(xo,e))},uuidv4(e){return this.check(kh(xo,e))},uuidv6(e){return this.check(Ch(xo,e))},uuidv7(e){return this.check($h(xo,e))},nanoid(e){return this.check(Oh(eS,e))},cuid(e){return this.check(Ih(tS,e))},cuid2(e){return this.check(qh(nS,e))},ulid(e){return this.check(Nh(oS,e))},base64(e){return this.check(Zh(uS,e))},base64url(e){return this.check(Uh(dS,e))},xid(e){return this.check(zh(sS,e))},ksuid(e){return this.check(xh(iS,e))},ipv4(e){return this.check(Mh(rS,e))},ipv6(e){return this.check(Lh(aS,e))},cidrv4(e){return this.check(Ah(cS,e))},cidrv6(e){return this.check(jh(lS,e))},e164(e){return this.check(Dh(pS,e))},datetime(e){return this.check(Va(qc,e))},date(e){return this.check(Ba(Nc,e))},time(e){return this.check(Fh(Wf,e))},duration(e){return this.check(Jh(Gf,e))}});function r(e){return wh(Kf,e)}const V=_("ZodStringFormat",(e,t)=>{F.init(e,t),Ic.init(e,t)}),qc=_("ZodISODateTime",(e,t)=>{vm.init(e,t),V.init(e,t)}),Nc=_("ZodISODate",(e,t)=>{Rm.init(e,t),V.init(e,t)}),Wf=_("ZodISOTime",(e,t)=>{wm.init(e,t),V.init(e,t)}),Gf=_("ZodISODuration",(e,t)=>{Tm.init(e,t),V.init(e,t)}),zc=_("ZodEmail",(e,t)=>{am.init(e,t),V.init(e,t)});function Yf(e){return Fa(zc,e)}const Qf=_("ZodGUID",(e,t)=>{im.init(e,t),V.init(e,t)}),xo=_("ZodUUID",(e,t)=>{rm.init(e,t),V.init(e,t)}),xc=_("ZodURL",(e,t)=>{mm.init(e,t),V.init(e,t)});function Mc(e){return Ja(xc,e)}const Xf=_("ZodEmoji",(e,t)=>{hm.init(e,t),V.init(e,t)}),eS=_("ZodNanoID",(e,t)=>{fm.init(e,t),V.init(e,t)}),tS=_("ZodCUID",(e,t)=>{Sm.init(e,t),V.init(e,t)}),nS=_("ZodCUID2",(e,t)=>{gm.init(e,t),V.init(e,t)}),oS=_("ZodULID",(e,t)=>{_m.init(e,t),V.init(e,t)}),sS=_("ZodXID",(e,t)=>{bm.init(e,t),V.init(e,t)}),iS=_("ZodKSUID",(e,t)=>{ym.init(e,t),V.init(e,t)}),rS=_("ZodIPv4",(e,t)=>{Pm.init(e,t),V.init(e,t)}),aS=_("ZodIPv6",(e,t)=>{Cm.init(e,t),V.init(e,t)}),cS=_("ZodCIDRv4",(e,t)=>{$m.init(e,t),V.init(e,t)}),lS=_("ZodCIDRv6",(e,t)=>{Om.init(e,t),V.init(e,t)}),uS=_("ZodBase64",(e,t)=>{Im.init(e,t),V.init(e,t)}),dS=_("ZodBase64URL",(e,t)=>{Nm.init(e,t),V.init(e,t)}),pS=_("ZodE164",(e,t)=>{zm.init(e,t),V.init(e,t)}),mS=_("ZodJWT",(e,t)=>{Mm.init(e,t),V.init(e,t)}),wi=_("ZodNumber",(e,t)=>{Ma.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>sc(e,n,o,s),e.isFinite=!0},wa({minValue:e=>{const{minimum:t,exclusiveMinimum:n}=ye(e);return Math.max(t??Number.NEGATIVE_INFINITY,n??Number.NEGATIVE_INFINITY)},maxValue:e=>{const{maximum:t,exclusiveMaximum:n}=ye(e);return Math.min(t??Number.POSITIVE_INFINITY,n??Number.POSITIVE_INFINITY)},isInt:e=>{const{isInt:t,multipleOf:n}=ye(e);return!!t||!!(n!=null&&n.some(Number.isSafeInteger))},format:e=>ye(e).format??null},{gt(e,t){return this.check(qr(e,t))},gte(e,t){return this.check(zs(e,t))},min(e,t){return this.check(zs(e,t))},lt(e,t){return this.check(Ir(e,t))},lte(e,t){return this.check(Ns(e,t))},max(e,t){return this.check(Ns(e,t))},int(e){return this.check(Hr(e))},safe(e){return this.check(Hr(e))},positive(e){return this.check(qr(0,e))},nonnegative(e){return this.check(zs(0,e))},negative(e){return this.check(Ir(0,e))},nonpositive(e){return this.check(Ns(0,e))},multipleOf(e,t){return this.check(Nr(e,t))},step(e,t){return this.check(Nr(e,t))},finite(){return this}}));function y(e){return Vh(wi,e)}const hS=_("ZodNumberFormat",(e,t)=>{Lm.init(e,t),wi.init(e,t)});function Hr(e){return Kh(hS,e)}const fS=_("ZodBoolean",(e,t)=>{Am.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>ic(e,n,o)});function k(e){return Wh(fS,e)}const SS=_("ZodUndefined",(e,t)=>{jm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>ac(e,n,o,s)});function Ys(e){return Gh(SS,e)}const gS=_("ZodNull",(e,t)=>{Zm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>rc(e,n,o)});function co(e){return Yh(gS,e)}const _S=_("ZodAny",(e,t)=>{Um.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>lc()});function Ti(){return Qh(_S)}const bS=_("ZodUnknown",(e,t)=>{Dm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>uc()});function $(){return Xh(bS)}const yS=_("ZodNever",(e,t)=>{Hm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>cc(e,n,o)});function Qs(e){return ef(yS,e)}const vS=_("ZodArray",(e,t)=>{cs(),Vm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>fc(e,n,o,s),e.element=t.element},{min(e,t){return this.check(Ko(e,t))},nonempty(e){return this.check(Ko(1,e))},max(e,t){return this.check(Ka(e,t))},length(e,t){return this.check(Wa(e,t))},unwrap(){return this.element}});function S(e,t){return mf(vS,e,t)}const Lc=_("ZodObject",(e,t)=>{cs(),Wm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Sc(e,n,o,s),Ud(e,"shape",n=>n._zod.def.shape,!1)},{keyof(){return N(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(be(this._zod.def,{catchall:e}))},passthrough(){return this.clone(be(this._zod.def,{catchall:$()}))},loose(){return this.clone(be(this._zod.def,{catchall:$()}))},strict(){return this.clone(be(this._zod.def,{catchall:Qs()}))},strip(){return this.clone(be(this._zod.def,{catchall:void 0}))},extend(e){return Od(this,e)},safeExtend(e){return Id(this,e)},merge(e){return qd(this,e)},pick(e){return $d(this,e)},omit(e){return Ed(this,e)},partial(...e){return mr(Zc,this,e[0])},exactPartial(...e){return mr(Uc,this,e[0],"exactPartial")},required(...e){return Nd(Dc,this,e[0])}});function u(e,t){const n={type:"object",shape:e??{},...E(t)};return new Lc(n)}function I(e,t){return new Lc({type:"object",shape:e,catchall:$(),...E(t)})}const Ac=_("ZodUnion",(e,t)=>{ja.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>gc(e,n,o,s),e.options=t.options});function P(e,t){return new Ac({type:"union",options:e,...E(t)})}const RS=_("ZodDiscriminatedUnion",(e,t)=>{Ac.init(e,t),Ym.init(e,t)});function Xo(e,t,n){return new RS({type:"union",options:t,discriminator:e,...E(n)})}const wS=_("ZodIntersection",(e,t)=>{Qm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>_c(e,n,o,s)});function St(e,t){return new wS({type:"intersection",left:e,right:t})}const Fr=_("ZodRecord",(e,t)=>{cs(),Xm.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>bc(e,n,o,s),e.keyType=t.keyType,e.valueType=t.valueType});function w(e,t,n){return!t||!t._zod?new Fr({type:"record",keyType:r(),valueType:e,...E(t)}):new Fr({type:"record",keyType:e,valueType:t,...E(n)})}const Xs=_("ZodEnum",(e,t)=>{eh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(o,s,i)=>dc(e,o,s),e.enum=t.entries,e.options=[...e._zod.values];const n=new Set(Object.keys(t.entries));e.extract=(o,s)=>{const i={};for(const a of o)if(n.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Xs({...t,checks:[],...E(s),entries:i})},e.exclude=(o,s)=>{const i={...t.entries};for(const a of o)if(n.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new Xs({...t,checks:[],...E(s),entries:i})}});function N(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(o=>[o,o])):e;return new Xs({type:"enum",entries:n,...E(t)})}const TS=_("ZodLiteral",(e,t)=>{th.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>pc(e,n,o,s),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function d(e,t){return new TS({type:"literal",values:Array.isArray(e)?e:[e],...E(t)})}const PS=_("ZodTransform",(e,t)=>{cs(),nh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>hc(e,n,o,s),e._zod.parse=(n,o)=>{if(o.direction==="backward")throw new Ta(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(ro(i,n.value,t));else{const a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),"input"in a||(a.input=n.value),a.inst??(a.inst=e),n.issues.push(ro(a))}};const s=t.transform(n.value,n);return s instanceof Promise?s.then(i=>(n.value=i,n)):(n.value=s,n)}});function jc(e){return new PS({type:"transform",transform:e})}const Zc=_("ZodOptional",(e,t)=>{Za.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Ri(e,n,o,s),e.unwrap=()=>e._zod.def.innerType});function O(e){return new Zc({type:"optional",innerType:e})}const Uc=_("ZodExactOptional",(e,t)=>{oh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Ri(e,n,o,s),e.unwrap=()=>e._zod.def.innerType});function kS(e){return new Uc({type:"optional",innerType:e})}const CS=_("ZodNullable",(e,t)=>{sh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>yc(e,n,o,s),e.unwrap=()=>e._zod.def.innerType});function Jr(e){return new CS({type:"nullable",innerType:e})}const $S=_("ZodDefault",(e,t)=>{ih.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>wc(e,n,o,s),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function ES(e,t){return new $S({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():_a(t)}})}const OS=_("ZodPrefault",(e,t)=>{rh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Tc(e,n,o,s),e.unwrap=()=>e._zod.def.innerType});function IS(e,t){return new OS({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():_a(t)}})}const Dc=_("ZodNonOptional",(e,t)=>{ah.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>vc(e,n,o,s),e.unwrap=()=>e._zod.def.innerType});function qS(e,t){return new Dc({type:"nonoptional",innerType:e,...E(t)})}const NS=_("ZodCatch",(e,t)=>{ch.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Pc(e,n,o,s),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function zS(e,t){return new NS({type:"catch",innerType:e,catchValue:typeof t=="function"?t:Hd(t)})}const Hc=_("ZodPipe",(e,t)=>{Ua.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>kc(e,n,o,s),e.in=t.in,e.out=t.out});function Vr(e,t){return new Hc({type:"pipe",in:e,out:t})}const xS=_("ZodPreprocess",(e,t)=>{Hc.init(e,t),lh.init(e,t)}),MS=_("ZodReadonly",(e,t)=>{uh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Cc(e,n,o,s),e.unwrap=()=>e._zod.def.innerType});function LS(e){return new MS({type:"readonly",innerType:e})}const AS=_("ZodLazy",(e,t)=>{dh.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>$c(e,n,o,s),e.unwrap=()=>e._zod.def.getter()});function Pi(e){return new AS({type:"lazy",getter:e})}const jS=_("ZodCustom",(e,t)=>{ph.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,o,s)=>mc(e,n,o,s)});function ZS(e,t={}){return hf(jS,e,t)}function US(e,t){return ff(e,t)}function lo(e,t){return new xS({type:"pipe",in:jc(e),out:t})}const DS={custom:"custom"};function ls(e){return Va(qc,e)}function HS(e){return Ba(Nc,e)}function FS(e){return Bh(wi,e)}const JS="2025-11-25",VS=[JS,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],BS="io.modelcontextprotocol/related-task",us="io.modelcontextprotocol/protocolVersion",ki="io.modelcontextprotocol/clientInfo",oo="io.modelcontextprotocol/serverInfo",ds="io.modelcontextprotocol/clientCapabilities",KS="io.modelcontextprotocol/subscriptionId",Ci="io.modelcontextprotocol/logLevel",ps="2.0",Bt=Pi(()=>P([r(),y(),k(),co(),w(r(),Bt),S(Bt)])),G=w(r(),Bt),WS=S(Bt),$i=P([r(),y().int()]),Ei=r(),Fc=u({ttl:y().optional()}),Jc=u({taskId:r()}),Oi=I({progressToken:$i.optional(),[BS]:Jc.optional()}),ce=u({_meta:Oi.optional()}),ho=ce.extend({task:Fc.optional()}),Y=u({method:r(),params:ce.loose().optional()}),me=u({_meta:Oi.optional()}),he=u({method:r(),params:me.loose().optional()}),Ii=I({get[oo](){return Gt.optional().catch(void 0)}}),Q=I({_meta:Ii.optional()}),_t=P([r(),y().int()]),qi=u({jsonrpc:d(ps),id:_t,...Y.shape}).strict(),Ni=u({jsonrpc:d(ps),...he.shape}).strict(),ms=u({jsonrpc:d(ps),id:_t,result:Q}).strict(),hs=u({jsonrpc:d(ps),id:_t.optional(),error:u({code:y().int(),message:r(),data:$().optional()})}).strict(),Vc=P([qi,Ni,ms,hs]),GS=P([ms,hs]),fs=Q.strict(),Bc=me.extend({requestId:_t.optional(),reason:r().optional()}),zi=he.extend({method:d("notifications/cancelled"),params:Bc}),Kc=u({src:r(),mimeType:r().optional(),sizes:S(r()).optional(),theme:N(["light","dark"]).optional()}),Wt=u({icons:S(Kc).optional()}),gt=u({name:r(),title:r().optional()}),Gt=gt.extend({...gt.shape,...Wt.shape,version:r(),websiteUrl:r().optional(),description:r().optional()}),YS=St(u({applyDefaults:k().optional()}),G),QS=lo(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,St(u({form:YS.optional(),url:G.optional()}),G.optional())),Wc=I({list:G.optional(),cancel:G.optional(),requests:I({sampling:I({createMessage:G.optional()}).optional(),elicitation:I({create:G.optional()}).optional()}).optional()}),Gc=I({list:G.optional(),cancel:G.optional(),requests:I({tools:I({call:G.optional()}).optional()}).optional()}),Yc=u({experimental:w(r(),G).optional(),sampling:u({context:G.optional(),tools:G.optional()}).optional(),elicitation:QS.optional(),roots:u({listChanged:k().optional()}).optional(),tasks:Wc.optional(),extensions:w(r(),G).optional()}),Qc=ce.extend({protocolVersion:r(),capabilities:Yc,clientInfo:Gt}),Xc=Y.extend({method:d("initialize"),params:Qc}),xi=u({experimental:w(r(),G).optional(),logging:G.optional(),completions:G.optional(),prompts:u({listChanged:k().optional()}).optional(),resources:u({subscribe:k().optional(),listChanged:k().optional()}).optional(),tools:u({listChanged:k().optional()}).optional(),tasks:Gc.optional(),extensions:w(r(),G).optional()}),el=Q.extend({protocolVersion:r(),capabilities:xi,serverInfo:Gt,instructions:r().optional()}),tl=he.extend({method:d("notifications/initialized"),params:me.optional()}),nl=Y.extend({method:d("server/discover"),params:ce.optional()}),ol=Q.extend({supportedVersions:S(r()),capabilities:xi,instructions:r().optional()}),Mi=Y.extend({method:d("ping"),params:ce.optional()}),sl=u({progress:y(),total:O(y()),message:O(r())}),il=u({...me.shape,...sl.shape,progressToken:$i}),Li=he.extend({method:d("notifications/progress"),params:il}),rl=ce.extend({cursor:Ei.optional()}),Yt=Y.extend({params:rl.optional()}),Qt=Q.extend({nextCursor:Ei.optional()}),Ai=u({uri:r(),mimeType:O(r()),_meta:w(r(),$()).optional()}),ji=Ai.extend({text:r()}),Zi=r().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),Ui=Ai.extend({blob:Zi}),Xt=N(["user","assistant"]),bt=u({audience:S(Xt).optional(),priority:y().min(0).max(1).optional(),lastModified:ls({offset:!0}).optional()}),Di=u({...gt.shape,...Wt.shape,uri:r(),description:O(r()),mimeType:O(r()),size:O(y()),annotations:bt.optional(),_meta:O(I({}))}),al=u({...gt.shape,...Wt.shape,uriTemplate:r(),description:O(r()),mimeType:O(r()),annotations:bt.optional(),_meta:O(I({}))}),cl=Yt.extend({method:d("resources/list")}),ll=Qt.extend({resources:S(Di)}),ul=Yt.extend({method:d("resources/templates/list")}),dl=Qt.extend({resourceTemplates:S(al)}),Ss=ce.extend({uri:r()}),pl=Ss,ml=Y.extend({method:d("resources/read"),params:pl}),hl=Q.extend({contents:S(P([ji,Ui]))}),fl=he.extend({method:d("notifications/resources/list_changed"),params:me.optional()}),Sl=Ss,gl=Y.extend({method:d("resources/subscribe"),params:Sl}),_l=Ss,bl=Y.extend({method:d("resources/unsubscribe"),params:_l}),Hi=u({toolsListChanged:k().optional(),promptsListChanged:k().optional(),resourcesListChanged:k().optional(),resourceSubscriptions:S(r()).optional()}),yl=ce.extend({notifications:Hi}),vl=Y.extend({method:d("subscriptions/listen"),params:yl}),Rl=me.extend({notifications:Hi}),wl=he.extend({method:d("notifications/subscriptions/acknowledged"),params:Rl}),Tl=Ii.extend({[KS]:_t}),Pl=Q.extend({_meta:Tl}),kl=me.extend({uri:r()}),Cl=he.extend({method:d("notifications/resources/updated"),params:kl}),$l=u({name:r(),description:O(r()),required:O(k())}),El=u({...gt.shape,...Wt.shape,description:O(r()),arguments:O(S($l)),_meta:O(I({}))}),Ol=Yt.extend({method:d("prompts/list")}),Il=Qt.extend({prompts:S(El)}),ql=ce.extend({name:r(),arguments:w(r(),r()).optional()}),Nl=Y.extend({method:d("prompts/get"),params:ql}),gs=u({type:d("text"),text:r(),annotations:bt.optional(),_meta:w(r(),$()).optional()}),_s=u({type:d("image"),data:Zi,mimeType:r(),annotations:bt.optional(),_meta:w(r(),$()).optional()}),bs=u({type:d("audio"),data:Zi,mimeType:r(),annotations:bt.optional(),_meta:w(r(),$()).optional()}),zl=u({type:d("tool_use"),name:r(),id:r(),input:w(r(),$()),_meta:w(r(),$()).optional()}),Fi=u({type:d("resource"),resource:P([ji,Ui]),annotations:bt.optional(),_meta:w(r(),$()).optional()}),Ji=Di.extend({type:d("resource_link")}),en=P([gs,_s,bs,Ji,Fi]),xl=u({role:Xt,content:en}),Ml=Q.extend({description:r().optional(),messages:S(xl)}),Ll=he.extend({method:d("notifications/prompts/list_changed"),params:me.optional()}),Al=u({title:r().optional(),readOnlyHint:k().optional(),destructiveHint:k().optional(),idempotentHint:k().optional(),openWorldHint:k().optional()}),jl=u({taskSupport:N(["required","optional","forbidden"]).optional()}),ys=u({...gt.shape,...Wt.shape,description:r().optional(),inputSchema:u({type:d("object"),properties:w(r(),Bt).optional(),required:S(r()).optional()}).catchall($()),outputSchema:I({$schema:r().optional()}).optional(),annotations:Al.optional(),execution:jl.optional(),_meta:w(r(),$()).optional()}),Zl=Yt.extend({method:d("tools/list")}),Ul=Qt.extend({tools:S(ys)}),vs=Q.extend({content:S(en).default([]),structuredContent:$().optional(),isError:k().optional()}),XS=vs.or(Q.extend({toolResult:$()})),Dl=ho.extend({name:r(),arguments:w(r(),$()).optional()}),Hl=Y.extend({method:d("tools/call"),params:Dl}),Fl=he.extend({method:d("notifications/tools/list_changed"),params:me.optional()}),eg=u({autoRefresh:k().default(!0),debounceMs:y().int().nonnegative().default(300)}),Vi=N(["debug","info","notice","warning","error","critical","alert","emergency"]),Jl=ce.extend({level:Vi}),Vl=Y.extend({method:d("logging/setLevel"),params:Jl}),Bl=me.extend({level:Vi,logger:r().optional(),data:$()}),Kl=he.extend({method:d("notifications/message"),params:Bl}),Wl=u({name:r().optional()}),Gl=u({hints:S(Wl).optional(),costPriority:y().min(0).max(1).optional(),speedPriority:y().min(0).max(1).optional(),intelligencePriority:y().min(0).max(1).optional()}),Yl=u({mode:N(["auto","required","none"]).optional()}),Ql=u({type:d("tool_result"),toolUseId:r().describe("The unique identifier for the corresponding tool call."),content:S(en),structuredContent:$().optional(),isError:k().optional(),_meta:w(r(),$()).optional()}),Xl=Xo("type",[gs,_s,bs]),uo=Xo("type",[gs,_s,bs,zl,Ql]),eu=u({role:Xt,content:P([uo,S(uo)]),_meta:w(r(),$()).optional()}),tu=ho.extend({messages:S(eu),modelPreferences:Gl.optional(),systemPrompt:r().optional(),includeContext:N(["none","thisServer","allServers"]).optional(),temperature:y().optional(),maxTokens:y().int(),stopSequences:S(r()).optional(),metadata:G.optional(),tools:S(ys).optional(),toolChoice:Yl.optional()}),nu=Y.extend({method:d("sampling/createMessage"),params:tu}),ou=Q.extend({model:r(),stopReason:O(N(["endTurn","stopSequence","maxTokens"]).or(r())),role:Xt,content:Xl}),su=Q.extend({model:r(),stopReason:O(N(["endTurn","stopSequence","maxTokens","toolUse"]).or(r())),role:Xt,content:P([uo,S(uo)])}),Bi=u({type:d("boolean"),title:r().optional(),description:r().optional(),default:k().optional()}),Rs=u({type:d("string"),title:r().optional(),description:r().optional(),minLength:y().optional(),maxLength:y().optional(),format:N(["email","uri","date","date-time"]).optional(),default:r().optional()}),es=u({type:N(["number","integer"]),title:r().optional(),description:r().optional(),minimum:y().optional(),maximum:y().optional(),default:y().optional()}),Ki=u({type:d("string"),title:r().optional(),description:r().optional(),enum:S(r()),default:r().optional()}),Wi=u({type:d("string"),title:r().optional(),description:r().optional(),oneOf:S(u({const:r(),title:r()})),default:r().optional()}),Gi=u({type:d("string"),title:r().optional(),description:r().optional(),enum:S(r()),enumNames:S(r()).optional(),default:r().optional()}),iu=P([Ki,Wi]),Yi=u({type:d("array"),title:r().optional(),description:r().optional(),minItems:y().optional(),maxItems:y().optional(),items:u({type:d("string"),enum:S(r())}),default:S(r()).optional()}),Qi=u({type:d("array"),title:r().optional(),description:r().optional(),minItems:y().optional(),maxItems:y().optional(),items:u({anyOf:S(u({const:r(),title:r()}))}),default:S(r()).optional()}),ru=P([Yi,Qi]),au=P([Gi,iu,ru]),Xi=P([au,Bi,Rs,es]),ws=ho.extend({mode:d("form").optional(),message:r(),requestedSchema:u({type:d("object"),properties:w(r(),Xi),required:S(r()).optional()}).catchall($())}),cu=ho.extend({mode:d("url"),message:r(),elicitationId:r(),url:r().url()}),lu=P([ws,cu]),uu=Y.extend({method:d("elicitation/create"),params:lu}),du=me.extend({elicitationId:r()}),pu=he.extend({method:d("notifications/elicitation/complete"),params:du}),mu=Q.extend({action:N(["accept","decline","cancel"]),content:lo(e=>e===null?void 0:e,w(r(),P([r(),y(),k(),S(r())])).optional())}),hu=u({type:d("ref/resource"),uri:r()}),fu=u({type:d("ref/prompt"),name:r()}),Su=ce.extend({ref:P([fu,hu]),argument:u({name:r(),value:r()}),context:u({arguments:w(r(),r()).optional()}).optional()}),gu=Y.extend({method:d("completion/complete"),params:Su}),_u=Q.extend({completion:I({values:S(r()).max(100),total:O(y().int()),hasMore:O(k())})}),bu=u({uri:r().startsWith("file://"),name:r().optional(),_meta:w(r(),$()).optional()}),yu=Y.extend({method:d("roots/list"),params:ce.optional()}),vu=Q.extend({roots:S(bu)}),Ru=he.extend({method:d("notifications/roots/list_changed"),params:me.optional()}),tg=I({ttl:y().optional(),pollInterval:y().optional()}),wu=N(["working","input_required","completed","failed","cancelled"]),tn=u({taskId:r(),status:wu,ttl:P([y(),co()]),createdAt:r(),lastUpdatedAt:r(),pollInterval:O(y()),statusMessage:O(r())}),ng=Q.extend({task:tn}),Tu=me.merge(tn),og=he.extend({method:d("notifications/tasks/status"),params:Tu}),sg=Y.extend({method:d("tasks/get"),params:ce.extend({taskId:r()})}),ig=Q.merge(tn),rg=Y.extend({method:d("tasks/result"),params:ce.extend({taskId:r()})}),ag=Q.loose(),cg=Yt.extend({method:d("tasks/list")}),lg=Qt.extend({tasks:S(tn)}),ug=Y.extend({method:d("tasks/cancel"),params:ce.extend({taskId:r()})}),dg=Q.merge(tn),pg=P([Mi,Xc,nl,gu,Vl,Nl,Ol,cl,ul,ml,gl,bl,vl,Hl,Zl]),mg=P([zi,Li,tl,Ru]),hg=P([fs,ou,su,mu,vu]),fg=P([Mi,nu,uu,yu]),Sg=P([zi,Li,Kl,Cl,fl,Fl,Ll,wl,pu]),gg=P([fs,el,ol,_u,Ml,Il,ll,dl,hl,vs,Ul,Pl]),ne=Mc().superRefine((e,t)=>{if(!URL.canParse(e))return t.addIssue({code:DS.custom,message:"URL must be parseable",fatal:!0}),Fd}).refine(e=>{const t=new URL(e);return t.protocol!=="javascript:"&&t.protocol!=="data:"&&t.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),_g=I({resource:r().url(),authorization_servers:S(ne).optional(),jwks_uri:r().url().optional(),scopes_supported:S(r()).optional(),bearer_methods_supported:S(r()).optional(),resource_signing_alg_values_supported:S(r()).optional(),resource_name:r().optional(),resource_documentation:r().optional(),resource_policy_uri:r().url().optional(),resource_tos_uri:r().url().optional(),tls_client_certificate_bound_access_tokens:k().optional(),authorization_details_types_supported:S(r()).optional(),dpop_signing_alg_values_supported:S(r()).optional(),dpop_bound_access_tokens_required:k().optional()}),Pu=I({issuer:r(),authorization_endpoint:ne,token_endpoint:ne,registration_endpoint:ne.optional(),scopes_supported:S(r()).optional(),response_types_supported:S(r()),response_modes_supported:S(r()).optional(),grant_types_supported:S(r()).optional(),token_endpoint_auth_methods_supported:S(r()).optional(),token_endpoint_auth_signing_alg_values_supported:S(r()).optional(),service_documentation:ne.optional(),revocation_endpoint:ne.optional(),revocation_endpoint_auth_methods_supported:S(r()).optional(),revocation_endpoint_auth_signing_alg_values_supported:S(r()).optional(),introspection_endpoint:r().optional(),introspection_endpoint_auth_methods_supported:S(r()).optional(),introspection_endpoint_auth_signing_alg_values_supported:S(r()).optional(),code_challenge_methods_supported:S(r()).optional(),client_id_metadata_document_supported:k().optional(),authorization_response_iss_parameter_supported:k().optional().catch(void 0),dpop_signing_alg_values_supported:S(r()).optional()}),ku=I({issuer:r(),authorization_endpoint:ne,token_endpoint:ne,userinfo_endpoint:ne.optional(),jwks_uri:ne,registration_endpoint:ne.optional(),scopes_supported:S(r()).optional(),response_types_supported:S(r()),response_modes_supported:S(r()).optional(),grant_types_supported:S(r()).optional(),acr_values_supported:S(r()).optional(),subject_types_supported:S(r()),id_token_signing_alg_values_supported:S(r()),id_token_encryption_alg_values_supported:S(r()).optional(),id_token_encryption_enc_values_supported:S(r()).optional(),userinfo_signing_alg_values_supported:S(r()).optional(),userinfo_encryption_alg_values_supported:S(r()).optional(),userinfo_encryption_enc_values_supported:S(r()).optional(),request_object_signing_alg_values_supported:S(r()).optional(),request_object_encryption_alg_values_supported:S(r()).optional(),request_object_encryption_enc_values_supported:S(r()).optional(),token_endpoint_auth_methods_supported:S(r()).optional(),token_endpoint_auth_signing_alg_values_supported:S(r()).optional(),display_values_supported:S(r()).optional(),claim_types_supported:S(r()).optional(),claims_supported:S(r()).optional(),service_documentation:r().optional(),claims_locales_supported:S(r()).optional(),ui_locales_supported:S(r()).optional(),claims_parameter_supported:k().optional(),request_parameter_supported:k().optional(),request_uri_parameter_supported:k().optional(),require_request_uri_registration:k().optional(),op_policy_uri:ne.optional(),op_tos_uri:ne.optional(),client_id_metadata_document_supported:k().optional(),authorization_response_iss_parameter_supported:k().optional().catch(void 0)}),bg=u({...ku.shape,...Pu.pick({code_challenge_methods_supported:!0}).shape}),yg=u({access_token:r(),id_token:r().optional(),token_type:r(),expires_in:FS().optional(),scope:r().optional(),refresh_token:r().optional(),issuer:r().optional().catch(void 0)}).strip(),vg=u({issued_token_type:d("urn:ietf:params:oauth:token-type:id-jag"),access_token:r(),token_type:r().optional(),expires_in:y().optional(),scope:r().optional()}).strip(),Rg=u({error:r(),error_description:r().optional(),error_uri:r().optional()}),Br=ne.optional().or(d("").transform(()=>{})),Cu=u({redirect_uris:S(ne),token_endpoint_auth_method:r().optional(),grant_types:S(r()).optional(),response_types:S(r()).optional(),application_type:r().optional(),client_name:r().optional(),client_uri:ne.optional(),logo_uri:Br,scope:r().optional(),contacts:S(r()).optional(),tos_uri:Br,policy_uri:r().optional(),jwks_uri:ne.optional(),jwks:Ti().optional(),software_id:r().optional(),software_version:r().optional(),software_statement:r().optional()}).strip(),$u=u({client_id:r(),client_secret:r().optional(),client_id_issued_at:y().optional(),client_secret_expires_at:y().optional(),issuer:r().optional().catch(void 0)}).strip(),wg=Cu.merge($u),Tg=u({error:r(),error_description:r().optional()}).strip(),Pg=u({token:r(),token_type_hint:r().optional()}).strip(),ei=Symbol.for("mcp.sdk.errorBrands");function Eu(e,t){const n=new Set;let o=t;for(;typeof o=="function";){const s=o.mcpBrand;Object.prototype.hasOwnProperty.call(o,"mcpBrand")&&typeof s=="string"&&n.add(s),o=Object.getPrototypeOf(o)}n.size!==0&&Object.defineProperty(e,ei,{value:n,enumerable:!1,configurable:!0})}function ts(e,t){try{if(typeof t=="object"&&t!==null&&Object.prototype.hasOwnProperty.call(e,"mcpBrand")&&typeof e.mcpBrand=="string"&&Object.prototype.hasOwnProperty.call(t,ei)){const n=t[ei];if(n&&typeof n.has=="function"&&n.has(e.mcpBrand))return!0}}catch{}return Function.prototype[Symbol.hasInstance].call(e,t)}let re=(function(e){return e.NotConnected="NOT_CONNECTED",e.AlreadyConnected="ALREADY_CONNECTED",e.NotInitialized="NOT_INITIALIZED",e.CapabilityNotSupported="CAPABILITY_NOT_SUPPORTED",e.RequestTimeout="REQUEST_TIMEOUT",e.ConnectionClosed="CONNECTION_CLOSED",e.SendFailed="SEND_FAILED",e.InvalidResult="INVALID_RESULT",e.UnsupportedResultType="UNSUPPORTED_RESULT_TYPE",e.InputRequiredRoundsExceeded="INPUT_REQUIRED_ROUNDS_EXCEEDED",e.ListPaginationExceeded="LIST_PAGINATION_EXCEEDED",e.MethodNotSupportedByProtocolVersion="METHOD_NOT_SUPPORTED_BY_PROTOCOL_VERSION",e.EraNegotiationFailed="ERA_NEGOTIATION_FAILED",e.ClientHttpNotImplemented="CLIENT_HTTP_NOT_IMPLEMENTED",e.ClientHttpAuthentication="CLIENT_HTTP_AUTHENTICATION",e.ClientHttpForbidden="CLIENT_HTTP_FORBIDDEN",e.ClientHttpUnexpectedContent="CLIENT_HTTP_UNEXPECTED_CONTENT",e.ClientHttpFailedToOpenStream="CLIENT_HTTP_FAILED_TO_OPEN_STREAM",e.ClientHttpFailedToTerminateSession="CLIENT_HTTP_FAILED_TO_TERMINATE_SESSION",e})({});var At,te=(At=class extends Error{static[Symbol.hasInstance](t){return ts(this,t)}static isInstance(t){if(typeof this!="function")throw new TypeError("isInstance must be called on the class (e.g. `SdkError.isInstance(value)`); for callbacks use `v => SdkError.isInstance(v)`");return ts(this,t)}constructor(t,n,o,s){super(n,s),this.code=t,this.data=o,this.name="SdkError",Eu(this,new.target)}},Object.defineProperty(At,"mcpBrand",{value:"mcp.SdkError"}),At);const kg="2026-07-28";function Cg(e){return e>=kg}function Ou(e){var n;const t=e.structuredContent;return t===void 0||!(typeof t!="object"||t===null||Array.isArray(t))||(((n=e.content)==null?void 0:n.some(o=>o.type==="text"))??!1)?e:{...e,content:[...e.content??[],{type:"text",text:JSON.stringify(t)}]}}const Iu=["task","inputRequests","requestState"];function $g(e){return e===null||typeof e!="object"||Array.isArray(e)||e.content!==void 0||Iu.some(t=>t in e)?e:{...e,content:[]}}function Eg(){const e=Pi(()=>P([r(),y(),k(),co(),w(r(),e),S(e)])),t=w(r(),e),n=P([r(),y().int()]),o=r(),s=u({ttl:y().optional()}),i=u({taskId:r()}),a=I({progressToken:n.optional(),"io.modelcontextprotocol/related-task":i.optional()}),l=u({_meta:a.optional()}),c=l.extend({task:s.optional()}),p=u({method:r(),params:l.loose().optional()}),m=u({_meta:a.optional()}),h=u({method:r(),params:m.loose().optional()}),f=I({_meta:a.optional()}),g=P([r(),y().int()]),b=f.strict(),v=m.extend({requestId:g.optional(),reason:r().optional()}),R=h.extend({method:d("notifications/cancelled"),params:v}),T=u({src:r(),mimeType:r().optional(),sizes:S(r()).optional(),theme:N(["light","dark"]).optional()}),C=u({icons:S(T).optional()}),j=u({name:r(),title:r().optional()}),L=j.extend({...j.shape,...C.shape,version:r(),websiteUrl:r().optional(),description:r().optional()}),we=St(u({applyDefaults:k().optional()}),t),qe=lo(ie=>ie&&typeof ie=="object"&&!Array.isArray(ie)&&Object.keys(ie).length===0?{form:{}}:ie,St(u({form:we.optional(),url:t.optional()}),t.optional())),D=I({list:t.optional(),cancel:t.optional(),requests:I({sampling:I({createMessage:t.optional()}).optional(),elicitation:I({create:t.optional()}).optional()}).optional()}),M=I({list:t.optional(),cancel:t.optional(),requests:I({tools:I({call:t.optional()}).optional()}).optional()}),X=u({experimental:w(r(),t).optional(),sampling:u({context:t.optional(),tools:t.optional()}).optional(),elicitation:qe.optional(),roots:u({listChanged:k().optional()}).optional(),tasks:D.optional(),extensions:w(r(),t).optional()}),A=l.extend({protocolVersion:r(),capabilities:X,clientInfo:L}),J=p.extend({method:d("initialize"),params:A}),fe=u({experimental:w(r(),t).optional(),logging:t.optional(),completions:t.optional(),prompts:u({listChanged:k().optional()}).optional(),resources:u({subscribe:k().optional(),listChanged:k().optional()}).optional(),tools:u({listChanged:k().optional()}).optional(),tasks:M.optional(),extensions:w(r(),t).optional()}),Te=f.extend({protocolVersion:r(),capabilities:fe,serverInfo:L,instructions:r().optional()}),ee=h.extend({method:d("notifications/initialized"),params:m.optional()}),Se=p.extend({method:d("ping"),params:l.optional()}),Le=u({progress:y(),total:O(y()),message:O(r())}),Ne=u({...m.shape,...Le.shape,progressToken:n}),He=h.extend({method:d("notifications/progress"),params:Ne}),yt=l.extend({cursor:o.optional()}),Ae=p.extend({params:yt.optional()}),je=f.extend({nextCursor:o.optional()}),vt=u({uri:r(),mimeType:O(r()),_meta:w(r(),$()).optional()}),Rt=vt.extend({text:r()}),et=r().refine(ie=>{try{return atob(ie),!0}catch{return!1}},{message:"Invalid Base64 string"}),wt=vt.extend({blob:et}),ze=N(["user","assistant"]),Pe=u({audience:S(ze).optional(),priority:y().min(0).max(1).optional(),lastModified:ls({offset:!0}).optional()}),tt=u({...j.shape,...C.shape,uri:r(),description:O(r()),mimeType:O(r()),size:O(y()),annotations:Pe.optional(),_meta:O(I({}))}),nn=u({...j.shape,...C.shape,uriTemplate:r(),description:O(r()),mimeType:O(r()),annotations:Pe.optional(),_meta:O(I({}))}),on=Ae.extend({method:d("resources/list")}),sn=je.extend({resources:S(tt)}),Fe=Ae.extend({method:d("resources/templates/list")}),Tt=je.extend({resourceTemplates:S(nn)}),nt=l.extend({uri:r()}),rn=nt,an=p.extend({method:d("resources/read"),params:rn}),cn=f.extend({contents:S(P([Rt,wt]))}),ln=h.extend({method:d("notifications/resources/list_changed"),params:m.optional()}),un=nt,dn=p.extend({method:d("resources/subscribe"),params:un}),pn=nt,mn=p.extend({method:d("resources/unsubscribe"),params:pn}),hn=m.extend({uri:r()}),fn=h.extend({method:d("notifications/resources/updated"),params:hn}),Sn=u({name:r(),description:O(r()),required:O(k())}),gn=u({...j.shape,...C.shape,description:O(r()),arguments:O(S(Sn)),_meta:O(I({}))}),_n=Ae.extend({method:d("prompts/list")}),bn=je.extend({prompts:S(gn)}),yn=l.extend({name:r(),arguments:w(r(),r()).optional()}),vn=p.extend({method:d("prompts/get"),params:yn}),ot=u({type:d("text"),text:r(),annotations:Pe.optional(),_meta:w(r(),$()).optional()}),st=u({type:d("image"),data:et,mimeType:r(),annotations:Pe.optional(),_meta:w(r(),$()).optional()}),it=u({type:d("audio"),data:et,mimeType:r(),annotations:Pe.optional(),_meta:w(r(),$()).optional()}),Rn=u({type:d("tool_use"),name:r(),id:r(),input:w(r(),$()),_meta:w(r(),$()).optional()}),Je=u({type:d("resource"),resource:P([Rt,wt]),annotations:Pe.optional(),_meta:w(r(),$()).optional()}),wn=tt.extend({type:d("resource_link")}),ve=P([ot,st,it,wn,Je]),Pt=u({role:ze,content:ve}),kt=f.extend({description:r().optional(),messages:S(Pt)}),rt=h.extend({method:d("notifications/prompts/list_changed"),params:m.optional()}),Tn=u({title:r().optional(),readOnlyHint:k().optional(),destructiveHint:k().optional(),idempotentHint:k().optional(),openWorldHint:k().optional()}),Ct=u({taskSupport:N(["required","optional","forbidden"]).optional()}),at=u({...j.shape,...C.shape,description:r().optional(),inputSchema:u({type:d("object"),properties:w(r(),e).optional(),required:S(r()).optional()}).catchall($()),outputSchema:u({type:d("object"),properties:w(r(),e).optional(),required:S(r()).optional()}).catchall($()).optional(),annotations:Tn.optional(),execution:Ct.optional(),_meta:w(r(),$()).optional()}),$t=Ae.extend({method:d("tools/list")}),Et=je.extend({tools:S(at)}),Ot=f.extend({content:S(ve),structuredContent:w(r(),$()).optional(),isError:k().optional()}),se=c.extend({name:r(),arguments:w(r(),$()).optional()}),Pn=p.extend({method:d("tools/call"),params:se}),fo=h.extend({method:d("notifications/tools/list_changed"),params:m.optional()}),It=N(["debug","info","notice","warning","error","critical","alert","emergency"]),kn=l.extend({level:It}),Cn=p.extend({method:d("logging/setLevel"),params:kn}),$n=m.extend({level:It,logger:r().optional(),data:$()}),En=h.extend({method:d("notifications/message"),params:$n}),On=u({name:r().optional()}),In=u({hints:S(On).optional(),costPriority:y().min(0).max(1).optional(),speedPriority:y().min(0).max(1).optional(),intelligencePriority:y().min(0).max(1).optional()}),qn=u({mode:N(["auto","required","none"]).optional()}),So=u({type:d("tool_result"),toolUseId:r().describe("The unique identifier for the corresponding tool call."),content:S(ve),structuredContent:u({}).loose().optional(),isError:k().optional(),_meta:w(r(),$()).optional()}),Nn=Xo("type",[ot,st,it]),Ve=Xo("type",[ot,st,it,Rn,So]),zn=u({role:ze,content:P([Ve,S(Ve)]),_meta:w(r(),$()).optional()}),xn=c.extend({messages:S(zn),modelPreferences:In.optional(),systemPrompt:r().optional(),includeContext:N(["none","thisServer","allServers"]).optional(),temperature:y().optional(),maxTokens:y().int(),stopSequences:S(r()).optional(),metadata:t.optional(),tools:S(at).optional(),toolChoice:qn.optional()}),Mn=p.extend({method:d("sampling/createMessage"),params:xn}),Ln=f.extend({model:r(),stopReason:O(N(["endTurn","stopSequence","maxTokens"]).or(r())),role:ze,content:Nn}),An=f.extend({model:r(),stopReason:O(N(["endTurn","stopSequence","maxTokens","toolUse"]).or(r())),role:ze,content:P([Ve,S(Ve)])}),jn=u({type:d("boolean"),title:r().optional(),description:r().optional(),default:k().optional()}),Zn=u({type:d("string"),title:r().optional(),description:r().optional(),minLength:y().optional(),maxLength:y().optional(),format:N(["email","uri","date","date-time"]).optional(),default:r().optional()}),Un=u({type:N(["number","integer"]),title:r().optional(),description:r().optional(),minimum:y().optional(),maximum:y().optional(),default:y().optional()}),Dn=u({type:d("string"),title:r().optional(),description:r().optional(),enum:S(r()),default:r().optional()}),Hn=u({type:d("string"),title:r().optional(),description:r().optional(),oneOf:S(u({const:r(),title:r()})),default:r().optional()}),Fn=u({type:d("string"),title:r().optional(),description:r().optional(),enum:S(r()),enumNames:S(r()).optional(),default:r().optional()}),Jn=P([Dn,Hn]),ct=u({type:d("array"),title:r().optional(),description:r().optional(),minItems:y().optional(),maxItems:y().optional(),items:u({type:d("string"),enum:S(r())}),default:S(r()).optional()}),lt=u({type:d("array"),title:r().optional(),description:r().optional(),minItems:y().optional(),maxItems:y().optional(),items:u({anyOf:S(u({const:r(),title:r()}))}),default:S(r()).optional()}),go=P([ct,lt]),_o=P([Fn,Jn,go]),ge=P([_o,jn,Zn,Un]),_e=c.extend({mode:d("form").optional(),message:r(),requestedSchema:u({type:d("object"),properties:w(r(),ge),required:S(r()).optional()}).catchall($())}),Vn=c.extend({mode:d("url"),message:r(),elicitationId:r(),url:r().url()}),ke=P([_e,Vn]),bo=p.extend({method:d("elicitation/create"),params:ke}),yo=m.extend({elicitationId:r()}),vo=h.extend({method:d("notifications/elicitation/complete"),params:yo}),Ro=f.extend({action:N(["accept","decline","cancel"]),content:lo(ie=>ie===null?void 0:ie,w(r(),P([r(),y(),k(),S(r())])).optional())}),wo=u({type:d("ref/resource"),uri:r()}),To=u({type:d("ref/prompt"),name:r()}),Po=l.extend({ref:P([To,wo]),argument:u({name:r(),value:r()}),context:u({arguments:w(r(),r()).optional()}).optional()}),Bn=p.extend({method:d("completion/complete"),params:Po}),ko=f.extend({completion:I({values:S(r()).max(100),total:O(y().int()),hasMore:O(k())})}),Co=u({uri:r().startsWith("file://"),name:r().optional(),_meta:w(r(),$()).optional()}),qt=p.extend({method:d("roots/list"),params:l.optional()}),Kn=f.extend({roots:S(Co)}),$o=h.extend({method:d("notifications/roots/list_changed"),params:m.optional()}),Eo=I({ttl:y().optional(),pollInterval:y().optional()}),Wn=N(["working","input_required","completed","failed","cancelled"]),Be=u({taskId:r(),status:Wn,ttl:P([y(),co()]),createdAt:r(),lastUpdatedAt:r(),pollInterval:O(y()),statusMessage:O(r())}),de=f.extend({task:Be}),Oo=m.merge(Be),ut=h.extend({method:d("notifications/tasks/status"),params:Oo}),Nt=p.extend({method:d("tasks/get"),params:l.extend({taskId:r()})}),zt=f.merge(Be),xt=p.extend({method:d("tasks/result"),params:l.extend({taskId:r()})}),$s=f.loose(),le=Ae.extend({method:d("tasks/list")}),K=je.extend({tasks:S(Be)}),dt=p.extend({method:d("tasks/cancel"),params:l.extend({taskId:r()})});return{JSONValueSchema:e,JSONObjectSchema:t,ProgressTokenSchema:n,CursorSchema:o,TaskMetadataSchema:s,RelatedTaskMetadataSchema:i,RequestMetaSchema:a,BaseRequestParamsSchema:l,TaskAugmentedRequestParamsSchema:c,RequestSchema:p,NotificationsParamsSchema:m,NotificationSchema:h,ResultSchema:f,RequestIdSchema:g,EmptyResultSchema:b,CancelledNotificationParamsSchema:v,CancelledNotificationSchema:R,IconSchema:T,IconsSchema:C,BaseMetadataSchema:j,ImplementationSchema:L,ClientTasksCapabilitySchema:D,ServerTasksCapabilitySchema:M,ClientCapabilitiesSchema:X,InitializeRequestParamsSchema:A,InitializeRequestSchema:J,ServerCapabilitiesSchema:fe,InitializeResultSchema:Te,InitializedNotificationSchema:ee,PingRequestSchema:Se,ProgressSchema:Le,ProgressNotificationParamsSchema:Ne,ProgressNotificationSchema:He,PaginatedRequestParamsSchema:yt,PaginatedRequestSchema:Ae,PaginatedResultSchema:je,ResourceContentsSchema:vt,TextResourceContentsSchema:Rt,BlobResourceContentsSchema:wt,RoleSchema:ze,AnnotationsSchema:Pe,ResourceSchema:tt,ResourceTemplateSchema:nn,ListResourcesRequestSchema:on,ListResourcesResultSchema:sn,ListResourceTemplatesRequestSchema:Fe,ListResourceTemplatesResultSchema:Tt,ResourceRequestParamsSchema:nt,ReadResourceRequestParamsSchema:rn,ReadResourceRequestSchema:an,ReadResourceResultSchema:cn,ResourceListChangedNotificationSchema:ln,SubscribeRequestParamsSchema:un,SubscribeRequestSchema:dn,UnsubscribeRequestParamsSchema:pn,UnsubscribeRequestSchema:mn,ResourceUpdatedNotificationParamsSchema:hn,ResourceUpdatedNotificationSchema:fn,PromptArgumentSchema:Sn,PromptSchema:gn,ListPromptsRequestSchema:_n,ListPromptsResultSchema:bn,GetPromptRequestParamsSchema:yn,GetPromptRequestSchema:vn,TextContentSchema:ot,ImageContentSchema:st,AudioContentSchema:it,ToolUseContentSchema:Rn,EmbeddedResourceSchema:Je,ResourceLinkSchema:wn,ContentBlockSchema:ve,PromptMessageSchema:Pt,GetPromptResultSchema:kt,PromptListChangedNotificationSchema:rt,ToolAnnotationsSchema:Tn,ToolExecutionSchema:Ct,ToolSchema:at,ListToolsRequestSchema:$t,ListToolsResultSchema:Et,CallToolResultSchema:Ot,CallToolRequestParamsSchema:se,CallToolRequestSchema:Pn,ToolListChangedNotificationSchema:fo,LoggingLevelSchema:It,SetLevelRequestParamsSchema:kn,SetLevelRequestSchema:Cn,LoggingMessageNotificationParamsSchema:$n,LoggingMessageNotificationSchema:En,ModelHintSchema:On,ModelPreferencesSchema:In,ToolChoiceSchema:qn,ToolResultContentSchema:So,SamplingContentSchema:Nn,SamplingMessageContentBlockSchema:Ve,SamplingMessageSchema:zn,CreateMessageRequestParamsSchema:xn,CreateMessageRequestSchema:Mn,CreateMessageResultSchema:Ln,CreateMessageResultWithToolsSchema:An,BooleanSchemaSchema:jn,StringSchemaSchema:Zn,NumberSchemaSchema:Un,UntitledSingleSelectEnumSchemaSchema:Dn,TitledSingleSelectEnumSchemaSchema:Hn,LegacyTitledEnumSchemaSchema:Fn,SingleSelectEnumSchemaSchema:Jn,UntitledMultiSelectEnumSchemaSchema:ct,TitledMultiSelectEnumSchemaSchema:lt,MultiSelectEnumSchemaSchema:go,EnumSchemaSchema:_o,PrimitiveSchemaDefinitionSchema:ge,ElicitRequestFormParamsSchema:_e,ElicitRequestURLParamsSchema:Vn,ElicitRequestParamsSchema:ke,ElicitRequestSchema:bo,ElicitationCompleteNotificationParamsSchema:yo,ElicitationCompleteNotificationSchema:vo,ElicitResultSchema:Ro,ResourceTemplateReferenceSchema:wo,PromptReferenceSchema:To,CompleteRequestParamsSchema:Po,CompleteRequestSchema:Bn,CompleteResultSchema:ko,RootSchema:Co,ListRootsRequestSchema:qt,ListRootsResultSchema:Kn,RootsListChangedNotificationSchema:$o,TaskCreationParamsSchema:Eo,TaskStatusSchema:Wn,TaskSchema:Be,CreateTaskResultSchema:de,TaskStatusNotificationParamsSchema:Oo,TaskStatusNotificationSchema:ut,GetTaskRequestSchema:Nt,GetTaskResultSchema:zt,GetTaskPayloadRequestSchema:xt,GetTaskPayloadResultSchema:$s,ListTasksRequestSchema:le,ListTasksResultSchema:K,CancelTaskRequestSchema:dt,CancelTaskResultSchema:f.merge(Be),ClientRequestSchema:P([Se,J,Bn,Cn,vn,_n,on,Fe,an,dn,mn,Pn,$t,Nt,xt,le,dt]),ClientNotificationSchema:P([R,He,ee,$o,ut]),ClientResultSchema:P([b,Ln,An,Ro,Kn,zt,K,de]),ServerRequestSchema:P([Se,Mn,bo,qt,Nt,xt,le,dt]),ServerNotificationSchema:P([R,He,En,fn,ln,fo,rt,ut,vo]),ServerResultSchema:P([b,Te,ko,kt,bn,sn,Tt,cn,Ot,Et,zt,K,de]),CallToolResultWireSchema:$().superRefine((ie,od)=>{if(!(typeof ie!="object"||ie===null||Array.isArray(ie)||ie.content!==void 0)){for(const ur of Iu)if(ur in ie){od.addIssue({code:"custom",message:`content is required when the body carries '${ur}' — another result family cannot default into an empty tools/call success`});return}}}).transform($g).pipe(Ot)}}let Og;function qu(){return Og??(Og=Eg())}function Nu(e){return e.type!=="object"}const Ig=new Set(["const","enum","default","examples"]),qg=new Set(["properties","patternProperties","$defs","definitions","dependentSchemas","dependencies"]);function Kr(e){return e!==void 0&&!(typeof e=="string"&&e.startsWith("#"))}function Ng(e){const t=typeof e.$schema=="string"?e.$schema:void 0;if(Kr(e.$id))return{...t!==void 0&&{$schema:t},type:"object",properties:{result:e},required:["result"]};const n=Sd(e.$schema)&&e.$recursiveAnchor!==!0,o=(s,i)=>{if(Array.isArray(s))return s.map(c=>o(c,!1));if(s===null||typeof s!="object"||!i&&Kr(s.$id))return s;const a={};let l=!1;for(const[c,p]of Object.entries(s))i?a[c]=o(p,!1):(c==="$ref"||c==="$dynamicRef")&&typeof p=="string"?a[c]=p==="#"?"#/properties/result":p.startsWith("#/")?`#/properties/result${p.slice(1)}`:p:c==="$recursiveRef"&&p==="#"&&n?l=!0:Ig.has(c)?a[c]=p:qg.has(c)?a[c]=o(p,!0):a[c]=o(p,!1);return l&&("$ref"in a?a.allOf=[...Array.isArray(a.allOf)?a.allOf:[],{$ref:"#/properties/result"}]:a.$ref="#/properties/result"),a};return{...t!==void 0&&{$schema:t},type:"object",properties:{result:o(e,!1)},required:["result"]}}const zg={ping:null,initialize:null,"completion/complete":null,"logging/setLevel":null,"prompts/get":null,"prompts/list":null,"resources/list":null,"resources/templates/list":null,"resources/read":null,"resources/subscribe":null,"resources/unsubscribe":null,"tools/call":null,"tools/list":null,"tasks/get":null,"tasks/result":null,"tasks/list":null,"tasks/cancel":null,"sampling/createMessage":null,"elicitation/create":null,"roots/list":null},xg={"notifications/cancelled":null,"notifications/progress":null,"notifications/initialized":null,"notifications/roots/list_changed":null,"notifications/tasks/status":null,"notifications/message":null,"notifications/resources/updated":null,"notifications/resources/list_changed":null,"notifications/tools/list_changed":null,"notifications/prompts/list_changed":null,"notifications/elicitation/complete":null},Mg={ping:null,initialize:null,"completion/complete":null,"logging/setLevel":null,"prompts/get":null,"prompts/list":null,"resources/list":null,"resources/templates/list":null,"resources/read":null,"resources/subscribe":null,"resources/unsubscribe":null,"tools/call":null,"tools/list":null,"sampling/createMessage":null,"elicitation/create":null,"roots/list":null};let Mo;function er(){if(Mo)return Mo;const e=qu();return Mo={requestSchemas:{ping:e.PingRequestSchema,initialize:e.InitializeRequestSchema,"completion/complete":e.CompleteRequestSchema,"logging/setLevel":e.SetLevelRequestSchema,"prompts/get":e.GetPromptRequestSchema,"prompts/list":e.ListPromptsRequestSchema,"resources/list":e.ListResourcesRequestSchema,"resources/templates/list":e.ListResourceTemplatesRequestSchema,"resources/read":e.ReadResourceRequestSchema,"resources/subscribe":e.SubscribeRequestSchema,"resources/unsubscribe":e.UnsubscribeRequestSchema,"tools/call":e.CallToolRequestSchema,"tools/list":e.ListToolsRequestSchema,"tasks/get":e.GetTaskRequestSchema,"tasks/result":e.GetTaskPayloadRequestSchema,"tasks/list":e.ListTasksRequestSchema,"tasks/cancel":e.CancelTaskRequestSchema,"sampling/createMessage":e.CreateMessageRequestSchema,"elicitation/create":e.ElicitRequestSchema,"roots/list":e.ListRootsRequestSchema},notificationSchemas:{"notifications/cancelled":e.CancelledNotificationSchema,"notifications/progress":e.ProgressNotificationSchema,"notifications/initialized":e.InitializedNotificationSchema,"notifications/roots/list_changed":e.RootsListChangedNotificationSchema,"notifications/tasks/status":e.TaskStatusNotificationSchema,"notifications/message":e.LoggingMessageNotificationSchema,"notifications/resources/updated":e.ResourceUpdatedNotificationSchema,"notifications/resources/list_changed":e.ResourceListChangedNotificationSchema,"notifications/tools/list_changed":e.ToolListChangedNotificationSchema,"notifications/prompts/list_changed":e.PromptListChangedNotificationSchema,"notifications/elicitation/complete":e.ElicitationCompleteNotificationSchema},resultSchemas:{ping:e.EmptyResultSchema,initialize:e.InitializeResultSchema,"completion/complete":e.CompleteResultSchema,"logging/setLevel":e.EmptyResultSchema,"prompts/get":e.GetPromptResultSchema,"prompts/list":e.ListPromptsResultSchema,"resources/list":e.ListResourcesResultSchema,"resources/templates/list":e.ListResourceTemplatesResultSchema,"resources/read":e.ReadResourceResultSchema,"resources/subscribe":e.EmptyResultSchema,"resources/unsubscribe":e.EmptyResultSchema,"tools/call":e.CallToolResultWireSchema,"tools/list":e.ListToolsResultSchema,"sampling/createMessage":e.CreateMessageResultWithToolsSchema,"elicitation/create":e.ElicitResultSchema,"roots/list":e.ListRootsResultSchema}},Mo}function zu(e){return Object.prototype.hasOwnProperty.call(zg,e)}function xu(e){return Object.prototype.hasOwnProperty.call(xg,e)}function Lg(e){return Object.prototype.hasOwnProperty.call(Mg,e)}function Ag(e){return Lg(e)?er().resultSchemas[e]:void 0}function jg(e){return zu(e)?er().requestSchemas[e]:void 0}function Zg(e){return xu(e)?er().notificationSchemas[e]:void 0}function ti(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Lo(e,t){if(e===void 0)return{ok:!1,reason:"not-in-era"};const n=e.safeParse(t);return n.success?{ok:!0,value:n.data}:{ok:!1,reason:"invalid",message:String(n.error)}}const Wr={ok:!1,reason:"not-in-era"};function Gr(e){return ti(e)&&ti(e.outputSchema)&&Nu(e.outputSchema)}const tr={era:"2025-11-25",hasRequestMethod:zu,hasNotificationMethod:xu,validateRequest:(e,t)=>Lo(jg(e),t),validateResult:(e,t)=>Lo(Ag(e),t),validateNotification:(e,t)=>Lo(Zg(e),t),hasInputRequestMethod:()=>!1,validateInputRequest:()=>Wr,validateInputResponse:()=>Wr,samplingResultVariant:((e,t)=>{const n=qu();return Lo(e?n.CreateMessageResultWithToolsSchema:n.CreateMessageResultSchema,t)}),outboundEnvelope:e=>{},validateEnvelopeMeta:e=>[],projectCallToolResult(e,t){const n=Ou(e),o=n.structuredContent;if(o===void 0)return n;const s=typeof o!="object"||o===null||Array.isArray(o),i=t!==void 0&&Nu(t);return!s&&!i?n:{...n,structuredContent:{result:o}}},decodeResult(e,t){if(ti(t)&&"resultType"in t){const n={...t};return delete n.resultType,{kind:"complete",result:n}}return{kind:"complete",result:t}},encodeResult(e,t){if(e!=="tools/list")return t;const n=t.tools;return!Array.isArray(n)||!n.some(o=>Gr(o))?t:{...t,tools:n.map(o=>Gr(o)?{...o,outputSchema:Ng(o.outputSchema)}:o)}},encodeErrorCode:e=>e===-32002?-32602:e,checkInboundEnvelope:e=>{}};function Ug(){const e=Pi(()=>P([r(),y(),k(),co(),w(r(),e),S(e)])),t=w(r(),e),n=P([r(),y().int()]),o=r(),s=P([r(),y().int()]),i=N(["user","assistant"]),a=N(["debug","info","notice","warning","error","critical","alert","emergency"]),l=r().refine(K=>{try{return atob(K),!0}catch{return!1}},{message:"Invalid Base64 string"}),c=u({ttl:y().optional()}),p=u({taskId:r()}),m=I({progressToken:n.optional(),"io.modelcontextprotocol/related-task":p.optional()}),h=u({_meta:m.optional()}),f=h.extend({task:c.optional()}),g=u({_meta:m.optional()}),b=u({method:r(),params:g.loose().optional()}),v=u({src:r(),mimeType:r().optional(),sizes:S(r()).optional(),theme:N(["light","dark"]).optional()}),R=u({icons:S(v).optional()}),T=u({name:r(),title:r().optional()}),C=T.extend({...T.shape,...R.shape,version:r(),websiteUrl:r().optional(),description:r().optional()}),j=St(u({applyDefaults:k().optional()}),t),L=lo(K=>K&&typeof K=="object"&&!Array.isArray(K)&&Object.keys(K).length===0?{form:{}}:K,St(u({form:j.optional(),url:t.optional()}),t.optional())),we=I({list:t.optional(),cancel:t.optional(),requests:I({sampling:I({createMessage:t.optional()}).optional(),elicitation:I({create:t.optional()}).optional()}).optional()}),qe=I({list:t.optional(),cancel:t.optional(),requests:I({tools:I({call:t.optional()}).optional()}).optional()}),D=u({experimental:w(r(),t).optional(),sampling:u({context:t.optional(),tools:t.optional()}).optional(),elicitation:L.optional(),roots:u({listChanged:k().optional()}).optional(),tasks:we.optional(),extensions:w(r(),t).optional()}),M=u({experimental:w(r(),t).optional(),logging:t.optional(),completions:t.optional(),prompts:u({listChanged:k().optional()}).optional(),resources:u({subscribe:k().optional(),listChanged:k().optional()}).optional(),tools:u({listChanged:k().optional()}).optional(),tasks:qe.optional(),extensions:w(r(),t).optional()}),X=u({progress:y(),total:O(y()),message:O(r())}),A=u({...g.shape,...X.shape,progressToken:n}),J=b.extend({method:d("notifications/progress"),params:A}),fe=g.extend({level:a,logger:r().optional(),data:$()}),Te=b.extend({method:d("notifications/message"),params:fe}),ee=u({uri:r(),mimeType:O(r()),_meta:w(r(),$()).optional()}),Se=ee.extend({text:r()}),Le=ee.extend({blob:l}),Ne=u({audience:S(i).optional(),priority:y().min(0).max(1).optional(),lastModified:ls({offset:!0}).optional()}),He=u({...T.shape,...R.shape,uri:r(),description:O(r()),mimeType:O(r()),size:O(y()),annotations:Ne.optional(),_meta:O(I({}))}),yt=u({...T.shape,...R.shape,uriTemplate:r(),description:O(r()),mimeType:O(r()),annotations:Ne.optional(),_meta:O(I({}))}),Ae=b.extend({method:d("notifications/resources/list_changed"),params:g.optional()}),je=g.extend({uri:r()}),vt=b.extend({method:d("notifications/resources/updated"),params:je}),Rt=u({name:r(),description:O(r()),required:O(k())}),et=u({...T.shape,...R.shape,description:O(r()),arguments:O(S(Rt)),_meta:O(I({}))}),wt=b.extend({method:d("notifications/prompts/list_changed"),params:g.optional()}),ze=u({type:d("text"),text:r(),annotations:Ne.optional(),_meta:w(r(),$()).optional()}),Pe=u({type:d("image"),data:l,mimeType:r(),annotations:Ne.optional(),_meta:w(r(),$()).optional()}),tt=u({type:d("audio"),data:l,mimeType:r(),annotations:Ne.optional(),_meta:w(r(),$()).optional()}),nn=u({type:d("tool_use"),name:r(),id:r(),input:w(r(),$()),_meta:w(r(),$()).optional()}),on=u({type:d("resource"),resource:P([Se,Le]),annotations:Ne.optional(),_meta:w(r(),$()).optional()}),sn=He.extend({type:d("resource_link")}),Fe=P([ze,Pe,tt,sn,on]),Tt=u({role:i,content:Fe}),nt=u({title:r().optional(),readOnlyHint:k().optional(),destructiveHint:k().optional(),idempotentHint:k().optional(),openWorldHint:k().optional()}),rn=b.extend({method:d("notifications/tools/list_changed"),params:g.optional()}),an=u({name:r().optional()}),cn=u({hints:S(an).optional(),costPriority:y().min(0).max(1).optional(),speedPriority:y().min(0).max(1).optional(),intelligencePriority:y().min(0).max(1).optional()}),ln=u({mode:N(["auto","required","none"]).optional()}),un=u({type:d("boolean"),title:r().optional(),description:r().optional(),default:k().optional()}),dn=u({type:d("string"),title:r().optional(),description:r().optional(),minLength:y().optional(),maxLength:y().optional(),format:N(["email","uri","date","date-time"]).optional(),default:r().optional()}),pn=u({type:N(["number","integer"]),title:r().optional(),description:r().optional(),minimum:y().optional(),maximum:y().optional(),default:y().optional()}),mn=u({type:d("string"),title:r().optional(),description:r().optional(),enum:S(r()),default:r().optional()}),hn=u({type:d("string"),title:r().optional(),description:r().optional(),oneOf:S(u({const:r(),title:r()})),default:r().optional()}),fn=u({type:d("string"),title:r().optional(),description:r().optional(),enum:S(r()),enumNames:S(r()).optional(),default:r().optional()}),Sn=P([mn,hn]),gn=u({type:d("array"),title:r().optional(),description:r().optional(),minItems:y().optional(),maxItems:y().optional(),items:u({type:d("string"),enum:S(r())}),default:S(r()).optional()}),_n=u({type:d("array"),title:r().optional(),description:r().optional(),minItems:y().optional(),maxItems:y().optional(),items:u({anyOf:S(u({const:r(),title:r()}))}),default:S(r()).optional()}),bn=P([gn,_n]),yn=P([fn,Sn,bn]),vn=P([yn,un,dn,pn]),ot=f.extend({mode:d("form").optional(),message:r(),requestedSchema:u({type:d("object"),properties:w(r(),vn),required:S(r()).optional()}).catchall($())}),st=u({type:d("ref/resource"),uri:r()}),it=u({type:d("ref/prompt"),name:r()}),Rn=u({uri:r().startsWith("file://"),name:r().optional(),_meta:w(r(),$()).optional()}),Je=D.shape,wn=u({experimental:Je.experimental,sampling:Je.sampling,elicitation:Je.elicitation,roots:Je.roots,extensions:Je.extensions}),ve=M.shape,Pt=u({experimental:ve.experimental,logging:ve.logging,completions:ve.completions,prompts:ve.prompts,resources:ve.resources,tools:ve.tools,extensions:ve.extensions}),kt=I({progressToken:n.optional(),[us]:r(),[ki]:C.optional(),[ds]:wn,[Ci]:a.optional()}),rt=u({...T.shape,...R.shape,description:r().optional(),inputSchema:I({$schema:r().optional(),type:d("object")}),outputSchema:I({$schema:r().optional()}).optional(),annotations:nt.optional(),_meta:w(r(),$()).optional()}),Tn=u({type:d("tool_result"),toolUseId:r(),content:S(Fe),structuredContent:$().optional(),isError:k().optional(),_meta:w(r(),$()).optional()}),Ct=P([ze,Pe,tt,nn,Tn]),at=u({role:i,content:P([Ct,S(Ct)]),_meta:w(r(),$()).optional()}),$t=r(),Et=I({[oo]:C.optional().catch(void 0)}),Ot=Et.optional();function se(K){return I({_meta:Ot,resultType:$t.default("complete"),...K})}const Pn=se({}),fo=se({nextCursor:o.optional()}),It=se({content:S(Fe),structuredContent:$().optional(),isError:k().optional()}),kn=se({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),tools:S(rt),nextCursor:o.optional()}),Cn=se({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),prompts:S(et),nextCursor:o.optional()}),$n=se({description:r().optional(),messages:S(Tt)}),En=se({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),resources:S(He),nextCursor:o.optional()}),On=se({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),resourceTemplates:S(yt),nextCursor:o.optional()}),In=se({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),contents:S(P([Se,Le]))}),qn=se({completion:u({values:S(r()).max(100),total:y().int().optional(),hasMore:k().optional()}).loose()}),So=se({ttlMs:y().int().min(0),cacheScope:N(["public","private"])}),Nn=se({ttlMs:y().int().min(0).catch(0),cacheScope:N(["public","private"]).catch("private"),supportedVersions:S(r()),capabilities:Pt,instructions:r().optional()}),Ve=u({messages:S(at),modelPreferences:cn.optional(),systemPrompt:r().optional(),includeContext:N(["none","thisServer","allServers"]).optional(),temperature:y().optional(),maxTokens:y().int(),stopSequences:S(r()).optional(),metadata:t.optional(),tools:S(rt).optional(),toolChoice:ln.optional()}),zn=u({method:d("sampling/createMessage"),params:Ve}),xn=u({method:d("roots/list"),params:u({_meta:w(r(),$()).optional()}).optional()}),Mn=u({...at.shape,model:r(),stopReason:r().optional()}),Ln=u({roots:S(Rn)}),An=u({action:N(["accept","decline","cancel"]),content:w(r(),P([r(),y(),k(),S(r())])).optional()}),jn=u({mode:d("url"),message:r(),url:r().url()}),Zn=P([ot,jn]),Un=u({method:d("elicitation/create"),params:Zn}),Dn=P([zn,xn,Un]),Hn=P([Mn,Ln,An]),Fn=w(r(),Dn),Jn=w(r(),Hn),ct=se({inputRequests:Fn.optional(),requestState:r().optional()}),lt={inputResponses:Jn.optional(),requestState:r().optional()},go=u({_meta:kt,...lt}),_o=I({progressToken:n.optional()});function ge(K,dt){return u({method:d(K),params:u({_meta:kt,...dt})})}function _e(K,dt){return u({method:d(K),params:u({_meta:_o.optional(),...dt}).optional()})}const Vn={name:r(),arguments:w(r(),$()).optional(),...lt},ke={cursor:o.optional()},bo=ge("tools/call",Vn),yo=ge("tools/list",ke),vo=ge("prompts/list",ke),Ro=ge("prompts/get",{name:r(),arguments:w(r(),r()).optional(),...lt}),wo=ge("resources/list",ke),To=ge("resources/templates/list",ke),Po=ge("resources/read",{uri:r(),...lt}),Bn={ref:P([it,st]),argument:u({name:r(),value:r()}),context:u({arguments:w(r(),r()).optional()}).optional()},ko=ge("completion/complete",Bn),Co=ge("server/discover",{}),qt=u({toolsListChanged:k().optional(),promptsListChanged:k().optional(),resourcesListChanged:k().optional(),resourceSubscriptions:S(r()).optional()}),Kn={notifications:qt},$o=ge("subscriptions/listen",Kn),Eo=Et.extend({"io.modelcontextprotocol/subscriptionId":s}),Wn=I({_meta:Eo,resultType:$t.default("complete")}),Be={"tools/call":_e("tools/call",Vn),"tools/list":_e("tools/list",ke),"prompts/get":_e("prompts/get",{name:r(),arguments:w(r(),r()).optional()}),"prompts/list":_e("prompts/list",ke),"resources/list":_e("resources/list",ke),"resources/templates/list":_e("resources/templates/list",ke),"resources/read":_e("resources/read",{uri:r()}),"completion/complete":_e("completion/complete",Bn),"server/discover":_e("server/discover",{}),"subscriptions/listen":_e("subscriptions/listen",Kn)};function de(K){return I({_meta:Ot,...K})}const Oo={"tools/call":de({content:S(Fe),structuredContent:$().optional(),isError:k().optional()}),"tools/list":de({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),tools:S(rt),nextCursor:o.optional()}),"prompts/get":de({description:r().optional(),messages:S(Tt)}),"prompts/list":de({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),prompts:S(et),nextCursor:o.optional()}),"resources/list":de({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),resources:S(He),nextCursor:o.optional()}),"resources/templates/list":de({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),resourceTemplates:S(yt),nextCursor:o.optional()}),"resources/read":de({ttlMs:y().int().min(0),cacheScope:N(["public","private"]),contents:S(P([Se,Le]))}),"completion/complete":de({completion:u({values:S(r()).max(100),total:y().int().optional(),hasMore:k().optional()}).loose()}),"server/discover":de({ttlMs:y().int().min(0).catch(0),cacheScope:N(["public","private"]).catch("private"),supportedVersions:S(r()),capabilities:Pt,instructions:r().optional()}),"subscriptions/listen":de({})},ut=I({"io.modelcontextprotocol/subscriptionId":s.optional()}),Nt=u({method:d("notifications/subscriptions/acknowledged"),params:u({_meta:ut.optional(),notifications:qt})}),zt=u({_meta:ut.optional(),requestId:s,reason:r().optional()}),xt=u({method:d("notifications/cancelled"),params:zt}),$s={"notifications/cancelled":xt,"notifications/progress":J,"notifications/message":Te,"notifications/resources/updated":vt,"notifications/resources/list_changed":Ae,"notifications/tools/list_changed":rn,"notifications/prompts/list_changed":wt,"notifications/subscriptions/acknowledged":Nt},le=K=>u({jsonrpc:d("2.0"),id:P([r(),y().int()]),result:K}).strict();return{JSONValueSchema:e,JSONObjectSchema:t,ProgressTokenSchema:n,CursorSchema:o,RequestIdSchema:s,RoleSchema:i,LoggingLevelSchema:a,TaskMetadataSchema:c,RelatedTaskMetadataSchema:p,RequestMetaSchema:m,BaseRequestParamsSchema:h,TaskAugmentedRequestParamsSchema:f,NotificationsParamsSchema:g,NotificationSchema:b,IconSchema:v,IconsSchema:R,BaseMetadataSchema:T,ImplementationSchema:C,ClientTasksCapabilitySchema:we,ServerTasksCapabilitySchema:qe,ClientCapabilitiesSchema:D,ServerCapabilitiesSchema:M,ProgressSchema:X,ProgressNotificationParamsSchema:A,ProgressNotificationSchema:J,LoggingMessageNotificationParamsSchema:fe,LoggingMessageNotificationSchema:Te,ResourceContentsSchema:ee,TextResourceContentsSchema:Se,BlobResourceContentsSchema:Le,AnnotationsSchema:Ne,ResourceSchema:He,ResourceTemplateSchema:yt,ResourceListChangedNotificationSchema:Ae,ResourceUpdatedNotificationParamsSchema:je,ResourceUpdatedNotificationSchema:vt,PromptArgumentSchema:Rt,PromptSchema:et,PromptListChangedNotificationSchema:wt,TextContentSchema:ze,ImageContentSchema:Pe,AudioContentSchema:tt,ToolUseContentSchema:nn,EmbeddedResourceSchema:on,ResourceLinkSchema:sn,ContentBlockSchema:Fe,PromptMessageSchema:Tt,ToolAnnotationsSchema:nt,ToolListChangedNotificationSchema:rn,ModelHintSchema:an,ModelPreferencesSchema:cn,ToolChoiceSchema:ln,BooleanSchemaSchema:un,StringSchemaSchema:dn,NumberSchemaSchema:pn,UntitledSingleSelectEnumSchemaSchema:mn,TitledSingleSelectEnumSchemaSchema:hn,LegacyTitledEnumSchemaSchema:fn,SingleSelectEnumSchemaSchema:Sn,UntitledMultiSelectEnumSchemaSchema:gn,TitledMultiSelectEnumSchemaSchema:_n,MultiSelectEnumSchemaSchema:bn,EnumSchemaSchema:yn,PrimitiveSchemaDefinitionSchema:vn,ElicitRequestFormParamsSchema:ot,ResourceTemplateReferenceSchema:st,PromptReferenceSchema:it,RootSchema:Rn,ClientCapabilities2026Schema:wn,ServerCapabilities2026Schema:Pt,RequestMetaEnvelopeSchema:kt,ToolSchema:rt,ToolResultContentSchema:Tn,SamplingMessageContentBlockSchema:Ct,SamplingMessageSchema:at,ResultTypeSchema:$t,ResultMetaSchema:Et,ResultSchema:Pn,PaginatedResultSchema:fo,CallToolResultSchema:It,ListToolsResultSchema:kn,ListPromptsResultSchema:Cn,GetPromptResultSchema:$n,ListResourcesResultSchema:En,ListResourceTemplatesResultSchema:On,ReadResourceResultSchema:In,CompleteResultSchema:qn,CacheableResultSchema:So,DiscoverResultSchema:Nn,CreateMessageRequestParamsSchema:Ve,CreateMessageRequestSchema:zn,ListRootsRequestSchema:xn,CreateMessageResultSchema:Mn,ListRootsResultSchema:Ln,ElicitResultSchema:An,ElicitRequestURLParamsSchema:jn,ElicitRequestParamsSchema:Zn,ElicitRequestSchema:Un,InputRequestSchema:Dn,InputResponseSchema:Hn,InputRequestsSchema:Fn,InputResponsesSchema:Jn,InputRequiredResultSchema:ct,InputResponseRequestParamsSchema:go,CallToolRequestSchema:bo,ListToolsRequestSchema:yo,ListPromptsRequestSchema:vo,GetPromptRequestSchema:Ro,ListResourcesRequestSchema:wo,ListResourceTemplatesRequestSchema:To,ReadResourceRequestSchema:Po,CompleteRequestSchema:ko,DiscoverRequestSchema:Co,SubscriptionFilterSchema:qt,SubscriptionsListenRequestSchema:$o,SubscriptionsListenResultMetaSchema:Eo,SubscriptionsListenResultSchema:Wn,dispatchRequestSchemas:Be,dispatchResultSchemas:Oo,NotificationMetaSchema:ut,SubscriptionsAcknowledgedNotificationSchema:Nt,CancelledNotificationParamsSchema:zt,CancelledNotificationSchema:xt,notificationSchemas2026:$s,JSONRPCResultResponseSchema:le(Pn),CallToolResultResponseSchema:le(P([It,ct])),ListToolsResultResponseSchema:le(kn),ListPromptsResultResponseSchema:le(Cn),GetPromptResultResponseSchema:le(P([$n,ct])),ListResourcesResultResponseSchema:le(En),ListResourceTemplatesResultResponseSchema:le(On),ReadResourceResultResponseSchema:le(P([In,ct])),CompleteResultResponseSchema:le(qn),DiscoverResultResponseSchema:le(Nn),SubscriptionsListenResultResponseSchema:le(Wn)}}let Dg;function Ge(){return Dg??(Dg=Ug())}const Hg=["tools/list","prompts/list","resources/list","resources/templates/list","resources/read","server/discover"];function Fg(e){return Hg.includes(e)}const nr=Symbol("modelcontextprotocol.resultCacheHintFallback");function Jg(e){return e[nr]}function Mu(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0}function Lu(e){return e==="public"||e==="private"}let z=(function(e){return e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.ResourceNotFound=-32002]="ResourceNotFound",e[e.MissingRequiredClientCapability=-32021]="MissingRequiredClientCapability",e[e.UnsupportedProtocolVersion=-32022]="UnsupportedProtocolVersion",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired",e})({});var ht,ae=(ht=class extends Error{static[Symbol.hasInstance](t){return ts(this,t)}static isInstance(t){if(typeof this!="function")throw new TypeError("isInstance must be called on the class (e.g. `SdkError.isInstance(value)`); for callbacks use `v => SdkError.isInstance(v)`");return ts(this,t)}constructor(t,n,o){super(n),this.code=t,this.data=o,this.name="ProtocolError",Eu(this,new.target)}static fromError(t,n,o){if(t===z.UrlElicitationRequired&&o){const s=o;if(s.elicitations)return new Bg(s.elicitations,n)}if(t===z.UnsupportedProtocolVersion&&o){const s=o;if(Array.isArray(s.supported)&&typeof s.requested=="string")return new Kg({supported:s.supported,requested:s.requested},n)}if(t===z.InvalidParams||t===z.ResourceNotFound){const s=o;if(typeof(s==null?void 0:s.uri)=="string"&&(t===z.ResourceNotFound||Object.keys(s).length===1))return new Vg(s.uri,n)}if(t===z.MissingRequiredClientCapability&&o){const s=o;if(s.requiredCapabilities!==null&&typeof s.requiredCapabilities=="object"&&!Array.isArray(s.requiredCapabilities))return new Wg({requiredCapabilities:s.requiredCapabilities},n)}return new ht(t,n,o)}},Object.defineProperty(ht,"mcpBrand",{value:"mcp.ProtocolError"}),ht),jt,Vg=(jt=class extends ae{constructor(t,n=`Resource not found: ${t}`){super(z.InvalidParams,n,{uri:t})}get uri(){return this.data.uri}},Object.defineProperty(jt,"mcpBrand",{value:"mcp.ResourceNotFoundError"}),jt),Zt,Bg=(Zt=class extends ae{constructor(t,n=`URL elicitation${t.length>1?"s":""} required`){super(z.UrlElicitationRequired,n,{elicitations:t})}get elicitations(){var t;return((t=this.data)==null?void 0:t.elicitations)??[]}},Object.defineProperty(Zt,"mcpBrand",{value:"mcp.UrlElicitationRequiredError"}),Zt),Ut,Kg=(Ut=class extends ae{constructor(t,n=`Unsupported protocol version: ${t.requested}`){super(z.UnsupportedProtocolVersion,n,t)}get supported(){return this.data.supported}get requested(){return this.data.requested}},Object.defineProperty(Ut,"mcpBrand",{value:"mcp.UnsupportedProtocolVersionError"}),Ut),Dt,Wg=(Dt=class extends ae{constructor(t,n=`Missing required client capabilities: ${Object.keys(t.requiredCapabilities).join(", ")}`){super(z.MissingRequiredClientCapability,n,t)}get requiredCapabilities(){return this.data.requiredCapabilities}},Object.defineProperty(Dt,"mcpBrand",{value:"mcp.MissingRequiredClientCapabilityError"}),Dt);const Gg=0,Yg="private",Qg=["tools/call","prompts/get","resources/read"];function Xg(e,t){const n=t.resultType;if(n===void 0)return{...t,resultType:"complete"};if(n==="complete"||Qg.includes(e))return t;throw new ae(z.InternalError,`Handler for ${e} returned resultType '${String(n)}', but results of ${e} only support 'complete' on protocol revision 2026-07-28`)}function e_(e,t){const n=Jg(t);if(t.resultType!=="complete"||!Fg(e))return n===void 0?t:i_(t);const o=t,s=Mu(o.ttlMs)?o.ttlMs:o_(n),i=Lu(o.cacheScope)?o.cacheScope:s_(n),a={...o,ttlMs:s,cacheScope:i};return delete a[nr],a}function t_(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function n_(e,t){if(t===void 0)return e;const n=e._meta;return n===void 0?{...e,_meta:{[oo]:t}}:!t_(n)||n[oo]!==void 0?e:{...e,_meta:{...n,[oo]:t}}}function o_(e){return e!==void 0&&Mu(e.ttlMs)?e.ttlMs:Gg}function s_(e){return e!==void 0&&Lu(e.cacheScope)?e.cacheScope:Yg}function i_(e){const t={...e};return delete t[nr],t}const r_=["elicitation/create","sampling/createMessage","roots/list"];let Ao;function Au(){if(Ao)return Ao;const e=Ge();return Ao={request:{"elicitation/create":u({method:d("elicitation/create"),params:e.ElicitRequestParamsSchema}),"sampling/createMessage":u({method:d("sampling/createMessage"),params:e.CreateMessageRequestParamsSchema}),"roots/list":u({method:d("roots/list"),params:I({}).optional()})},response:{"elicitation/create":e.ElicitResultSchema,"sampling/createMessage":e.CreateMessageResultSchema,"roots/list":e.ListRootsResultSchema}},Ao}function ju(e){return r_.includes(e)}function Ms(e){return ju(e)?Au().request[e]:void 0}function a_(e){return ju(e)?Au().response[e]:void 0}const Zu={"tools/call":null,"tools/list":null,"prompts/get":null,"prompts/list":null,"resources/list":null,"resources/templates/list":null,"resources/read":null,"completion/complete":null,"server/discover":null,"subscriptions/listen":null},c_={"notifications/cancelled":null,"notifications/progress":null,"notifications/message":null,"notifications/resources/updated":null,"notifications/resources/list_changed":null,"notifications/tools/list_changed":null,"notifications/prompts/list_changed":null,"notifications/subscriptions/acknowledged":null};function Uu(e){return Object.prototype.hasOwnProperty.call(Zu,e)}function Du(e){return Object.prototype.hasOwnProperty.call(c_,e)}function l_(e){return Object.prototype.hasOwnProperty.call(Zu,e)}function u_(e){return Uu(e)?Ge().dispatchRequestSchemas[e]:void 0}function d_(e){return l_(e)?Ge().dispatchResultSchemas[e]:void 0}function p_(e){return Du(e)?Ge().notificationSchemas2026[e]:void 0}function so(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Yn(e,t){if(e===void 0)return{ok:!1,reason:"not-in-era"};const n=e.safeParse(t);return n.success?{ok:!0,value:n.data}:{ok:!1,reason:"invalid",message:String(n.error)}}const m_={ok:!1,reason:"not-in-era"},h_=[us,ds];function f_(e,t){let n=t,o=!1;const s=()=>(o||(n={...n},o=!0),n),i=t.tools;e==="tools/list"&&Array.isArray(i)&&i.some(l=>so(l)&&"execution"in l)&&(s().tools=i.map(l=>{if(!so(l)||!("execution"in l))return l;const c={...l};return delete c.execution,c}));const a=t.capabilities;if(so(a)&&"tasks"in a){const l={...a};delete l.tasks,s().capabilities=l}return n}const or={era:"2026-07-28",hasRequestMethod:Uu,hasNotificationMethod:Du,hasInputRequestMethod:e=>Ms(e)!==void 0,validateRequest:(e,t)=>Yn(u_(e),t),validateResult:(e,t)=>Yn(d_(e),t),validateNotification:(e,t)=>Yn(p_(e),t),validateInputRequest:(e,t)=>Yn(Ms(e),t),validateInputResponse:(e,t)=>Yn(a_(e),t),samplingResultVariant:()=>m_,outboundEnvelope(e){return{[us]:e.protocolVersion,[ki]:e.clientInfo,[ds]:e.clientCapabilities,...e.logLevel!==void 0&&{[Ci]:e.logLevel}}},validateEnvelopeMeta(e){const t=[];for(const o of h_)o in e||t.push({key:o,problem:"missing"});const n=Ge().RequestMetaEnvelopeSchema.safeParse(e);if(!n.success)for(const o of n.error.issues){const s=o.path.map(String),i=s.length>0?s.join("."):"_meta";s.length===1&&t.some(a=>a.key===i&&a.problem==="missing")||t.push({key:i,problem:o.message})}return t},projectCallToolResult:e=>Ou(e),inputRequestSchema:Ms,decodeResult(e,t){if(!so(t))return{kind:"invalid",error:new te(re.InvalidResult,`Invalid result for ${e}: not an object`,{method:e})};const n=t.resultType;if(n===void 0)return{kind:"invalid",error:new te(re.InvalidResult,`Invalid result for ${e}: missing required resultType — servers implementing protocol revision 2026-07-28 MUST include it (the absent-means-complete bridge applies only to earlier-revision servers)`,{method:e,violation:"missing-resultType"})};if(typeof n!="string")return{kind:"invalid",error:new te(re.InvalidResult,`Invalid result for ${e}: non-string resultType`,{method:e,resultType:n})};if(n==="input_required"){const a=t.inputRequests,l=so(a)?a:{},c=t.requestState,p=t._meta===void 0?void 0:Ge().ResultMetaSchema.safeParse(t._meta),m=p!=null&&p.success?p.data:void 0;return Object.keys(l).length===0&&typeof c!="string"?{kind:"invalid",error:new te(re.InvalidResult,`Invalid result for ${e}: input_required carries neither inputRequests nor requestState (every input_required result must include at least one of the two)`,{method:e,violation:"input-required-missing-both"})}:{kind:"input_required",inputRequests:l,...typeof c=="string"&&{requestState:c},...m!==void 0&&{_meta:m}}}if(n!=="complete")return{kind:"invalid",error:new te(re.UnsupportedResultType,`Unsupported result type '${n}' for ${e}`,{resultType:n,method:e})};const o=S_(),s=Object.hasOwn(o,e)?o[e]:void 0;if(s!==void 0){const a=s.safeParse(t);if(!a.success)return{kind:"invalid",error:new te(re.InvalidResult,`Invalid result for ${e}: ${a.error}`,{method:e})}}const i={...t};return delete i.resultType,{kind:"complete",result:i}},encodeResult(e,t,n){return n_(e_(e,Xg(e,f_(e,t))),n)},encodeErrorCode:e=>e===-32002?-32602:e,checkInboundEnvelope(e){if(e.envelope===void 0)return"Request is missing the required _meta envelope for protocol revision 2026-07-28 (io.modelcontextprotocol/protocolVersion, io.modelcontextprotocol/clientCapabilities)";const t=Ge().RequestMetaEnvelopeSchema.safeParse(e.envelope);if(!t.success)return`Invalid _meta envelope for protocol revision 2026-07-28: ${t.error.issues.map(n=>n.message).join("; ")}`}};let jo;function S_(){if(jo)return jo;const e=Ge();return jo={"tools/call":e.CallToolResultSchema,"tools/list":e.ListToolsResultSchema,"prompts/get":e.GetPromptResultSchema,"prompts/list":e.ListPromptsResultSchema,"resources/list":e.ListResourcesResultSchema,"resources/templates/list":e.ListResourceTemplatesResultSchema,"resources/read":e.ReadResourceResultSchema,"completion/complete":e.CompleteResultSchema,"server/discover":e.DiscoverResultSchema},jo}const Hu="2026-07-28";function ns(e){return e!==void 0&&Cg(e)?or:tr}function Yr(e){return e.revision!==void 0?ns(e.revision).era:e.era==="modern"?or.era:tr.era}function Ls(e){return Fu.some(t=>t.hasRequestMethod(e))}function As(e){return Fu.some(t=>t.hasNotificationMethod(e))}function Qr(e){return e==="tasks/get"||e==="tasks/cancel"}const Fu=[tr,or];var g_=pd({AnnotationsSchema:()=>bt,AudioContentSchema:()=>bs,BaseMetadataSchema:()=>gt,BaseRequestParamsSchema:()=>ce,BlobResourceContentsSchema:()=>Ui,BooleanSchemaSchema:()=>Bi,CallToolRequestParamsSchema:()=>Dl,CallToolRequestSchema:()=>Hl,CallToolResultSchema:()=>vs,CancelTaskRequestSchema:()=>ug,CancelTaskResultSchema:()=>dg,CancelledNotificationParamsSchema:()=>Bc,CancelledNotificationSchema:()=>zi,ClientCapabilitiesSchema:()=>Yc,ClientNotificationSchema:()=>mg,ClientRequestSchema:()=>pg,ClientResultSchema:()=>hg,ClientTasksCapabilitySchema:()=>Wc,CompatibilityCallToolResultSchema:()=>XS,CompleteRequestParamsSchema:()=>Su,CompleteRequestSchema:()=>gu,CompleteResultSchema:()=>_u,ContentBlockSchema:()=>en,CreateMessageRequestParamsSchema:()=>tu,CreateMessageRequestSchema:()=>nu,CreateMessageResultSchema:()=>ou,CreateMessageResultWithToolsSchema:()=>su,CreateTaskResultSchema:()=>ng,CursorSchema:()=>Ei,DiscoverRequestSchema:()=>nl,DiscoverResultSchema:()=>ol,ElicitRequestFormParamsSchema:()=>ws,ElicitRequestParamsSchema:()=>lu,ElicitRequestSchema:()=>uu,ElicitRequestURLParamsSchema:()=>cu,ElicitResultSchema:()=>mu,ElicitationCompleteNotificationParamsSchema:()=>du,ElicitationCompleteNotificationSchema:()=>pu,EmbeddedResourceSchema:()=>Fi,EmptyResultSchema:()=>fs,EnumSchemaSchema:()=>au,GetPromptRequestParamsSchema:()=>ql,GetPromptRequestSchema:()=>Nl,GetPromptResultSchema:()=>Ml,GetTaskPayloadRequestSchema:()=>rg,GetTaskPayloadResultSchema:()=>ag,GetTaskRequestSchema:()=>sg,GetTaskResultSchema:()=>ig,IconSchema:()=>Kc,IconsSchema:()=>Wt,ImageContentSchema:()=>_s,ImplementationSchema:()=>Gt,InitializeRequestParamsSchema:()=>Qc,InitializeRequestSchema:()=>Xc,InitializeResultSchema:()=>el,InitializedNotificationSchema:()=>tl,JSONArraySchema:()=>WS,JSONObjectSchema:()=>G,JSONRPCErrorResponseSchema:()=>hs,JSONRPCMessageSchema:()=>Vc,JSONRPCNotificationSchema:()=>Ni,JSONRPCRequestSchema:()=>qi,JSONRPCResponseSchema:()=>GS,JSONRPCResultResponseSchema:()=>ms,JSONValueSchema:()=>Bt,LegacyTitledEnumSchemaSchema:()=>Gi,ListChangedOptionsBaseSchema:()=>eg,ListPromptsRequestSchema:()=>Ol,ListPromptsResultSchema:()=>Il,ListResourceTemplatesRequestSchema:()=>ul,ListResourceTemplatesResultSchema:()=>dl,ListResourcesRequestSchema:()=>cl,ListResourcesResultSchema:()=>ll,ListRootsRequestSchema:()=>yu,ListRootsResultSchema:()=>vu,ListTasksRequestSchema:()=>cg,ListTasksResultSchema:()=>lg,ListToolsRequestSchema:()=>Zl,ListToolsResultSchema:()=>Ul,LoggingLevelSchema:()=>Vi,LoggingMessageNotificationParamsSchema:()=>Bl,LoggingMessageNotificationSchema:()=>Kl,ModelHintSchema:()=>Wl,ModelPreferencesSchema:()=>Gl,MultiSelectEnumSchemaSchema:()=>ru,NotificationSchema:()=>he,NotificationsParamsSchema:()=>me,NumberSchemaSchema:()=>es,PaginatedRequestParamsSchema:()=>rl,PaginatedRequestSchema:()=>Yt,PaginatedResultSchema:()=>Qt,PingRequestSchema:()=>Mi,PrimitiveSchemaDefinitionSchema:()=>Xi,ProgressNotificationParamsSchema:()=>il,ProgressNotificationSchema:()=>Li,ProgressSchema:()=>sl,ProgressTokenSchema:()=>$i,PromptArgumentSchema:()=>$l,PromptListChangedNotificationSchema:()=>Ll,PromptMessageSchema:()=>xl,PromptReferenceSchema:()=>fu,PromptSchema:()=>El,ReadResourceRequestParamsSchema:()=>pl,ReadResourceRequestSchema:()=>ml,ReadResourceResultSchema:()=>hl,RelatedTaskMetadataSchema:()=>Jc,RequestIdSchema:()=>_t,RequestMetaSchema:()=>Oi,RequestSchema:()=>Y,ResourceContentsSchema:()=>Ai,ResourceLinkSchema:()=>Ji,ResourceListChangedNotificationSchema:()=>fl,ResourceRequestParamsSchema:()=>Ss,ResourceSchema:()=>Di,ResourceTemplateReferenceSchema:()=>hu,ResourceTemplateSchema:()=>al,ResourceUpdatedNotificationParamsSchema:()=>kl,ResourceUpdatedNotificationSchema:()=>Cl,ResultMetaObjectSchema:()=>Ii,ResultSchema:()=>Q,RoleSchema:()=>Xt,RootSchema:()=>bu,RootsListChangedNotificationSchema:()=>Ru,SamplingContentSchema:()=>Xl,SamplingMessageContentBlockSchema:()=>uo,SamplingMessageSchema:()=>eu,ServerCapabilitiesSchema:()=>xi,ServerNotificationSchema:()=>Sg,ServerRequestSchema:()=>fg,ServerResultSchema:()=>gg,ServerTasksCapabilitySchema:()=>Gc,SetLevelRequestParamsSchema:()=>Jl,SetLevelRequestSchema:()=>Vl,SingleSelectEnumSchemaSchema:()=>iu,StringSchemaSchema:()=>Rs,SubscribeRequestParamsSchema:()=>Sl,SubscribeRequestSchema:()=>gl,SubscriptionFilterSchema:()=>Hi,SubscriptionsAcknowledgedNotificationParamsSchema:()=>Rl,SubscriptionsAcknowledgedNotificationSchema:()=>wl,SubscriptionsListenRequestParamsSchema:()=>yl,SubscriptionsListenRequestSchema:()=>vl,SubscriptionsListenResultMetaSchema:()=>Tl,SubscriptionsListenResultSchema:()=>Pl,TaskAugmentedRequestParamsSchema:()=>ho,TaskCreationParamsSchema:()=>tg,TaskMetadataSchema:()=>Fc,TaskSchema:()=>tn,TaskStatusNotificationParamsSchema:()=>Tu,TaskStatusNotificationSchema:()=>og,TaskStatusSchema:()=>wu,TextContentSchema:()=>gs,TextResourceContentsSchema:()=>ji,TitledMultiSelectEnumSchemaSchema:()=>Qi,TitledSingleSelectEnumSchemaSchema:()=>Wi,ToolAnnotationsSchema:()=>Al,ToolChoiceSchema:()=>Yl,ToolExecutionSchema:()=>jl,ToolListChangedNotificationSchema:()=>Fl,ToolResultContentSchema:()=>Ql,ToolSchema:()=>ys,ToolUseContentSchema:()=>zl,UnsubscribeRequestParamsSchema:()=>_l,UnsubscribeRequestSchema:()=>bl,UntitledMultiSelectEnumSchemaSchema:()=>Yi,UntitledSingleSelectEnumSchemaSchema:()=>Ki});const __=e=>qi.safeParse(e).success,b_=e=>Ni.safeParse(e).success,Xr=e=>ms.safeParse(e).success,y_=e=>hs.safeParse(e).success,js=-32020;z.InvalidRequest,z.UnsupportedProtocolVersion,z.InvalidParams,z.MethodNotFound,z.InvalidParams,z.MissingRequiredClientCapability;z.ParseError+"",z.InvalidRequest+"",z.MethodNotFound+"",z.UnsupportedProtocolVersion+"",z.MissingRequiredClientCapability+"";function Ju(e,t){return Oc(e,t)}function Qn(e){return new Set(e.flatMap(t=>Object.keys(t.shape)))}function ni(e){var n;if(e==null)return!1;const t=typeof e;return t!=="object"&&t!=="function"||!("~standard"in e)?!1:typeof((n=e["~standard"])==null?void 0:n.validate)=="function"}let ea=!1;const oi="draft-2020-12";function v_(e,t="input"){const n=e["~standard"];let o;if(n.jsonSchema)o=n.jsonSchema[t]({target:oi});else if(n.vendor==="zod"){if(!("_zod"in e))throw new Error("Schema appears to be from zod 3, which the SDK cannot convert to JSON Schema. Upgrade to zod >=4.2.0, or wrap your JSON Schema with fromJsonSchema().");ea||(ea=!0,console.warn("[mcp-sdk] Your zod version does not implement `~standard.jsonSchema` (added in zod 4.2.0). Falling back to z.toJSONSchema(). Upgrade to zod >=4.2.0 to silence this warning.")),o=Ec(e,{target:oi,io:t})}else throw new Error(`Schema library "${n.vendor}" does not implement StandardJSONSchemaV1 (\`~standard.jsonSchema\`). Upgrade to a version that does, or wrap your JSON Schema with fromJsonSchema().`);if(t==="output")return o.type!==void 0?o:Vu(o)?{type:"object",...o}:o;if(o.type!==void 0&&o.type!=="object")throw new Error(`MCP tool and prompt schemas must describe objects (got type: ${JSON.stringify(o.type)}). Wrap your schema in z.object({...}) or equivalent.`);return{type:"object",...o}}function Vu(e){if("properties"in e||"patternProperties"in e||"additionalProperties"in e||"required"in e)return!0;for(const t of["oneOf","anyOf","allOf"]){const n=e[t];if(Array.isArray(n)&&n.length>0)return n.every(o=>o!==null&&typeof o=="object"&&(o.type==="object"||Vu(o)))}return!1}function R_(e){var t;return(t=e.path)!=null&&t.length?`${e.path.map(n=>String(typeof n=="object"?n.key:n)).join(".")}: ${e.message}`:e.message}async function Zs(e,t){const n=await e["~standard"].validate(t);return n.issues&&n.issues.length>0?{success:!1,error:n.issues.map(o=>R_(o)).join(", ")}:{success:!0,data:n.value}}function w_(e){const t=Ec(e,{target:oi,io:"input"});return typeof t.pattern=="string"?t.pattern:void 0}const T_=/\\\.\\d\{(\d+)\}/;function P_(e){const t=T_.exec(e),n=[void 0,-1,0];return t&&n.push(Number(t[1])),[!1,!0].flatMap(o=>[!1,!0].flatMap(s=>n.map(i=>ls({local:o,offset:s,precision:i}))))}function k_(e,t){let n;switch(e){case"email":n=[Yf()];break;case"uri":n=[Mc()];break;case"date":n=[HS()];break;case"date-time":n=P_(t);break}return new Set(n.map(o=>w_(o)).filter(o=>o!==void 0))}function C_(e,t,n){return n!=="zod"?!0:k_(e,t).has(t)}function po(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function $_(e){try{return v_(e,"input")}catch(t){const n=t instanceof Error?t.message:String(t);throw new ae(z.InvalidParams,`Elicitation requestedSchema must describe an object with flat primitive properties: ${n}`)}}const E_=new Set(["$comment","deprecated","description","examples","readOnly","title","writeOnly"]);function sr(e){return E_.has(e)||e.startsWith("x-")}const O_=new Set(["$schema",...Object.keys(ws.shape.requestedSchema.shape)]),ta={string:Qn([Rs,Ki,Wi,Gi]),number:Qn([es]),integer:Qn([es]),boolean:Qn([Bi]),array:Qn([Yi,Qi])},I_=new Set(Rs.shape.format.unwrap().options);function q_(e,t,n,o){if(!po(e))return e;const s=typeof e.type=="string"&&Object.hasOwn(ta,e.type)?ta[e.type]:void 0;if(s===void 0)return e;const i={};for(const[a,l]of Object.entries(e))s.has(a)||sr(a)?i[a]=l:a==="pattern"&&e.type==="string"&&typeof e.format=="string"?I_.has(e.format)?(typeof l!="string"||!C_(e.format,l,n))&&o.push(`${t}.${a}`):i[a]=l:o.push(`${t}.${a}`);return i}function N_(e,t){const n={},o=[];for(const[s,i]of Object.entries(e))s==="properties"&&po(i)?n[s]=Object.fromEntries(Object.entries(i).map(([a,l])=>[a,q_(l,`properties.${a}`,t,o)])):O_.has(s)?n[s]=i:sr(s)||o.push(s);if(o.length>0)throw new ae(z.InvalidParams,`Elicitation requestedSchema contains unsupported JSON Schema constraint(s) after Standard Schema conversion: ${o.join(", ")}`);return n}function z_(e,t){if(!po(e.properties))return t;const n=Object.entries(e.properties).filter(([,o])=>!Ju(Xi,o).success).map(([o])=>`properties.${o}`);return n.length>0?n.join(", "):t}function si(e,t,n=""){return Array.isArray(e)&&Array.isArray(t)?e.flatMap((o,s)=>si(o,t[s],`${n}[${s}]`)):!po(e)||!po(t)?[]:Object.entries(e).flatMap(([o,s])=>{const i=n?`${n}.${o}`:o;return Object.prototype.hasOwnProperty.call(t,o)?si(s,t[o],i):sr(o)?[]:[i]})}function x_(e){if(!ni(e.requestedSchema))return{...e,mode:"form",requestedSchema:e.requestedSchema};const t=e.requestedSchema["~standard"].vendor,n=N_($_(e.requestedSchema),t),o=Ju(ws.shape.requestedSchema,n);if(!o.success)throw new ae(z.InvalidParams,`Elicitation requestedSchema only supports flat primitive properties (string, number, integer, boolean, and string enums): ${z_(n,o.error.message)}`);const s=si(n,o.data);if(s.length>0)throw new ae(z.InvalidParams,`Elicitation requestedSchema contains unsupported JSON Schema constraint(s) after Standard Schema conversion: ${s.join(", ")}`);const i=(o.data.required??[]).filter(a=>!Object.prototype.hasOwnProperty.call(o.data.properties,a));if(i.length>0)throw new ae(z.InvalidParams,`Elicitation requestedSchema lists required properties that are not defined in properties: ${i.join(", ")}`);return{...e,mode:"form",requestedSchema:o.data}}function M_(e){const t=e.inputRequests!==void 0&&Object.keys(e.inputRequests).length>0,n=typeof e.requestState=="string";if(!t&&!n)throw new TypeError("inputRequired() requires at least one of inputRequests (with at least one entry) or requestState (spec: every InputRequiredResult MUST include at least one of the two)");return{resultType:"input_required",...e.inputRequests!==void 0&&{inputRequests:e.inputRequests},...e.requestState!==void 0&&{requestState:e.requestState}}}Object.assign(M_,{elicit(e){try{return{method:"elicitation/create",params:x_(e)}}catch(t){throw t instanceof ae?new TypeError(t.message,{cause:t}):t}},elicitUrl(e){return{method:"elicitation/create",params:{...e,mode:"url"}}},createMessage(e){return{method:"sampling/createMessage",params:e}},listRoots(){return{method:"roots/list"}}});const L_=["AnnotationsSchema","AudioContentSchema","BaseMetadataSchema","BlobResourceContentsSchema","BooleanSchemaSchema","CallToolRequestSchema","CallToolRequestParamsSchema","CallToolResultSchema","CancelledNotificationSchema","CancelledNotificationParamsSchema","CancelTaskRequestSchema","CancelTaskResultSchema","ClientCapabilitiesSchema","ClientNotificationSchema","ClientRequestSchema","ClientResultSchema","CompatibilityCallToolResultSchema","CompleteRequestSchema","CompleteRequestParamsSchema","CompleteResultSchema","ContentBlockSchema","CreateMessageRequestSchema","CreateMessageRequestParamsSchema","CreateMessageResultSchema","CreateMessageResultWithToolsSchema","CreateTaskResultSchema","CursorSchema","DiscoverRequestSchema","DiscoverResultSchema","ElicitationCompleteNotificationSchema","ElicitationCompleteNotificationParamsSchema","ElicitRequestSchema","ElicitRequestFormParamsSchema","ElicitRequestParamsSchema","ElicitRequestURLParamsSchema","ElicitResultSchema","EmbeddedResourceSchema","EmptyResultSchema","EnumSchemaSchema","GetPromptRequestSchema","GetPromptRequestParamsSchema","GetPromptResultSchema","GetTaskPayloadRequestSchema","GetTaskPayloadResultSchema","GetTaskRequestSchema","GetTaskResultSchema","IconSchema","IconsSchema","ImageContentSchema","ImplementationSchema","InitializedNotificationSchema","InitializeRequestSchema","InitializeRequestParamsSchema","InitializeResultSchema","JSONArraySchema","JSONObjectSchema","JSONRPCErrorResponseSchema","JSONRPCMessageSchema","JSONRPCNotificationSchema","JSONRPCRequestSchema","JSONRPCResponseSchema","JSONRPCResultResponseSchema","JSONValueSchema","LegacyTitledEnumSchemaSchema","ListPromptsRequestSchema","ListPromptsResultSchema","ListResourcesRequestSchema","ListResourcesResultSchema","ListResourceTemplatesRequestSchema","ListResourceTemplatesResultSchema","ListRootsRequestSchema","ListRootsResultSchema","ListTasksRequestSchema","ListTasksResultSchema","ListToolsRequestSchema","ListToolsResultSchema","LoggingLevelSchema","LoggingMessageNotificationSchema","LoggingMessageNotificationParamsSchema","ModelHintSchema","ModelPreferencesSchema","MultiSelectEnumSchemaSchema","NotificationSchema","NumberSchemaSchema","PaginatedRequestSchema","PaginatedRequestParamsSchema","PaginatedResultSchema","PingRequestSchema","PrimitiveSchemaDefinitionSchema","ProgressSchema","ProgressNotificationSchema","ProgressNotificationParamsSchema","ProgressTokenSchema","PromptSchema","PromptArgumentSchema","PromptListChangedNotificationSchema","PromptMessageSchema","PromptReferenceSchema","ReadResourceRequestSchema","ReadResourceRequestParamsSchema","ReadResourceResultSchema","RelatedTaskMetadataSchema","RequestSchema","RequestIdSchema","RequestMetaSchema","ResourceSchema","ResourceContentsSchema","ResourceLinkSchema","ResourceListChangedNotificationSchema","ResourceRequestParamsSchema","ResourceTemplateSchema","ResourceTemplateReferenceSchema","ResourceUpdatedNotificationSchema","ResourceUpdatedNotificationParamsSchema","ResultMetaObjectSchema","ResultSchema","RoleSchema","RootSchema","RootsListChangedNotificationSchema","SamplingContentSchema","SamplingMessageSchema","SamplingMessageContentBlockSchema","ServerCapabilitiesSchema","ServerNotificationSchema","ServerRequestSchema","ServerResultSchema","SetLevelRequestSchema","SetLevelRequestParamsSchema","SingleSelectEnumSchemaSchema","StringSchemaSchema","SubscribeRequestSchema","SubscribeRequestParamsSchema","SubscriptionFilterSchema","SubscriptionsAcknowledgedNotificationSchema","SubscriptionsAcknowledgedNotificationParamsSchema","SubscriptionsListenRequestSchema","SubscriptionsListenRequestParamsSchema","SubscriptionsListenResultSchema","SubscriptionsListenResultMetaSchema","TaskAugmentedRequestParamsSchema","TaskCreationParamsSchema","TaskMetadataSchema","TaskSchema","TaskStatusSchema","TaskStatusNotificationSchema","TaskStatusNotificationParamsSchema","TextContentSchema","TextResourceContentsSchema","TitledMultiSelectEnumSchemaSchema","TitledSingleSelectEnumSchemaSchema","ToolSchema","ToolAnnotationsSchema","ToolChoiceSchema","ToolExecutionSchema","ToolListChangedNotificationSchema","ToolResultContentSchema","ToolUseContentSchema","UnsubscribeRequestSchema","UnsubscribeRequestParamsSchema","UntitledMultiSelectEnumSchemaSchema","UntitledSingleSelectEnumSchemaSchema"],A_={IdJagTokenExchangeResponseSchema:vg,OAuthClientInformationFullSchema:wg,OAuthClientInformationSchema:$u,OAuthClientMetadataSchema:Cu,OAuthClientRegistrationErrorSchema:Tg,OAuthErrorResponseSchema:Rg,OAuthMetadataSchema:Pu,OAuthProtectedResourceMetadataSchema:_g,OAuthTokenRevocationRequestSchema:Pg,OAuthTokensSchema:yg,OpenIdProviderDiscoveryMetadataSchema:bg,OpenIdProviderMetadataSchema:ku},Bu={},Ku={};function Wu(e,t){const n=e.slice(0,-6);Bu[n]=t,Ku[n]=o=>t.safeParse(o).success}for(const e of L_)Wu(e,g_[e]);for(const[e,t]of Object.entries(A_))Wu(e,t);Object.freeze(Bu);Object.freeze(Ku);function j_(e){switch(e){case"initialize":case"notifications/initialized":return ns(void 0);case"server/discover":return ns(Hu);default:return}}const Z_=6e4,U_=[us,ki,ds,Ci],D_=["inputResponses","requestState"];function na(e,t){const n=e.params;if(!Us(n))return{message:e,lifted:{}};const o=n._meta,s=Us(o)?U_.filter(c=>c in o):[],i=t==="request"?D_.filter(c=>c in n):[];if(s.length===0&&i.length===0)return{message:e,lifted:{}};const a={},l={...n};if(s.length>0&&Us(o)){const c={},p={...o};for(const m of s)c[m]=o[m],delete p[m];a.envelope=c,Object.keys(p).length>0?l._meta=p:delete l._meta}for(const c of i)c==="inputResponses"&&(a.inputResponses=l[c]),c==="requestState"&&(a.requestState=l[c]),delete l[c];return{message:{...e,params:l},lifted:a}}function oa(e,t){const n=e.validateResult(t,void 0);if(!(!n.ok&&n.reason==="not-in-era"))return{"~standard":{version:1,vendor:"mcp-wire-codec",validate(o){const s=e.validateResult(t,o);return s.ok?{value:s.value}:{issues:[{message:s.reason==="invalid"?s.message:`not-in-era: ${t}`}]}}}}}function Gu(e){return()=>e}const H_=Gu(void 0);var F_=class{constructor(e){q(this,"_transport");q(this,"_requestMessageId",0);q(this,"_requestHandlers",new Map);q(this,"_customSchemaRequestMethods",new Set);q(this,"_requestHandlerAbortControllers",new Map);q(this,"_notificationHandlers",new Map);q(this,"_responseHandlers",new Map);q(this,"_progressHandlers",new Map);q(this,"_timeoutInfo",new Map);q(this,"_pendingDebouncedNotifications",new Set);q(this,"_negotiatedProtocolVersion");q(this,"_supportedProtocolVersions");q(this,"onclose");q(this,"onerror");q(this,"fallbackRequestHandler");q(this,"fallbackNotificationHandler");this._options=e,this._supportedProtocolVersions=(e==null?void 0:e.supportedProtocolVersions)??VS,this.setNotificationHandler("notifications/cancelled",t=>{this._oncancel(t)}),this.setNotificationHandler("notifications/progress",t=>{this._onprogress(t)}),this.setRequestHandler("ping",t=>({}))}_shouldDropInbound(e){}_outboundMetaEnvelope(){}_envelopeOutbound(e){const t=this._outboundMetaEnvelope();if(t===void 0)return e;const n=e.params??{};return{...e,params:{...n,_meta:{...t,...n._meta}}}}_resolveNonCompleteResult(e,t){return Promise.reject(new te(re.UnsupportedResultType,`Unsupported result type '${e.kind}' for ${t.request.method}`,{resultType:e.kind,method:t.request.method}))}_getRequestHandler(e){return this._requestHandlers.get(e)}async _oncancel(e){var t;e.params.requestId!==void 0&&((t=this._requestHandlerAbortControllers.get(e.params.requestId))==null||t.abort(e.params.reason))}_setupTimeout(e,t,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,t),startTime:Date.now(),timeout:t,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){const t=this._timeoutInfo.get(e);if(!t)return!1;const n=Date.now()-t.startTime;if(t.maxTotalTimeout&&n>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),new te(re.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:n});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){const t=this._timeoutInfo.get(e);t&&(clearTimeout(t.timeoutId),this._timeoutInfo.delete(e))}async connect(e){var s,i,a,l;this._transport=e;const t=(s=this.transport)==null?void 0:s.onclose;this._transport.onclose=()=>{try{t==null||t()}finally{this._onclose()}};const n=(i=this.transport)==null?void 0:i.onerror;this._transport.onerror=c=>{n==null||n(c),this._onerror(c)};const o=(a=this._transport)==null?void 0:a.onmessage;this._transport.onmessage=(c,p)=>{o==null||o(c,p),Xr(c)||y_(c)?this._onresponse(c):__(c)?this._onrequest(c,p):b_(c)?this._onnotification(c,p):this._onerror(new Error(`Unknown message type: ${JSON.stringify(c)}`))},(l=e.setSupportedProtocolVersions)==null||l.call(e,this._supportedProtocolVersions),await this._transport.start()}_onclose(){var o;const e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._pendingDebouncedNotifications.clear();for(const s of this._timeoutInfo.values())clearTimeout(s.timeoutId);this._timeoutInfo.clear();const t=this._requestHandlerAbortControllers;this._requestHandlerAbortControllers=new Map;const n=new te(re.ConnectionClosed,"Connection closed");this._transport=void 0;try{(o=this.onclose)==null||o.call(this)}finally{for(const s of e.values())s(n);for(const s of t.values())s.abort(n)}}_onerror(e){var t;(t=this.onerror)==null||t.call(this,e)}_onnotification(e,t){const{message:n}=na(e,"notification"),o=this._negotiatedWireCodec();if((t==null?void 0:t.classification)===void 0&&this._shouldDropInbound(e)==="drop")return;if((t==null?void 0:t.classification)!==void 0){const a=Yr(t.classification);if(a!==o.era){this._onerror(new Error(`Era mismatch on inbound notification '${n.method}': classified as ${a} but this instance serves ${o.era}`));return}}if(As(n.method)&&!o.hasNotificationMethod(n.method))return;const s=this._notificationHandlers.get(n.method),i=this.fallbackNotificationHandler;s===void 0&&i===void 0||Promise.resolve().then(()=>s===void 0?i(n):s(n,o)).catch(a=>this._onerror(new Error(`Uncaught error in notification handler: ${a}`)))}_onrequest(e,t){var v;const{message:n,lifted:o}=na(e,"request"),s=this._negotiatedWireCodec();if((t==null?void 0:t.classification)===void 0&&this._shouldDropInbound(e)==="drop"){this._onerror(new Error(`Dropped inbound request '${e.method}': not servable on this connection's protocol era`));return}const i=this._transport,a=(R,T,C)=>{const j={jsonrpc:"2.0",id:n.id,error:{code:R,message:T,...C!==void 0&&{data:C}}};i==null||i.send(j).catch(L=>this._onerror(new Error(`Failed to send an error response: ${L}`)))};if((t==null?void 0:t.classification)!==void 0){const R=Yr(t.classification);if(R!==s.era){this._onerror(new Error(`Era mismatch on inbound request '${n.method}': classified as ${R} but this instance serves ${s.era}`));const T=t.classification.revision??R;a(z.UnsupportedProtocolVersion,`Unsupported protocol version: ${T}`,{supported:this._supportedProtocolVersions,requested:T});return}}if(Ls(n.method)&&!s.hasRequestMethod(n.method)&&!(Qr(n.method)&&this._customSchemaRequestMethods.has(n.method))){a(z.MethodNotFound,"Method not found");return}const l=this._requestHandlers.get(n.method)??this.fallbackRequestHandler;if(l===void 0){a(z.MethodNotFound,"Method not found");return}const c=s.checkInboundEnvelope(o);if(c!==void 0){a(z.InvalidParams,c);return}const p=(R,T)=>this._notificationViaCodec(this._resolveOutboundCodec(R.method),R,{...T,relatedRequestId:n.id}),m=(R,T,C)=>this._requestWithSchemaViaCodec(this._resolveOutboundCodec(R.method),R,T,{...C,relatedRequestId:n.id}),h=new AbortController;this._requestHandlerAbortControllers.set(n.id,h);const f=o.inputResponses===void 0?void 0:J_(o.inputResponses),g={sessionId:i==null?void 0:i.sessionId,mcpReq:{id:n.id,method:n.method,_meta:(v=n.params)==null?void 0:v._meta,...o.envelope!==void 0&&{envelope:o.envelope},...f!==void 0&&{inputResponses:f.accepted},...f!==void 0&&f.droppedKeys.length>0&&{droppedInputResponseKeys:f.droppedKeys},requestState:o.requestState===void 0?H_:Gu(o.requestState),signal:h.signal,send:((R,T,C)=>{const j=this._resolveOutboundCodec(R.method);if(this._assertOutboundRequestInEra(j,R.method),ni(T))return m(R,T,C);const L=oa(j,R.method);if(L===void 0)throw new TypeError(`'${R.method}' is not a spec method; pass a result schema as the second argument to ctx.mcpReq.send().`);return m(R,L,T)}),notify:p},http:t!=null&&t.authInfo?{authInfo:t.authInfo}:void 0},b=this.buildContext(g,t);Promise.resolve().then(()=>l(n,b)).then(async R=>{if(h.signal.aborted)return;let T;try{T=s.encodeResult(n.method,R,this._outboundServerInfo())}catch(j){this._onerror(new Error(`Failed to encode result for ${n.method}: ${j}`)),a(z.InternalError,"Internal error");return}const C={result:T,jsonrpc:"2.0",id:n.id};await(i==null?void 0:i.send(C))},async R=>{if(h.signal.aborted)return;const T=Number.isSafeInteger(R.code)?R.code:z.InternalError,C={jsonrpc:"2.0",id:n.id,error:{code:s.encodeErrorCode(T),message:R.message??"Internal error",...R.data!==void 0&&{data:R.data}}};await(i==null?void 0:i.send(C))}).catch(R=>this._onerror(new Error(`Failed to send response: ${R}`))).finally(()=>{this._requestHandlerAbortControllers.get(n.id)===h&&this._requestHandlerAbortControllers.delete(n.id)})}_onprogress(e){const{progressToken:t,...n}=e.params,o=Number(t),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}const i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(l){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(l);return}s(n)}_onresponse(e){const t=Number(e.id),n=this._responseHandlers.get(t);if(n===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t),this._progressHandlers.delete(t),Xr(e)?n(e):n(ae.fromError(e.error.code,e.error.message,e.error.data))}get transport(){return this._transport}async close(){var e;await((e=this._transport)==null?void 0:e.close())}request(e,t,n){const o=this._resolveOutboundCodec(e.method);if(ni(t))return Qr(e.method)||this._assertOutboundRequestInEra(o,e.method),this._requestWithSchemaViaCodec(o,e,t,n);this._assertOutboundRequestInEra(o,e.method);const s=oa(o,e.method);if(s===void 0)throw new TypeError(`'${e.method}' is not a spec method; pass a result schema as the second argument to request().`);return this._requestWithSchemaViaCodec(o,e,s,t)}_negotiatedWireCodec(){return ns(this._negotiatedProtocolVersion)}_wireCodec(){return this._negotiatedWireCodec()}_resolveOutboundCodec(e){if(this._negotiatedProtocolVersion===void 0){const t=j_(e);if(t)return t}return this._negotiatedWireCodec()}_assertOutboundRequestInEra(e,t){if(Ls(t)&&!e.hasRequestMethod(t))throw new te(re.MethodNotSupportedByProtocolVersion,`Method '${t}' is not supported by the negotiated protocol version (wire era ${e.era})`,{method:t,era:e.era})}_requestWithSchema(e,t,n){const o=this._resolveOutboundCodec(e.method);return this._assertOutboundRequestInEra(o,e.method),this._requestWithSchemaViaCodec(o,e,t,n)}_requestWithSchemaViaCodec(e,t,n,o){const{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a,headers:l}=o??{},c=Date.now();let p,m;return new Promise((h,f)=>{var qe,D,M,X;const g=A=>{f(A)};if(!this._transport){g(new Error("Not connected"));return}if(((qe=this._options)==null?void 0:qe.enforceStrictCapabilities)===!0)try{this.assertCapabilityForMethod(t.method)}catch(A){g(A);return}if((D=o==null?void 0:o.signal)!=null&&D.aborted){const A=o.signal.reason;throw A instanceof te?A:new te(re.RequestTimeout,String(A))}const b=e.era===Hu&&this._transport.hasPerRequestStream===!0?new AbortController:void 0,v=this._requestMessageId++;m=v;const R={...t,jsonrpc:"2.0",id:v};o!=null&&o.onprogress&&(this._progressHandlers.set(v,o.onprogress),R.params={...t.params,_meta:{...(M=t.params)==null?void 0:M._meta,progressToken:v}});const T=this._envelopeOutbound(R);let C=!1;const j=A=>{var J;C||(this._progressHandlers.delete(v),b===void 0?t.method!=="initialize"&&((J=this._transport)==null||J.send(this._envelopeOutbound({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:v,reason:String(A)}}),{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(fe=>this._onerror(new Error(`Failed to send cancellation: ${fe}`)))):b.abort(),f(A instanceof te?A:new te(re.RequestTimeout,String(A))))};this._responseHandlers.set(v,A=>{var Te;if((Te=o==null?void 0:o.signal)!=null&&Te.aborted)return;if(C=!0,A instanceof Error)return f(A);let J;try{J=e.decodeResult(t.method,A.result)}catch(ee){return f(ee instanceof Error?ee:new Error(String(ee)))}if(J.kind==="invalid")return f(J.error);if(J.kind==="input_required"){if((o==null?void 0:o.allowInputRequired)===!0)return h(V_(J));const ee={codec:e,request:t,resultSchema:n,options:o,flowStartedAt:c,retry:(Se,Le)=>this._requestWithSchemaViaCodec(e,Se===void 0?{method:t.method}:{method:t.method,params:Se},n,Le)};return h(this._resolveNonCompleteResult(J,ee))}const fe=J.result;Zs(n,fe).then(ee=>{ee.success?h(ee.data):f(new te(re.InvalidResult,`Invalid result for ${t.method}: ${ee.error}`))},f)}),p=()=>{var A;return j((A=o==null?void 0:o.signal)==null?void 0:A.reason)},(X=o==null?void 0:o.signal)==null||X.addEventListener("abort",p,{once:!0});const L=(o==null?void 0:o.timeout)??Z_,we=()=>j(new te(re.RequestTimeout,"Request timed out",{timeout:L}));this._setupTimeout(v,L,o==null?void 0:o.maxTotalTimeout,we,(o==null?void 0:o.resetTimeoutOnProgress)??!1),this._transport.send(T,{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a,headers:l,requestSignal:b==null?void 0:b.signal}).catch(A=>{this._progressHandlers.delete(v),f(A)})}).finally(()=>{var h;p&&((h=o==null?void 0:o.signal)==null||h.removeEventListener("abort",p)),m!==void 0&&(this._responseHandlers.delete(m),this._cleanupTimeout(m))})}async notification(e,t){return await this._notificationViaCodec(this._resolveOutboundCodec(e.method),e,t)}async _notificationViaCodec(e,t,n){var s;if(!this._transport)throw new te(re.NotConnected,"Not connected");if(As(t.method)&&!e.hasNotificationMethod(t.method))throw new te(re.MethodNotSupportedByProtocolVersion,`Notification '${t.method}' is not supported by the negotiated protocol version (wire era ${e.era})`,{method:t.method,era:e.era});this.assertNotificationCapability(t.method);const o=this._envelopeOutbound({jsonrpc:"2.0",...t});if((((s=this._options)==null?void 0:s.debouncedNotificationMethods)??[]).includes(t.method)&&!t.params&&(n==null?void 0:n.relatedRequestId)===void 0){if(this._pendingDebouncedNotifications.has(t.method))return;this._pendingDebouncedNotifications.add(t.method),Promise.resolve().then(()=>{var i;this._pendingDebouncedNotifications.delete(t.method),this._transport&&((i=this._transport)==null||i.send(o,n).catch(a=>this._onerror(a)))});return}await this._transport.send(o,n)}setRequestHandler(e,t,n){this.assertRequestHandlerCapability(e);let o;if(typeof t=="function"){if(!Ls(e))throw new TypeError(`'${e}' is not a spec request method; pass schemas as the second argument to setRequestHandler().`);o=(s,i)=>{const a=this._negotiatedWireCodec();let l=a.validateRequest(e,s);if(!l.ok&&l.reason==="not-in-era"&&(l=a.validateInputRequest(e,s)),!l.ok)throw l.reason==="not-in-era"?new ae(z.InternalError,`No wire schema for ${e} in the resolved era`):new Error(l.message);return Promise.resolve(t(l.value,i))}}else if(n)o=async(s,i)=>{const a=await Zs(t.params,{...s.params});if(!a.success)throw new ae(z.InvalidParams,`Invalid params for ${e}: ${a.error}`);return n(a.data,i)};else throw new TypeError("setRequestHandler: handler is required");typeof t=="function"?this._customSchemaRequestMethods.delete(e):this._customSchemaRequestMethods.add(e),this._requestHandlers.set(e,this._wrapHandler(e,o))}_wrapHandler(e,t){return t}_outboundServerInfo(){}removeRequestHandler(e){this._requestHandlers.delete(e),this._customSchemaRequestMethods.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,t,n){if(typeof t=="function"){if(!As(e))throw new TypeError(`'${e}' is not a spec notification method; pass schemas as the second argument to setNotificationHandler().`);this._notificationHandlers.set(e,(o,s)=>{const i=s.validateNotification(e,o);if(!i.ok)throw i.reason==="not-in-era"?new ae(z.InternalError,`No wire schema for ${e} in the resolved era`):new Error(i.message);return Promise.resolve(t(i.value))});return}if(!n)throw new TypeError("setNotificationHandler: handler is required");this._notificationHandlers.set(e,async o=>{const s=await Zs(t.params,{...o.params});if(!s.success)throw new ae(z.InvalidParams,`Invalid params for notification ${e}: ${s.error}`);await n(s.data,o)})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}};function Us(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function sa(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function J_(e){const t={},n=[];if(!sa(e))return{accepted:t,droppedKeys:n};for(const[o,s]of Object.entries(e)){if(!sa(s)||"method"in s||"result"in s){n.push(o);continue}t[o]=s}return{accepted:t,droppedKeys:n}}function V_(e){return{resultType:"input_required",inputRequests:e.inputRequests,...e.requestState!==void 0&&{requestState:e.requestState},...e._meta!==void 0&&{_meta:e._meta}}}/*!
65
+ * content-type
66
+ * Copyright(c) 2015 Douglas Christopher Wilson
67
+ * MIT Licensed
68
+ */var B_=dd((e=>{var t=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,n=/\\([\u000b\u0020-\u00ff])/g,o=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;e.parse=s;function s(l){if(!l)throw new TypeError("argument string is required");var c=typeof l=="object"?i(l):l;if(typeof c!="string")throw new TypeError("argument string is required to be a string");var p=c.indexOf(";"),m=p!==-1?c.slice(0,p).trim():c.trim();if(!o.test(m))throw new TypeError("invalid media type");var h=new a(m.toLowerCase());if(p!==-1){var f,g,b;for(t.lastIndex=p;g=t.exec(c);){if(g.index!==p)throw new TypeError("invalid parameter format");p+=g[0].length,f=g[1].toLowerCase(),b=g[2],b.charCodeAt(0)===34&&(b=b.slice(1,-1),b.indexOf("\\")!==-1&&(b=b.replace(n,"$1"))),h.parameters[f]=b}if(p!==c.length)throw new TypeError("invalid parameter format")}return h}function i(l){var c;if(typeof l.getHeader=="function"?c=l.getHeader("content-type"):typeof l.headers=="object"&&(c=l.headers&&l.headers["content-type"]),typeof c!="string")throw new TypeError("content-type header is missing from object");return c}function a(l){this.parameters=Object.create(null),this.type=l}}));B_();typeof self<"u"&&self.location&&self.location.origin!=="null"?new URL(self.location.origin+self.location.pathname+location.search):new URL("https://github.com/cfworker");const K_=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,W_=/^(?=.{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,G_=/^(?:[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,Y_=/^(?:(?:[^\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,Q_=/^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!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-z\u{00a1}-\u{ffff}0-9]+-?)*[a-z\u{00a1}-\u{ffff}0-9]+)(?:\.(?:[a-z\u{00a1}-\u{ffff}0-9]+-?)*[a-z\u{00a1}-\u{ffff}0-9]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,X_=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,eb=/^(?:\/(?:[^~/]|~0|~1)*)*$/,tb=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,nb=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,ob=/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,sb=/^((([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;function xe(e){return e.test.bind(e)}ib.bind(void 0,!1),xe(G_),xe(Y_),xe(Q_),xe(W_),xe(ob),xe(sb),xe(X_),xe(eb),xe(tb),xe(nb);function ib(e,t){const n=t.match(K_);if(!n)return!1;const o=+n[1],s=+n[2],i=+n[3],a=!!n[5];return(o<=23&&s<=59&&i<=59||o==23&&s==59&&i==60)&&(!e||a)}class rb{constructor(){q(this,"_eventSlots",new Map)}setHandler(t,n){let o=this._ensureEventSlot(t);o.onHandler&&n&&console.warn(`[MCP Apps] on${String(t)} handler replaced. Use addEventListener("${String(t)}", …) to add multiple listeners without replacing.`),o.onHandler=n}getHandler(t){var n;return(n=this._eventSlots.get(t))==null?void 0:n.onHandler}addEventListener(t,n){this._ensureEventSlot(t).listeners.push(n)}removeEventListener(t,n){let o=this._eventSlots.get(t);if(!o)return;let s=o.listeners.indexOf(n);s!==-1&&o.listeners.splice(s,1)}dispatch(t,n){var s;let o=this._eventSlots.get(t);if(o){(s=o.onHandler)==null||s.call(o,n);for(let i of[...o.listeners])i(n)}}_ensureEventSlot(t){let n=this._eventSlots.get(t);return n||(n={listeners:[]},this._eventSlots.set(t,n)),n}}class ab{constructor(){q(this,"_methods",new Set)}claim(t,n){if(this._methods.has(t))throw Error(`Handler for "${t}" already registered (via ${n}). Use addEventListener() to attach multiple listeners, or the on* setter for replace semantics.`);this._methods.add(t)}replace(t){this._methods.add(t)}release(t){this._methods.delete(t)}has(t){return this._methods.has(t)}}var ia=new Set;function ra(e,t){var c;let[n,o]=t,s=n==null?void 0:n.shape;if(typeof((c=s==null?void 0:s.method)==null?void 0:c.value)!="string")return;let i=s.method.value,a=e==="request"?"setRequestHandler":"setNotificationHandler";ia.has(a)||(ia.add(a),console.warn(`[ext-apps] ${a}(Schema, handler) is deprecated; use ${a}("${i}", { params: Schema.shape.params }, handler).`));let l=o;return[i,{params:s.params},e==="request"?(p,m)=>l({method:i,params:p},cb(m)):p=>l({method:i,params:p})]}function cb(e){var t;return{signal:e.mcpReq.signal,requestId:e.mcpReq.id,sessionId:e.sessionId,_meta:e.mcpReq._meta,sendRequest:e.mcpReq.send,sendNotification:e.mcpReq.notify,authInfo:(t=e.http)==null?void 0:t.authInfo}}var lb="2026-01-26",ub="ui/notifications/tool-input-partial";class db{constructor(t=window.parent,n){q(this,"eventTarget");q(this,"eventSource");q(this,"messageListener");q(this,"onclose");q(this,"onerror");q(this,"onmessage");q(this,"sessionId");q(this,"setProtocolVersion");this.eventTarget=t,this.eventSource=n,this.messageListener=o=>{var i,a,l;if(n&&o.source!==this.eventSource){console.debug("Ignoring message from unknown source",o);return}let s=Vc.safeParse(o.data);s.success?(console.debug("Parsed message",s.data),(i=this.onmessage)==null||i.call(this,s.data)):((a=o.data)==null?void 0:a.jsonrpc)!=="2.0"?console.debug("Ignoring non-JSON-RPC message",s.error.message,o):(console.error("Failed to parse message",s.error.message,o),(l=this.onerror)==null||l.call(this,Error("Invalid JSON-RPC message received: "+s.error.message)))}}async start(){window.addEventListener("message",this.messageListener)}async send(t,n){t.method!==ub&&console.debug("Sending message",t),this.eventTarget.postMessage(t,"*")}async close(){var t;window.removeEventListener("message",this.messageListener),(t=this.onclose)==null||t.call(this)}}var pb=P([d("light"),d("dark")]).describe("Color theme preference for the host environment."),mo=P([d("inline"),d("fullscreen"),d("pip")]).describe("Display mode for UI presentation."),mb=P([d("--color-background-primary"),d("--color-background-secondary"),d("--color-background-tertiary"),d("--color-background-inverse"),d("--color-background-ghost"),d("--color-background-info"),d("--color-background-danger"),d("--color-background-success"),d("--color-background-warning"),d("--color-background-disabled"),d("--color-text-primary"),d("--color-text-secondary"),d("--color-text-tertiary"),d("--color-text-inverse"),d("--color-text-ghost"),d("--color-text-info"),d("--color-text-danger"),d("--color-text-success"),d("--color-text-warning"),d("--color-text-disabled"),d("--color-border-primary"),d("--color-border-secondary"),d("--color-border-tertiary"),d("--color-border-inverse"),d("--color-border-ghost"),d("--color-border-info"),d("--color-border-danger"),d("--color-border-success"),d("--color-border-warning"),d("--color-border-disabled"),d("--color-ring-primary"),d("--color-ring-secondary"),d("--color-ring-inverse"),d("--color-ring-info"),d("--color-ring-danger"),d("--color-ring-success"),d("--color-ring-warning"),d("--font-sans"),d("--font-mono"),d("--font-weight-normal"),d("--font-weight-medium"),d("--font-weight-semibold"),d("--font-weight-bold"),d("--font-text-xs-size"),d("--font-text-sm-size"),d("--font-text-md-size"),d("--font-text-lg-size"),d("--font-heading-xs-size"),d("--font-heading-sm-size"),d("--font-heading-md-size"),d("--font-heading-lg-size"),d("--font-heading-xl-size"),d("--font-heading-2xl-size"),d("--font-heading-3xl-size"),d("--font-text-xs-line-height"),d("--font-text-sm-line-height"),d("--font-text-md-line-height"),d("--font-text-lg-line-height"),d("--font-heading-xs-line-height"),d("--font-heading-sm-line-height"),d("--font-heading-md-line-height"),d("--font-heading-lg-line-height"),d("--font-heading-xl-line-height"),d("--font-heading-2xl-line-height"),d("--font-heading-3xl-line-height"),d("--border-radius-xs"),d("--border-radius-sm"),d("--border-radius-md"),d("--border-radius-lg"),d("--border-radius-xl"),d("--border-radius-full"),d("--border-width-regular"),d("--shadow-hairline"),d("--shadow-sm"),d("--shadow-md"),d("--shadow-lg")]).describe("CSS variable keys available to MCP apps for theming."),hb=w(mb.describe(`Style variables for theming MCP apps.
69
+
70
+ Individual style keys are optional - hosts may provide any subset of these values.
71
+ Values are strings containing CSS values (colors, sizes, font stacks, etc.).
72
+
73
+ Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Record<K, string>>\`
74
+ for compatibility with Zod schema generation. Both are functionally equivalent for validation.`),P([r(),Ys()]).describe(`Style variables for theming MCP apps.
75
+
76
+ Individual style keys are optional - hosts may provide any subset of these values.
77
+ Values are strings containing CSS values (colors, sizes, font stacks, etc.).
78
+
79
+ Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Record<K, string>>\`
80
+ for compatibility with Zod schema generation. Both are functionally equivalent for validation.`)).describe(`Style variables for theming MCP apps.
81
+
82
+ Individual style keys are optional - hosts may provide any subset of these values.
83
+ Values are strings containing CSS values (colors, sizes, font stacks, etc.).
84
+
85
+ Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Record<K, string>>\`
86
+ for compatibility with Zod schema generation. Both are functionally equivalent for validation.`);u({method:d("ui/open-link"),params:u({url:r().describe("URL to open in the host's browser")})});var fb=u({isError:k().optional().describe("True if the host failed to open the URL (e.g., due to security policy).")}).passthrough(),Sb=u({isError:k().optional().describe("True if the download failed (e.g., user cancelled or host denied).")}).passthrough(),gb=u({isError:k().optional().describe("True if the host rejected or failed to deliver the message.")}).passthrough();u({method:d("ui/notifications/sandbox-proxy-ready"),params:u({})});var ir=u({connectDomains:S(r()).optional().describe(`Origins for network requests (fetch/XHR/WebSocket).
87
+
88
+ - Maps to CSP \`connect-src\` directive
89
+ - Empty or omitted → no network connections (secure default)`),resourceDomains:S(r()).optional().describe("Origins for static resources (images, scripts, stylesheets, fonts, media).\n\n- Maps to CSP `img-src`, `script-src`, `style-src`, `font-src`, `media-src` directives\n- Wildcard subdomains supported: `https://*.example.com`\n- Empty or omitted → no network resources (secure default)"),frameDomains:S(r()).optional().describe("Origins for nested iframes.\n\n- Maps to CSP `frame-src` directive\n- Empty or omitted → no nested iframes allowed (`frame-src 'none'`)"),baseUriDomains:S(r()).optional().describe("Allowed base URIs for the document.\n\n- Maps to CSP `base-uri` directive\n- Empty or omitted → only same origin allowed (`base-uri 'self'`)")}),rr=u({camera:u({}).optional().describe("Request camera access.\n\nMaps to Permission Policy `camera` feature."),microphone:u({}).optional().describe("Request microphone access.\n\nMaps to Permission Policy `microphone` feature."),geolocation:u({}).optional().describe("Request geolocation access.\n\nMaps to Permission Policy `geolocation` feature."),clipboardWrite:u({}).optional().describe("Request clipboard write access.\n\nMaps to Permission Policy `clipboard-write` feature.")});u({method:d("ui/notifications/size-changed"),params:u({width:y().optional().describe("New width in pixels."),height:y().optional().describe("New height in pixels.")})});var _b=u({method:d("ui/notifications/tool-input"),params:u({arguments:w(r(),$().describe("Complete tool call arguments as key-value pairs.")).optional().describe("Complete tool call arguments as key-value pairs.")})}),bb=u({method:d("ui/notifications/tool-input-partial"),params:u({arguments:w(r(),$().describe("Partial tool call arguments (incomplete, may change).")).optional().describe("Partial tool call arguments (incomplete, may change).")})}),yb=u({method:d("ui/notifications/tool-cancelled"),params:u({reason:r().optional().describe('Optional reason for the cancellation (e.g., "user action", "timeout").')})}),vb=u({fonts:r().optional()}),Rb=u({variables:hb.optional().describe("CSS variables for theming the app."),css:vb.optional().describe("CSS blocks that apps can inject.")}),wb=u({method:d("ui/resource-teardown"),params:u({})}),Tb=w(r(),$()),aa=u({text:u({}).optional().describe("Host supports text content blocks."),image:u({}).optional().describe("Host supports image content blocks."),audio:u({}).optional().describe("Host supports audio content blocks."),resource:u({}).optional().describe("Host supports resource content blocks."),resourceLink:u({}).optional().describe("Host supports resource link content blocks."),structuredContent:u({}).optional().describe("Host supports structured content.")});u({method:d("ui/notifications/request-teardown"),params:u({}).optional()});var Pb=u({experimental:w(r(),w(r(),Ti()).describe("Experimental features keyed by identifier.")).optional().describe("Experimental features keyed by identifier."),openLinks:u({}).optional().describe("Host supports opening external URLs."),downloadFile:u({}).optional().describe("Host supports file downloads via ui/download-file."),serverTools:u({listChanged:k().optional().describe("Host supports tools/list_changed notifications.")}).optional().describe("Host can proxy tool calls to the MCP server."),serverResources:u({listChanged:k().optional().describe("Host supports resources/list_changed notifications.")}).optional().describe("Host can proxy resource reads to the MCP server."),logging:u({}).optional().describe("Host accepts log messages."),sandbox:u({permissions:rr.optional().describe("Permissions granted by the host (camera, microphone, geolocation)."),csp:ir.optional().describe("CSP domains approved by the host.")}).optional().describe("Sandbox configuration applied by the host."),updateModelContext:aa.optional().describe("Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns."),message:aa.optional().describe("Host supports receiving content messages (ui/message) from the view."),sampling:u({tools:u({}).optional().describe("Host supports tool use via `tools` and `toolChoice` parameters.")}).optional().describe("Host supports LLM sampling (sampling/createMessage) from the view.\nMirrors the MCP `ClientCapabilities.sampling` shape so hosts can pass it through.")}),kb=u({experimental:w(r(),w(r(),Ti()).describe("Experimental features keyed by identifier.")).optional().describe("Experimental features keyed by identifier."),tools:u({listChanged:k().optional().describe("App supports tools/list_changed notifications.")}).optional().describe("App exposes MCP-style tools that the host can call."),availableDisplayModes:S(mo).optional().describe("Display modes the app supports.")});u({method:d("ui/notifications/initialized"),params:u({}).optional()});u({csp:ir.optional().describe("Content Security Policy configuration for UI resources."),permissions:rr.optional().describe("Sandbox permissions requested by the UI resource."),domain:r().optional().describe(`Dedicated origin for view sandbox.
90
+
91
+ Useful when views need stable, dedicated origins for OAuth callbacks, CORS policies, or API key allowlists.
92
+
93
+ **Host-dependent:** The format and validation rules for this field are determined by each host. Servers MUST consult host-specific documentation for the expected domain format. Common patterns include:
94
+ - Hash-based subdomains (e.g., \`{hash}.claudemcpcontent.com\`)
95
+ - URL-derived subdomains (e.g., \`www-example-com.oaiusercontent.com\`)
96
+
97
+ If omitted, host uses default sandbox origin (typically per-conversation).`),prefersBorder:k().optional().describe(`Visual boundary preference - true if view prefers a visible border.
98
+
99
+ Boolean requesting whether a visible border and background is provided by the host. Specifying an explicit value for this is recommended because hosts' defaults may vary.
100
+
101
+ - \`true\`: request visible border + background
102
+ - \`false\`: request no visible border + background
103
+ - omitted: host decides border`)});u({method:d("ui/request-display-mode"),params:u({mode:mo.describe("The display mode being requested.")})});var Cb=u({mode:mo.describe("The display mode that was actually set. May differ from requested if not supported.")}).passthrough(),$b=P([d("model"),d("app")]).describe("Tool visibility scope - who can access the tool.");u({resourceUri:r().optional(),visibility:S($b).optional().describe(`Who can access this tool. Default: ["model", "app"]
104
+ - "model": Tool visible to and callable by the agent
105
+ - "app": Tool callable by the app from this server only`),csp:Qs().optional(),permissions:Qs().optional()});u({mimeTypes:S(r()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.')});u({method:d("ui/download-file"),params:u({contents:S(P([Fi,Ji])).describe("Resource contents to download — embedded (inline data) or linked (host fetches). Uses standard MCP resource types.")})});u({method:d("ui/message"),params:u({role:d("user").describe('Message role, currently only "user" is supported.'),content:S(en).describe("Message content blocks (text, image, etc.).")})});u({method:d("ui/notifications/sandbox-resource-ready"),params:u({html:r().describe("HTML content to load into the inner iframe."),sandbox:r().optional().describe("Optional override for the inner iframe's sandbox attribute."),csp:ir.optional().describe("CSP configuration from resource metadata."),permissions:rr.optional().describe("Sandbox permissions from resource metadata.")})});var Eb=u({method:d("ui/notifications/tool-result"),params:vs.describe("Standard MCP tool execution result.")}),Yu=u({toolInfo:u({id:_t.optional().describe("JSON-RPC id of the tools/call request."),tool:ys.describe("Tool definition including name, inputSchema, etc.")}).optional().describe("Metadata of the tool call that instantiated this App."),theme:pb.optional().describe("Current color theme preference."),styles:Rb.optional().describe("Style configuration for theming the app."),displayMode:mo.optional().describe("How the UI is currently displayed."),availableDisplayModes:S(mo).optional().describe("Display modes the host supports."),containerDimensions:P([u({height:y().describe("Fixed container height in pixels.")}),u({maxHeight:P([y(),Ys()]).optional().describe("Maximum container height in pixels.")})]).and(P([u({width:y().describe("Fixed container width in pixels.")}),u({maxWidth:P([y(),Ys()]).optional().describe("Maximum container width in pixels.")})])).optional().describe(`Container dimensions. Represents the dimensions of the iframe or other
106
+ container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:r().optional().describe("User's language and region preference in BCP 47 format."),timeZone:r().optional().describe("User's timezone in IANA format."),userAgent:r().optional().describe("Host application identifier."),platform:P([d("web"),d("desktop"),d("mobile")]).optional().describe("Platform type for responsive design decisions."),deviceCapabilities:u({touch:k().optional().describe("Whether the device supports touch input."),hover:k().optional().describe("Whether the device supports hover interactions.")}).optional().describe("Device input capabilities."),safeAreaInsets:u({top:y().describe("Top safe area inset in pixels."),right:y().describe("Right safe area inset in pixels."),bottom:y().describe("Bottom safe area inset in pixels."),left:y().describe("Left safe area inset in pixels.")}).optional().describe("Mobile safe area boundaries in pixels.")}).passthrough(),Ob=u({method:d("ui/notifications/host-context-changed"),params:Yu.describe("Partial context update containing only changed fields.")});u({method:d("ui/update-model-context"),params:u({content:S(en).optional().describe("Context content blocks (text, image, etc.)."),structuredContent:w(r(),$().describe("Structured content for machine-readable context data.")).optional().describe("Structured content for machine-readable context data.")})});u({method:d("ui/initialize"),params:u({appInfo:Gt.describe("App identification (name and version)."),appCapabilities:kb.describe("Features and capabilities this app provides."),protocolVersion:r().describe("Protocol version this app supports.")})});var Ib=u({protocolVersion:r().describe('Negotiated protocol version string (e.g., "2025-11-21").'),hostInfo:Gt.describe("Host application identification and version."),hostCapabilities:Pb.describe("Features and capabilities provided by the host."),hostContext:Yu.describe("Rich context about the host environment.")}).passthrough(),qb={target:"draft-2020-12"};async function ca(e,t){let n=e["~standard"];if(n.jsonSchema)return n.jsonSchema[t](qb);throw Error(`Schema (vendor: ${n.vendor}) does not implement Standard JSON Schema (~standard.jsonSchema). Use a library that does (zod v4, ArkType, Valibot) or wrap your schema accordingly.`)}async function la(e,t,n=""){let o=await e["~standard"].validate(t);if(o.issues){let s=o.issues.map(i=>{var l;let a=(l=i.path)==null?void 0:l.map(c=>typeof c=="object"?c.key:c).join(".");return a?`${a}: ${i.message}`:i.message}).join("; ");throw Error(n+s)}return o.value}function Nb(e,t){let n={...e,...t};return t.experimental!==void 0&&(n.experimental={...e.experimental,...t.experimental}),t.tools!==void 0&&(n.tools={...e.tools,...t.tools}),n}const os=class os extends F_{constructor(n,o={},s={autoResize:!0}){super(s);q(this,"_appInfo");q(this,"_appCapabilities");q(this,"options");q(this,"_hostCapabilities");q(this,"_hostInfo");q(this,"_hostContext");q(this,"_registeredTools",{});q(this,"_initializedSent",!1);q(this,"_registeredEvents",new Set);q(this,"_events",new rb);q(this,"_methods",new ab);q(this,"setRequestHandler",(...n)=>{let[o,...s]=ra("request",n)??n;this._methods.claim(o,"setRequestHandler"),super.setRequestHandler.call(this,o,...s)});q(this,"setNotificationHandler",(...n)=>{let[o,...s]=ra("notification",n)??n;this._methods.claim(o,"setNotificationHandler"),super.setNotificationHandler.call(this,o,...s)});q(this,"removeRequestHandler",n=>{this._methods.release(n),super.removeRequestHandler(n)});q(this,"removeNotificationHandler",n=>{this._methods.release(n),super.removeNotificationHandler(n)});q(this,"replaceRequestHandler",(n,...o)=>{this._methods.replace(n),super.setRequestHandler.call(this,n,...o)});q(this,"eventSchemas",{toolinput:_b,toolinputpartial:bb,toolresult:Eb,toolcancelled:yb,hostcontextchanged:Ob});q(this,"_everHadListener",new Set);q(this,"_toolHandlersInitialized",!1);q(this,"_onteardown");q(this,"_oncalltool");q(this,"_onlisttools");q(this,"sendOpenLink",this.openLink);this._appInfo=n,this._appCapabilities=o,this.options=s,this._methods.replace("notifications/cancelled"),this._methods.replace("notifications/progress"),!s.allowUnsafeEval&&Ie({jitless:!0}),this.replaceRequestHandler("ping",i=>(console.log("Received ping:",i.params),{})),this.setEventHandler("hostcontextchanged",void 0)}_assertInitialized(n){var s;if(this._initializedSent)return;let o=`[ext-apps] App.${n}() called before connect() completed the ui/initialize handshake. Await app.connect() before calling this method, or move data loading to an ontoolresult handler.`;if((s=this.options)!=null&&s.strict)throw Error(o);console.warn(`${o}. This will throw in a future release.`)}_assertHandlerTiming(n){var s;if(!os.ONE_SHOT_EVENTS.has(n)||this._everHadListener.has(n)||(this._everHadListener.add(n),!this._initializedSent))return;let o=`[ext-apps] "${String(n)}" handler registered after connect() completed the ui/initialize handshake. The host may have already sent this notification. Register handlers before calling app.connect().`;if((s=this.options)!=null&&s.strict)throw Error(o);console.warn(o)}setEventHandler(n,o){o&&this._assertHandlerTiming(n),this._ensureEventSlot(n),this._events.setHandler(n,o)}addEventListener(n,o){this._assertHandlerTiming(n),this._ensureEventSlot(n),this._events.addEventListener(n,o)}removeEventListener(n,o){this._events.removeEventListener(n,o)}_ensureEventSlot(n){if(this._registeredEvents.has(n))return;let o=this.eventSchemas[n];if(!o)throw Error(`Unknown event: ${String(n)}`);this.setNotificationHandler(o.shape.method.value,{params:o.shape.params},s=>{let i=s;n==="hostcontextchanged"&&(this._hostContext={...this._hostContext,...i}),this._events.dispatch(n,i)}),this._registeredEvents.add(n)}getEventHandler(n){return this._events.getHandler(n)}warnIfRequestHandlerReplaced(n,o,s){o&&s&&console.warn(`[MCP Apps] ${n} handler replaced. Previous handler will no longer be called.`)}buildContext(n){return n}registerAppCapabilities(n){if(this.transport)throw Error("Cannot register capabilities after transport is established");this._appCapabilities=Nb(this._appCapabilities,n)}registerTool(n,o,s){if(this._registeredTools[n])throw Error(`Tool ${n} is already registered`);let i=this,a=()=>{var p;i._initializedSent&&((p=i._appCapabilities.tools)!=null&&p.listChanged)&&i.sendToolListChanged()},l=o.inputSchema!==void 0,c={title:o.title,description:o.description,inputSchema:o.inputSchema,outputSchema:o.outputSchema,annotations:o.annotations,_meta:o._meta,enabled:!0,enable(){this.enabled=!0,a()},disable(){this.enabled=!1,a()},update(p){Object.assign(this,p),a()},remove(){i._registeredTools[n]===c&&(delete i._registeredTools[n],a())},handler:async(p,m)=>{if(!c.enabled)throw Error(`Tool ${n} is disabled`);let h;if(l){let f=c.inputSchema,g=f?await la(f,p??{},`Invalid input for tool ${n}: `):p??{};h=await s(g,m)}else h=await s(m);return c.outputSchema&&!h.isError&&(h.structuredContent=await la(c.outputSchema,h.structuredContent,`Invalid output for tool ${n}: `)),h}};return this._registeredTools[n]=c,!this._appCapabilities.tools&&!this.transport&&this.registerAppCapabilities({tools:{listChanged:!0}}),this.ensureToolHandlersInitialized(),a(),c}ensureToolHandlersInitialized(){this._toolHandlersInitialized||(this._toolHandlersInitialized=!0,this.oncalltool=async(n,o)=>{let s=this._registeredTools[n.name];if(!s)throw Error(`Tool ${n.name} not found`);return s.handler(n.arguments,o)},this.onlisttools=async(n,o)=>({tools:await Promise.all(Object.entries(this._registeredTools).filter(([s,i])=>i.enabled).map(async([s,i])=>{let a={name:s,title:i.title,description:i.description,inputSchema:i.inputSchema?await ca(i.inputSchema,"input"):{type:"object",properties:{}}};return i.outputSchema&&(a.outputSchema=await ca(i.outputSchema,"output")),i.annotations&&(a.annotations=i.annotations),i._meta&&(a._meta=i._meta),a}))}))}async sendToolListChanged(n={}){this._assertInitialized("sendToolListChanged"),await this.notification({method:"notifications/tools/list_changed",params:n})}getHostCapabilities(){return this._hostCapabilities}getHostVersion(){return this._hostInfo}getHostContext(){return this._hostContext}get ontoolinput(){return this.getEventHandler("toolinput")}set ontoolinput(n){this.setEventHandler("toolinput",n)}get ontoolinputpartial(){return this.getEventHandler("toolinputpartial")}set ontoolinputpartial(n){this.setEventHandler("toolinputpartial",n)}get ontoolresult(){return this.getEventHandler("toolresult")}set ontoolresult(n){this.setEventHandler("toolresult",n)}get ontoolcancelled(){return this.getEventHandler("toolcancelled")}set ontoolcancelled(n){this.setEventHandler("toolcancelled",n)}get onhostcontextchanged(){return this.getEventHandler("hostcontextchanged")}set onhostcontextchanged(n){this.setEventHandler("hostcontextchanged",n)}get onteardown(){return this._onteardown}set onteardown(n){this.warnIfRequestHandlerReplaced("onteardown",this._onteardown,n),this._onteardown=n,this.replaceRequestHandler("ui/resource-teardown",{params:wb.shape.params,result:Tb},(o,s)=>{if(!this._onteardown)throw Error("No onteardown handler set");return this._onteardown(o,s)})}get oncalltool(){return this._oncalltool}set oncalltool(n){this.warnIfRequestHandlerReplaced("oncalltool",this._oncalltool,n),this._oncalltool=n,this.replaceRequestHandler("tools/call",(o,s)=>{if(!this._oncalltool)throw Error("No oncalltool handler set");return this._oncalltool(o.params,s)})}get onlisttools(){return this._onlisttools}set onlisttools(n){this.warnIfRequestHandlerReplaced("onlisttools",this._onlisttools,n),this._onlisttools=n,this.replaceRequestHandler("tools/list",(o,s)=>{if(!this._onlisttools)throw Error("No onlisttools handler set");return this._onlisttools(o.params,s)})}assertCapabilityForMethod(n){var o;switch(n){case"sampling/createMessage":if(!((o=this._hostCapabilities)!=null&&o.sampling))throw Error(`Host does not support sampling (required for ${n})`);break}}assertRequestHandlerCapability(n){switch(n){case"tools/call":case"tools/list":if(!this._appCapabilities.tools)throw Error(`Client does not support tool capability (required for ${n})`);return;default:return}}assertNotificationCapability(n){}async callServerTool(n,o){if(this._assertInitialized("callServerTool"),typeof n=="string")throw Error(`callServerTool() expects an object as its first argument, but received a string ("${n}"). Did you mean: callServerTool({ name: "${n}", arguments: { ... } })?`);return await this.request({method:"tools/call",params:n},{onprogress:()=>{},resetTimeoutOnProgress:!0,...o})}async readServerResource(n,o){return this._assertInitialized("readServerResource"),await this.request({method:"resources/read",params:n},o)}async listServerResources(n,o){return this._assertInitialized("listServerResources"),await this.request({method:"resources/list",params:n},o)}async createSamplingMessage(n,o){return this._assertInitialized("createSamplingMessage"),await this.request({method:"sampling/createMessage",params:n},o)}sendMessage(n,o){return this._assertInitialized("sendMessage"),this.request({method:"ui/message",params:n},gb,o)}sendLog(n){return this.notification({method:"notifications/message",params:n})}updateModelContext(n,o){return this._assertInitialized("updateModelContext"),this.request({method:"ui/update-model-context",params:n},fs,o)}openLink(n,o){return this._assertInitialized("openLink"),this.request({method:"ui/open-link",params:n},fb,o)}downloadFile(n,o){return this._assertInitialized("downloadFile"),this.request({method:"ui/download-file",params:n},Sb,o)}requestTeardown(n={}){return this.notification({method:"ui/notifications/request-teardown",params:n})}requestDisplayMode(n,o){return this._assertInitialized("requestDisplayMode"),this.request({method:"ui/request-display-mode",params:n},Cb,o)}sendSizeChanged(n){return this.notification({method:"ui/notifications/size-changed",params:n})}setupSizeChangedNotifications(){let n=!1,o=0,s=0,i=()=>{n||(n=!0,requestAnimationFrame(()=>{n=!1;let l=document.documentElement,c=l.style.height;l.style.height="max-content";let p=Math.ceil(l.getBoundingClientRect().height);l.style.height=c;let m=Math.ceil(window.innerWidth);(m!==o||p!==s)&&(o=m,s=p,this.sendSizeChanged({width:m,height:p}))}))};i();let a=new ResizeObserver(i);return a.observe(document.documentElement),a.observe(document.body),()=>a.disconnect()}async connect(n=new db(window.parent,window.parent),o){var s;if(this.transport)throw Error("App is already connected. Call close() before connecting again.");this._initializedSent=!1;try{await super.connect(n);let i=await this.request({method:"ui/initialize",params:{appCapabilities:this._appCapabilities,appInfo:this._appInfo,protocolVersion:lb}},Ib,o);if(i===void 0)throw Error(`Server sent invalid initialize result: ${i}`);this._hostCapabilities=i.hostCapabilities,this._hostInfo=i.hostInfo,this._hostContext=i.hostContext,await this.notification({method:"ui/notifications/initialized"}),this._initializedSent=!0,(s=this.options)!=null&&s.autoResize&&this.setupSizeChangedNotifications()}catch(i){throw this.close(),i}}};q(os,"ONE_SHOT_EVENTS",new Set(["toolinput","toolinputpartial","toolresult","toolcancelled"]));let ii=os;const B=e=>document.getElementById(e);function ua(e){const t=e?e==="dark":matchMedia("(prefers-color-scheme: dark)").matches;document.documentElement.dataset.theme=t?"dark":"light"}function Qu(e){var n,o;const t=((o=(n=e.content)==null?void 0:n.find(s=>s.type==="text"))==null?void 0:o.text)??"";if(e.isError)return{value:null,error:t||"Something went wrong."};if(e.structuredContent&&typeof e.structuredContent=="object")return{value:e.structuredContent,error:null};try{return{value:JSON.parse(t),error:null}}catch{return{value:null,error:t||"Something went wrong."}}}function Ts(e){return!!e&&/isn't running|isn't installed|is offline|did not answer/i.test(e)}function zb(e,t,n){const o=new ii({name:e,version:"1.0.0"}),s=B("root"),i=a=>{if(ua(a.theme),a.safeAreaInsets){const l=a.safeAreaInsets;s.style.padding=`${l.top}px ${l.right}px ${l.bottom}px ${l.left}px`}s.classList.toggle("fullscreen",a.displayMode==="fullscreen")};return o.onerror=console.error,o.onhostcontextchanged=i,o.ontoolresult=t,ua(void 0),o.connect().then(()=>{const a=o.getHostContext();a&&i(a),n==null||n()}),o}async function ar(e,t,n={}){try{return Qu(await e.callServerTool({name:t,arguments:n}))}catch(o){return{value:null,error:o.message}}}function Zo(e,t,n){e.className="status"+(n==="active"?" live active":n?` ${n}`:""),e.querySelector("span").textContent=t}function xb(e,t){e.replaceChildren(...t.flatMap(([n,o])=>{const s=document.createElement("dt");s.textContent=n;const i=document.createElement("dd");return i.textContent=o,[s,i]}))}function Mb(e,t,n){let o;const s=e.textContent??"",i=()=>{clearTimeout(o),o=void 0,e.textContent=s,e.classList.remove("confirm")};return e.addEventListener("click",()=>{if(o===void 0){o=window.setTimeout(i,4e3),e.textContent=t,e.classList.add("confirm");return}i(),n()}),i}const Uo=B("meta"),Do=B("status"),da=B("pick"),Lb=B("ports"),Xu=B("controller"),ed=B("baudrate"),pa=B("machine"),ma=B("facts"),Ab=B("message"),jb=B("message-title"),Zb=B("message-body"),Ub=B("loading-bar"),Ce=B("note"),W={refresh:B("refresh"),connect:B("connect"),disconnect:B("disconnect"),unlock:B("unlock"),home:B("home")};let $e=null,pt=null,We=null,Ue=!1,Ee="",ri;const Db=/wch|ch34|ftdi|arduino|silicon lab|cp210|prolific|1a86|stm|usb|acm|grbl/i,ha=e=>Db.test(`${e.manufacturer??""} ${e.port}`),Hb={1:"A hard limit switch was hit",2:"The move went past a soft limit",3:"Reset while moving; position may be lost",4:"The probe was already touching",5:"The probe didn't touch",6:"Homing was reset",7:"Homing failed: a door opened",8:"Homing failed: the switch didn't clear",9:"Homing failed: no switch found"};function Fb(e){var n,o;const t=(o=(n=e.alarm)==null?void 0:n.match(/ALARM:(\d+)/))==null?void 0:o[1];return t?`${Hb[t]??e.alarm}. Check the machine, then unlock or home it.`:"Homing required. Home the machine, or unlock it."}function td(e,t){return/in use|busy|access denied|denied|locked/i.test(e)?`${t} is in use by another program. Close it, then try again.`:e}const Jb=e=>e?[e.x,e.y,e.z].map(t=>t.toFixed(3)).join(", "):"–";function Mt(e,t="",n=!1){Ab.hidden=e===null,jb.textContent=e??"",Zb.textContent=t,Ub.hidden=!n}function Vb(){var t;if(!$e)return;(!We||!$e.some(n=>n.port===We))&&(We=((t=$e.find(n=>ha(n)&&!n.inuse)??$e.find(n=>!n.inuse)??$e[0])==null?void 0:t.port)??null);const e=$e.filter(ha);Lb.replaceChildren(...$e.map(n=>{const o=document.createElement("label");o.className="port";const s=document.createElement("input");s.type="radio",s.name="port",s.value=n.port,s.checked=n.port===We,s.addEventListener("change",()=>{We=n.port,Ee="",Ps()});const i=document.createElement("span");i.className="port-text";const a=document.createElement("span");a.className="port-name",a.textContent=n.port;const l=document.createElement("span");l.className="port-desc",l.textContent=n.manufacturer||"Serial port",i.append(a,l),o.append(s,i);const c=n.inuse?"In use":e.length===1&&e[0]===n?"Likely your machine":"";if(c){const p=document.createElement("span");p.className="port-hint",p.textContent=c,o.append(p)}return o}))}function Ps(){for(const s of Object.values(W))s.hidden=!0;da.hidden=!0,pa.hidden=!0,Ce.className="foot-note",Ce.textContent="";const e=pt;if(Ue){Zo(Do,"Offline",""),Uo.textContent="Machine connection",Mt("Your computer is offline","It reconnects when it’s on and you’re signed in to it.");return}if(!e)return;if(!e.cncjs.connected){Zo(Do,"Not connected",""),Uo.textContent="Machine connection",Mt("CNCjs isn’t running",e.state),W.refresh.hidden=!1;return}if(!e.port){if(Zo(Do,"Not connected",""),Uo.textContent="Pick the port your controller is on",W.refresh.hidden=!1,!$e){Mt("Looking for ports…","",!0);return}if(!$e.length){Mt("No ports found","Plug the controller into this computer by USB and check it’s switched on.");return}Mt(null),da.hidden=!1,Vb(),W.connect.hidden=!1,W.connect.disabled=!We,Ee&&(Ce.className="foot-note alarm",Ce.textContent=Ee,W.refresh.hidden=!0);return}Mt(null),pa.hidden=!1,Uo.textContent=[e.port,e.controller,e.baudrate].filter(Boolean).join(" · ");const t=e.activeState==="Alarm"||!!e.alarm,n=e.workflow==="running"||e.workflow==="paused",o=t?"Alarm":e.link==="stale"?"Not responding":e.workflow==="running"?"Running":e.workflow==="paused"?"Paused":e.activeState??"Connecting";Zo(Do,o,t?"alarm":e.workflow==="running"?"active":e.link==="live"?"live":""),B("wx").textContent=e.wpos?e.wpos.x.toFixed(3):"–",B("wy").textContent=e.wpos?e.wpos.y.toFixed(3):"–",B("wz").textContent=e.wpos?e.wpos.z.toFixed(3):"–",xb(ma,[["State",e.activeState??e.state],["Machine position",Jb(e.mpos)],["Work offset",e.wcs??"–"],["In CNCjs",e.loadedFile??"Nothing loaded"]]),ma.querySelector("dd").classList.toggle("alarm",t),Ee?(Ce.className="foot-note alarm",Ce.textContent=Ee):t?(Ce.className="foot-note alarm",Ce.textContent=Fb(e)):n?Ce.textContent=`${e.loadedFile??"A job"} is ${e.workflow}`:e.link==="stale"?Ce.textContent=e.state:e.activeState==="Idle"&&(Ce.textContent="Ready for a job"),t?(W.unlock.hidden=!1,W.home.hidden=!1):(W.disconnect.hidden=!1,W.disconnect.disabled=n)}async function cr(){W.refresh.disabled=!0;const e=await ar(Cs,"anc_list_ports");W.refresh.disabled=!1,nd(e.value,e.error)}function nd(e,t){t?(Ue=Ts(t),Ue||(Ee=t)):e&&(Ue=!1,e.ports&&($e=e.ports),pt=e.machine),Ps()}async function lr(){clearTimeout(ri);const e=await ar(Cs,"anc_snapshot");if(e.value){const o=Ue;Ue=!1,pt=e.value.machine,(o||!$e)&&!pt.port&&pt.cncjs.connected&&await cr()}else Ts(e.error)&&(Ue=!0);Ps();const t=pt,n=(t==null?void 0:t.port)&&(t.workflow==="running"||/^(Run|Jog|Home)$/.test(t.activeState??""));ri=window.setTimeout(lr,n?1e3:3e3)}async function ks(e,t,n={}){var s;e.disabled=!0,Ee="";const o=await ar(Cs,t,n);e.disabled=!1,o.error?(Ue=Ts(o.error),Ue||(Ee=t==="anc_connect_machine"?td(o.error,String(n.port)):o.error)):(s=o.value)!=null&&s.machine&&(pt=o.value.machine),Ps(),lr()}const Cs=zb("Agentic Numerical Control machine",e=>{var n;const t=Qu(e);if(t.error&&!Ts(t.error)&&/could not open/i.test(t.error)){Ee=td(t.error,((n=t.error.match(/open (\S+?):/))==null?void 0:n[1])??"The port"),cr();return}nd(t.value,t.error)},lr);Cs.onteardown=async()=>(clearTimeout(ri),{});W.refresh.addEventListener("click",()=>{Ee="",cr()});W.connect.addEventListener("click",()=>{We&&ks(W.connect,"anc_connect_machine",{port:We,controller:Xu.value,baudrate:Number(ed.value)})});W.disconnect.addEventListener("click",()=>ks(W.disconnect,"anc_disconnect_machine"));W.unlock.addEventListener("click",()=>ks(W.unlock,"anc_run_control",{action:"unlock"}));Mb(W.home,"Confirm home",()=>ks(W.home,"anc_run_control",{action:"home"}));for(const e of[Xu,ed])e.addEventListener("change",()=>Ee="");</script>
107
+ <style rel="stylesheet" crossorigin>@font-face{font-family:Geist;src:url(data:font/woff2;base64,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) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(data:font/woff2;base64,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) format("woff2");font-weight:100 900;font-display:swap}:root{--bg: #ffffff;--stage: #fbfbfc;--text: #111827;--muted: #6b7280;--faint: #9ca3af;--track: #f3f4f6;--line: #e5e7eb;--chip: #ffffff;--chip-shadow: 0 1px 2px rgba(0, 0, 0, .1);--ring: rgba(0, 0, 0, .1);--primary: #111827;--primary-text: #ffffff;--online: #22c55e;--online-ring: rgba(34, 197, 94, .22);--offline: #d1d5db;--error: #dc2626;--error-text: #ffffff;--error-ring: rgba(220, 38, 38, .16);--warn: #fab219;--warn-ink: #111827;--todo: #d1d5db;--grid: #eef0f2;--panel: #ffffff;--panel-shadow: 0 12px 32px -12px rgba(0, 0, 0, .18), 0 0 0 1px rgba(0, 0, 0, .05);--thumb-edge: rgba(0, 0, 0, .12);--sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Geist Mono", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;color-scheme:light}:root[data-theme=dark]{--bg: #111214;--stage: #16171a;--text: #ececec;--muted: #9ca3af;--faint: #6b7280;--track: #1d1f23;--line: #26282d;--chip: #2c2e33;--chip-shadow: 0 1px 2px rgba(0, 0, 0, .4);--ring: rgba(255, 255, 255, .14);--primary: #ececec;--primary-text: #111214;--offline: #4b5563;--error: #f87171;--error-text: #111214;--error-ring: rgba(248, 113, 113, .22);--todo: #3a3d43;--grid: #1f2125;--panel: #1d1f23;--panel-shadow: 0 12px 32px -12px rgba(0, 0, 0, .7), 0 0 0 1px rgba(255, 255, 255, .06);--thumb-edge: rgba(255, 255, 255, .12);color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;background:var(--bg);color:var(--text)}body{font:13px/1.5 var(--sans);-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--muted);outline-offset:2px}code{font-family:var(--mono)}.anc{display:flex;flex-direction:column;height:440px}.anc.fullscreen{height:100vh}button,select{font:inherit;font-weight:500;color:var(--text);border:0;cursor:pointer}button:disabled,select:disabled{opacity:.4;cursor:default}.actions>.primary,.actions>.secondary{flex:none;height:34px;padding:0 14px;border-radius:10px}.primary{background:var(--primary);color:var(--primary-text)}.secondary{background:var(--track)}.primary.confirm,.secondary.confirm{background:var(--error);color:var(--error-text)}.small{flex:none;height:30px;padding:0 12px;border-radius:8px}.toggle{height:30px;padding:0 10px;border-radius:8px;background:none;color:var(--muted)}.toggle[aria-pressed=true]{background:var(--track);color:var(--text)}.icon{flex:none;display:flex;align-items:center;justify-content:center;padding:0}.icon svg{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.icon.quiet{width:32px;height:32px;border-radius:8px;background:none;color:var(--muted)}.icon.quiet svg{stroke-width:1.5}.icon.quiet:hover{background:var(--track);color:var(--text)}.chip{width:30px;height:30px;border-radius:8px;background:var(--chip);box-shadow:var(--chip-shadow)}.dot{display:inline-block;flex:none;width:7px;height:7px;border-radius:50%;background:var(--offline)}.dot.live{background:var(--online)}.dot.faint{background:var(--faint)}select{height:30px;padding:0 8px;border-radius:8px;background:var(--track)}.segmented{display:inline-flex;gap:2px;padding:2px;border-radius:9px;background:var(--track)}.segmented button{height:26px;padding:0 10px;border-radius:7px;background:none;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--chip);color:var(--text);box-shadow:var(--chip-shadow)}.head{flex:none;display:flex;align-items:center;gap:12px;padding:12px 12px 12px 16px;min-width:0}.titles{flex:1;min-width:0;display:flex;flex-direction:column}.title{font-size:15px;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status{flex:none;display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 11px 0 10px;border-radius:999px;background:var(--track);font-weight:500;white-space:nowrap}.status i{width:7px;height:7px;border-radius:50%;background:var(--offline)}.status.live i{background:var(--online)}.status.active i{box-shadow:0 0 0 3px var(--online-ring)}.status.alarm i{background:var(--error);box-shadow:0 0 0 3px var(--error-ring)}.stage{position:relative;flex:1;min-height:0;background:var(--stage);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stage.scroll{overflow:auto}.facts{display:grid;grid-template-columns:auto 1fr;gap:5px 16px;margin:0;font-size:12px}.facts dt{color:var(--muted)}.facts dd{margin:0;font-family:var(--mono);text-align:right;overflow-wrap:anywhere}.card{padding:12px 14px;border-radius:10px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}.message{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:24px;text-align:center;background:var(--stage)}.message-title{font-size:15px;font-weight:600}.message-body{max-width:360px;color:var(--muted)}.message-body:empty{display:none}.loading-bar{position:relative;width:120px;height:3px;margin-bottom:14px;border-radius:2px;background:var(--track);overflow:hidden}.loading-bar div{position:absolute;top:0;bottom:0;width:40%;border-radius:2px;background:var(--faint);animation:slide 1.2s ease-in-out infinite}@keyframes slide{0%{left:-40%}to{left:100%}}@media(prefers-reduced-motion:reduce){.loading-bar div{animation:none;left:30%}}.foot{flex:none;display:flex;flex-direction:column;gap:8px;padding:12px 16px}.actions{display:flex;align-items:center;gap:6px;min-height:34px}.foot-note{flex:1;min-width:0;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.foot-note.alarm{color:var(--error)}.foot-link{color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.foot-link:hover{color:var(--text)}@media(max-width:520px){.head{padding-left:14px}.foot{padding:12px 14px}}.pick{padding:6px;display:flex;flex-direction:column;gap:10px}.ports{display:flex;flex-direction:column;gap:2px}.port{display:flex;align-items:center;gap:12px;min-height:52px;padding:6px 12px;border-radius:10px;cursor:pointer}.port:has(input:checked){background:var(--bg);box-shadow:inset 0 0 0 1px var(--ring)}.port input{flex:none;width:16px;height:16px;margin:0;accent-color:var(--text)}.port-text{flex:1;min-width:0;display:flex;flex-direction:column}.port-name{font-family:var(--mono);font-weight:500}.port-desc{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.port-hint{flex:none;font-size:12px;color:var(--muted)}.settings{display:flex;flex-wrap:wrap;gap:8px 16px;padding:0 12px 6px}.settings label{display:flex;align-items:center;gap:8px;color:var(--muted)}.machine{padding:16px;display:flex;flex-direction:column;gap:12px}.axes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.axis{display:flex;flex-direction:column;min-width:0;padding:10px 12px}.axis span{font-size:12px;color:var(--muted)}.axis b{font:500 20px/1.4 var(--mono);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.facts dd.alarm{color:var(--error)}@media(max-width:520px){.port-hint{display:none}.machine{padding:14px}.axis b{font-size:15px}}</style>
108
+ </head>
109
+ <body>
110
+ <main class="anc" id="root">
111
+ <header class="head">
112
+ <div class="titles">
113
+ <span class="title">Machine</span>
114
+ <span class="meta" id="meta">Pick the port your controller is on</span>
115
+ </div>
116
+ <span class="status" id="status"><i></i><span>Connecting</span></span>
117
+ </header>
118
+
119
+ <div class="stage scroll">
120
+ <div class="pick" id="pick" hidden>
121
+ <div class="ports" id="ports" role="radiogroup" aria-label="Port"></div>
122
+ <div class="settings">
123
+ <label>Controller
124
+ <select id="controller">
125
+ <option>Grbl</option><option>Marlin</option><option>Smoothie</option><option>TinyG</option><option>g2core</option>
126
+ </select>
127
+ </label>
128
+ <label>Speed
129
+ <select id="baudrate">
130
+ <option>115200</option><option>250000</option><option>57600</option><option>38400</option><option>19200</option><option>9600</option>
131
+ </select>
132
+ </label>
133
+ </div>
134
+ </div>
135
+
136
+ <div class="machine" id="machine" hidden>
137
+ <div class="axes">
138
+ <div class="axis card"><span>Work X</span><b id="wx">–</b></div>
139
+ <div class="axis card"><span>Work Y</span><b id="wy">–</b></div>
140
+ <div class="axis card"><span>Work Z</span><b id="wz">–</b></div>
141
+ </div>
142
+ <dl class="facts card" id="facts"></dl>
143
+ </div>
144
+
145
+ <div class="message" id="message">
146
+ <div class="loading-bar" id="loading-bar"><div></div></div>
147
+ <span class="message-title" id="message-title">Looking for the machine…</span>
148
+ <span class="message-body" id="message-body"></span>
149
+ </div>
150
+ </div>
151
+
152
+ <footer class="foot">
153
+ <div class="actions">
154
+ <span class="foot-note" id="note"></span>
155
+ <button class="secondary" id="refresh" hidden>Refresh</button>
156
+ <button class="primary" id="connect" hidden>Connect</button>
157
+ <button class="secondary" id="disconnect" hidden>Disconnect</button>
158
+ <button class="secondary" id="unlock" hidden>Unlock</button>
159
+ <button class="secondary" id="home" hidden>Home</button>
160
+ </div>
161
+ </footer>
162
+ </main>
163
+ </body>
164
+ </html>