@wp-playground/mcp 3.1.54 → 3.1.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/client.cjs +1 -1
- package/client.js +1 -1
- package/index.cjs +2 -2
- package/index.cjs.map +1 -1
- package/index.js +3 -2
- package/index.js.map +1 -1
- package/package.json +8 -7
- package/{tool-executors-DX_lR1Jc.cjs → tool-executors-BhDxY6BQ.cjs} +18 -5
- package/tool-executors-BhDxY6BQ.cjs.map +1 -0
- package/{tool-executors-DeiRNg9-.js → tool-executors-jX-K5l3h.js} +80 -27
- package/tool-executors-jX-K5l3h.js.map +1 -0
- package/tools/tool-executors.d.ts +24 -3
- package/tool-executors-DX_lR1Jc.cjs.map +0 -1
- package/tool-executors-DeiRNg9-.js.map +0 -1
package/README.md
CHANGED
|
@@ -179,6 +179,8 @@ The MCP bridge runs locally and is only accessible from your machine — connect
|
|
|
179
179
|
|
|
180
180
|
**Filesystem**: `playground_read_file`, `playground_write_file`, `playground_list_files`, `playground_mkdir`, `playground_delete_file`, `playground_delete_directory`, `playground_file_exists`
|
|
181
181
|
|
|
182
|
+
**Email**: `playground_list_emails`
|
|
183
|
+
|
|
182
184
|
## Development
|
|
183
185
|
|
|
184
186
|
When working on the MCP server or the Playground codebase, run from source instead:
|
package/client.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./tool-executors-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./tool-executors-BhDxY6BQ.cjs"),w=require("@php-wasm/logger"),E=5e3;function P(n,o){const a=crypto.randomUUID();let e=null,s="",t=null,u=!1;function d(f){const l=n.list(),p=JSON.stringify(l);p!==s&&(s=p,f.send(JSON.stringify({type:"register",tabId:a,sites:l})))}async function r(){try{const f=await fetch(`http://127.0.0.1:${o}/bridge-token`);if(!f.ok){c();return}const{token:l}=await f.json();e=new WebSocket(`ws://127.0.0.1:${o}?token=${l}`)}catch{c();return}e.addEventListener("open",()=>{var f;s="",d(e),(f=n.onConnect)==null||f.call(n)}),e.addEventListener("message",async f=>{let l;try{l=JSON.parse(f.data)}catch{return}if(l.type!=="command")return;const{id:p,method:h,args:S,siteSlug:_}=l;try{const y=await C(n,h,S||[],_,o);(e==null?void 0:e.readyState)===WebSocket.OPEN&&e.send(JSON.stringify({id:p,type:"response",value:y}))}catch(y){const v=y instanceof Error?y.message:String(y);(e==null?void 0:e.readyState)===WebSocket.OPEN&&e.send(JSON.stringify({id:p,type:"response",error:v}))}}),e.addEventListener("close",()=>{e=null,c()}),e.addEventListener("error",()=>{})}function c(){u||(t=setTimeout(r,E))}return r(),{notifySitesChanged:()=>{(e==null?void 0:e.readyState)===WebSocket.OPEN&&d(e)},stop:()=>{u=!0,t!==null&&(clearTimeout(t),t=null),e&&(e.close(),e=null)}}}async function C(n,o,a,e,s){if(o==="__open_site_in_new_tab"){const r=new URL(window.location.href);if(r.searchParams.set("mcp-port",String(s)),r.searchParams.set("site-slug",e),!window.open(r.toString(),"_blank"))throw new Error("Pop-up blocked by browser. The user must allow pop-ups for this site.");return!0}if(o==="__rename_site"){const[r]=a;return await n.rename(r),!0}if(o==="__save_site")return await n.saveInBrowser();const t=n.getClient();if(!t)throw new Error(`No active client for site: ${e}`);const d=i.createToolClient(t)[o];if(typeof d!="function")throw new Error(`Unknown method: ${o}`);return await d(...a)}const m=i.getSiteToolDefinitions();let g=null;function T(n){const a=n.list().find(e=>e.isActive);if(!a)throw new Error("No active Playground site");return a}async function x(n){const o=b();if(!o)return;g==null||g.abort(),g=new AbortController;const a=g,e=a.signal;function s(){const r=n.getClient();if(!r)throw new Error("No client for active site");return r}const t=Object.entries(i.toolDefinitions).map(([r,c])=>({name:r,description:c.description,inputSchema:i.paramsToJsonSchema(c.params),annotations:c.annotations,execute:async f=>{try{const l=i.toolExecutors[r];if(!l)return{error:`No executor for "${r}"`};const p=i.createToolClient(s());return await l(p,f)}catch(l){return{error:`${c.errorPrefix}: ${i.stringifyError(l)}`}}}}));t.push(...$(n));const u=await Promise.allSettled(t.map(async r=>{await o.registerTool(r,{signal:e})})),d=[];for(const[r,c]of u.entries())c.status==="rejected"&&d.push({name:t[r].name,reason:c.reason});if(d.length>0)throw a.abort(),g===a&&(g=null),new Error("Failed to register WebMCP tools: "+d.map(({name:r,reason:c})=>`${r} (${i.stringifyError(c)})`).join(", "))}function b(){if(typeof document>"u")return;const n=document.modelContext;return typeof(n==null?void 0:n.registerTool)=="function"?n:void 0}function $(n){const o=m.playground_list_sites,a=m.playground_save_in_browser,e=m.playground_rename_site,s=m.playground_get_website_url;return[{name:"playground_list_sites",description:o.description,annotations:o.annotations,execute:async()=>{try{return{connectedTabs:1,sites:n.list().map(t=>({siteId:t.slug,name:t.name,storage:i.formatStorageLabel(t.storage),isActive:t.isActive}))}}catch(t){return{error:`${o.errorPrefix}: ${i.stringifyError(t)}`}}}},{name:"playground_save_in_browser",description:a.description,annotations:a.annotations,execute:async()=>{try{const t=T(n),u=i.formatStorageLabel(t.storage);if(u!=="temporary")return{success:!0,alreadySaved:!0,siteId:t.slug,name:t.name,storage:u};const d=await n.saveInBrowser();return{success:!0,alreadySaved:!1,siteId:d.slug,name:t.name??d.slug,storage:i.formatStorageLabel(d.storage)}}catch(t){return{error:`${a.errorPrefix}: ${i.stringifyError(t)}`}}}},{name:"playground_rename_site",description:e.description,inputSchema:i.paramsToJsonSchema(e.params),annotations:e.annotations,execute:async t=>{try{const u=t.newName,r=n.list().find(c=>c.isActive);return await n.rename(u),{success:!0,siteId:r==null?void 0:r.slug,newName:u}}catch(u){return{error:`${e.errorPrefix}: ${i.stringifyError(u)}`}}}},{name:"playground_get_website_url",description:s.description,annotations:s.annotations,execute:async()=>{try{return{url:window.location.href}}catch(t){return{error:`${s.errorPrefix}: ${i.stringifyError(t)}`}}}}]}function N(n){const o=b();if(!o)return{stop:()=>{}};const a=o,e=M();let s=null,t=!1,u="";async function d(r){if(t)return;const c=JSON.stringify(r);if(c===u)return;u=c,s==null||s.abort(),s=new AbortController;const{signal:f}=s;for(const l of r){if(e.has(l.name)){w.logger.warn(`Skipping the WebMCP tool "${l.name}" registered by the site: Playground already provides a tool under that name.`);continue}try{await a.registerTool(W(n,l),{signal:f})}catch(p){w.logger.warn(`Failed to register the site's WebMCP tool "${l.name}": ${i.stringifyError(p)}`)}if(f.aborted)return}}return n.onWebMCPToolsChanged(r=>{d(r)}).catch(r=>{w.logger.warn("Failed to observe the site's WebMCP tools:",r)}),{stop(){t=!0,s==null||s.abort(),s=null,u=""}}}function M(){return new Set([...Object.keys(i.toolDefinitions),...Object.keys(i.getSiteToolDefinitions())])}function W(n,o){return{name:o.name,description:o.description,inputSchema:o.inputSchema,annotations:o.annotations,execute:async a=>{try{return await n.callWebMCPTool(o.name,a??{})}catch(e){return{error:`Error running the WordPress site's "${o.name}" tool: ${i.stringifyError(e)}`}}}}}exports.registerWebMCPTools=x;exports.startMcpBridge=P;exports.startWebMCPSiteToolProxy=N;
|
|
2
2
|
//# sourceMappingURL=client.cjs.map
|
package/client.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as b, t as S, a as E, s as p, b as _, f as w, g as v } from "./tool-executors-
|
|
1
|
+
import { c as b, t as S, a as E, s as p, b as _, f as w, g as v } from "./tool-executors-jX-K5l3h.js";
|
|
2
2
|
import { logger as h } from "@php-wasm/logger";
|
|
3
3
|
const N = 5e3;
|
|
4
4
|
function J(n, o) {
|
package/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const Rr=require("node:process"),ao=require("ws"),co=require("node:http"),uo=require("node:crypto"),Qe=require("./tool-executors-DX_lR1Jc.cjs"),$s=require("ajv"),lo=require("zod"),fo=require("module");var yn=typeof document<"u"?document.currentScript:null;function _(t,e,n){function r(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:o,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);const u=o.prototype,l=Object.keys(u);for(let f=0;f<l.length;f++){const p=l[f];p in a||(a[p]=u[p].bind(a))}}const s=(n==null?void 0:n.Parent)??Object;class i extends s{}Object.defineProperty(i,"name",{value:t});function o(a){var c;const u=n!=null&&n.Parent?new i:this;r(u,a),(c=u._zod).deferred??(c.deferred=[]);for(const l of u._zod.deferred)l();return u}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:a=>{var c,u;return n!=null&&n.Parent&&a instanceof n.Parent?!0:(u=(c=a==null?void 0:a._zod)==null?void 0:c.traits)==null?void 0:u.has(t)}}),Object.defineProperty(o,"name",{value:t}),o}class it extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Rs extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const Ps={};function Fe(t){return Ps}function Ns(t){const e=Object.values(t).filter(r=>typeof r=="number");return Object.entries(t).filter(([r,s])=>e.indexOf(+r)===-1).map(([r,s])=>s)}function $n(t,e){return typeof e=="bigint"?e.toString():e}function an(t){return{get value(){{const e=t();return Object.defineProperty(this,"value",{value:e}),e}}}}function Kn(t){return t==null}function Yn(t){const e=t.startsWith("^")?1:0,n=t.endsWith("$")?t.length-1:t.length;return t.slice(e,n)}function ho(t,e){const n=(t.toString().split(".")[1]||"").length,r=e.toString();let s=(r.split(".")[1]||"").length;if(s===0&&/\d?e-\d?/.test(r)){const c=r.match(/\d?e-(\d?)/);c!=null&&c[1]&&(s=Number.parseInt(c[1]))}const i=n>s?n:s,o=Number.parseInt(t.toFixed(i).replace(".","")),a=Number.parseInt(e.toFixed(i).replace(".",""));return o%a/10**i}const Pr=Symbol("evaluating");function W(t,e,n){let r;Object.defineProperty(t,e,{get(){if(r!==Pr)return r===void 0&&(r=Pr,r=n()),r},set(s){Object.defineProperty(t,e,{value:s})},configurable:!0})}function et(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!0,configurable:!0})}function He(...t){const e={};for(const n of t){const r=Object.getOwnPropertyDescriptors(n);Object.assign(e,r)}return Object.defineProperties({},e)}function Nr(t){return JSON.stringify(t)}function mo(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Es="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function St(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}const po=an(()=>{var t;if(typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)!=null&&t.includes("Cloudflare")))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function ot(t){if(St(t)===!1)return!1;const e=t.constructor;if(e===void 0||typeof e!="function")return!0;const n=e.prototype;return!(St(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Is(t){return ot(t)?{...t}:Array.isArray(t)?[...t]:t}const go=new Set(["string","number","symbol"]);function at(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Me(t,e,n){const r=new t._zod.constr(e??t._zod.def);return(!e||n!=null&&n.parent)&&(r._zod.parent=t),r}function P(t){const e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if((e==null?void 0:e.message)!==void 0){if((e==null?void 0:e.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function _o(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}const yo={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]};function vo(t,e){const n=t._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=He(t._zod.def,{get shape(){const o={};for(const a in e){if(!(a in n.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=n.shape[a])}return et(this,"shape",o),o},checks:[]});return Me(t,i)}function bo(t,e){const n=t._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=He(t._zod.def,{get shape(){const o={...t._zod.def.shape};for(const a in e){if(!(a in n.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete o[a]}return et(this,"shape",o),o},checks:[]});return Me(t,i)}function wo(t,e){if(!ot(e))throw new Error("Invalid input to extend: expected a plain object");const n=t._zod.def.checks;if(n&&n.length>0){const i=t._zod.def.shape;for(const o in e)if(Object.getOwnPropertyDescriptor(i,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const s=He(t._zod.def,{get shape(){const i={...t._zod.def.shape,...e};return et(this,"shape",i),i}});return Me(t,s)}function ko(t,e){if(!ot(e))throw new Error("Invalid input to safeExtend: expected a plain object");const n=He(t._zod.def,{get shape(){const r={...t._zod.def.shape,...e};return et(this,"shape",r),r}});return Me(t,n)}function So(t,e){const n=He(t._zod.def,{get shape(){const r={...t._zod.def.shape,...e._zod.def.shape};return et(this,"shape",r),r},get catchall(){return e._zod.def.catchall},checks:[]});return Me(t,n)}function To(t,e,n){const s=e._zod.def.checks;if(s&&s.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const o=He(e._zod.def,{get shape(){const a=e._zod.def.shape,c={...a};if(n)for(const u in n){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);n[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(const u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return et(this,"shape",c),c},checks:[]});return Me(e,o)}function zo(t,e,n){const r=He(e._zod.def,{get shape(){const s=e._zod.def.shape,i={...s};if(n)for(const o in n){if(!(o in i))throw new Error(`Unrecognized key: "${o}"`);n[o]&&(i[o]=new t({type:"nonoptional",innerType:s[o]}))}else for(const o in s)i[o]=new t({type:"nonoptional",innerType:s[o]});return et(this,"shape",i),i}});return Me(e,r)}function nt(t,e=0){var n;if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(((n=t.issues[r])==null?void 0:n.continue)!==!0)return!0;return!1}function rt(t,e){return e.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(t),n})}function jt(t){return typeof t=="string"?t:t==null?void 0:t.message}function Ue(t,e,n){var s,i,o,a,c,u;const r={...t,path:t.path??[]};if(!t.message){const l=jt((o=(i=(s=t.inst)==null?void 0:s._zod.def)==null?void 0:i.error)==null?void 0:o.call(i,t))??jt((a=e==null?void 0:e.error)==null?void 0:a.call(e,t))??jt((c=n.customError)==null?void 0:c.call(n,t))??jt((u=n.localeError)==null?void 0:u.call(n,t))??"Invalid input";r.message=l}return delete r.inst,delete r.continue,e!=null&&e.reportInput||delete r.input,r}function Qn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Tt(...t){const[e,n,r]=t;return typeof e=="string"?{message:e,code:"custom",input:n,inst:r}:{...e}}const Cs=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,$n,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Os=_("$ZodError",Cs),cn=_("$ZodError",Cs,{Parent:Error});function $o(t,e=n=>n.message){const n={},r=[];for(const s of t.issues)s.path.length>0?(n[s.path[0]]=n[s.path[0]]||[],n[s.path[0]].push(e(s))):r.push(e(s));return{formErrors:r,fieldErrors:n}}function Ro(t,e=n=>n.message){const n={_errors:[]},r=s=>{for(const i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(o=>r({issues:o}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)n._errors.push(e(i));else{let o=n,a=0;for(;a<i.path.length;){const c=i.path[a];a===i.path.length-1?(o[c]=o[c]||{_errors:[]},o[c]._errors.push(e(i))):o[c]=o[c]||{_errors:[]},o=o[c],a++}}};return r(t),n}const un=t=>(e,n,r,s)=>{const i=r?Object.assign(r,{async:!1}):{async:!1},o=e._zod.run({value:n,issues:[]},i);if(o instanceof Promise)throw new it;if(o.issues.length){const a=new((s==null?void 0:s.Err)??t)(o.issues.map(c=>Ue(c,i,Fe())));throw Es(a,s==null?void 0:s.callee),a}return o.value},Po=un(cn),ln=t=>async(e,n,r,s)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let o=e._zod.run({value:n,issues:[]},i);if(o instanceof Promise&&(o=await o),o.issues.length){const a=new((s==null?void 0:s.Err)??t)(o.issues.map(c=>Ue(c,i,Fe())));throw Es(a,s==null?void 0:s.callee),a}return o.value},No=ln(cn),dn=t=>(e,n,r)=>{const s=r?{...r,async:!1}:{async:!1},i=e._zod.run({value:n,issues:[]},s);if(i instanceof Promise)throw new it;return i.issues.length?{success:!1,error:new(t??Os)(i.issues.map(o=>Ue(o,s,Fe())))}:{success:!0,data:i.value}},Xn=dn(cn),fn=t=>async(e,n,r)=>{const s=r?Object.assign(r,{async:!0}):{async:!0};let i=e._zod.run({value:n,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(o=>Ue(o,s,Fe())))}:{success:!0,data:i.value}},er=fn(cn),Eo=t=>(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return un(t)(e,n,s)},Io=t=>(e,n,r)=>un(t)(e,n,r),Co=t=>async(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ln(t)(e,n,s)},Oo=t=>async(e,n,r)=>ln(t)(e,n,r),xo=t=>(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return dn(t)(e,n,s)},Zo=t=>(e,n,r)=>dn(t)(e,n,r),Ao=t=>async(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return fn(t)(e,n,s)},jo=t=>async(e,n,r)=>fn(t)(e,n,r),Mo=/^[cC][^\s-]{8,}$/,Lo=/^[0-9a-z]+$/,Do=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,qo=/^[0-9a-vA-V]{20}$/,Fo=/^[A-Za-z0-9]{27}$/,Uo=/^[a-zA-Z0-9_-]{21}$/,Vo=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ho=/^([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})$/,Er=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Jo=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Bo="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Wo(){return new RegExp(Bo,"u")}const Go=/^(?:(?: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])$/,Ko=/^(([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}|:))$/,Yo=/^((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])$/,Qo=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Xo=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,xs=/^[A-Za-z0-9_-]*$/,ea=/^\+[1-9]\d{6,14}$/,Zs="(?:(?:\\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])))",ta=new RegExp(`^${Zs}$`);function As(t){const e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function na(t){return new RegExp(`^${As(t)}$`)}function ra(t){const e=As({precision:t.precision}),n=["Z"];t.local&&n.push(""),t.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${e}(?:${n.join("|")})`;return new RegExp(`^${Zs}T(?:${r})$`)}const sa=t=>{const e=t?`[\\s\\S]{${(t==null?void 0:t.minimum)??0},${(t==null?void 0:t.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},ia=/^-?\d+$/,js=/^-?\d+(?:\.\d+)?$/,oa=/^(?:true|false)$/i,aa=/^null$/i,ca=/^[^A-Z]*$/,ua=/^[^a-z]*$/,Se=_("$ZodCheck",(t,e)=>{var n;t._zod??(t._zod={}),t._zod.def=e,(n=t._zod).onattach??(n.onattach=[])}),Ms={number:"number",bigint:"bigint",object:"date"},Ls=_("$ZodCheckLessThan",(t,e)=>{Se.init(t,e);const n=Ms[typeof e.value];t._zod.onattach.push(r=>{const s=r._zod.bag,i=(e.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<i&&(e.inclusive?s.maximum=e.value:s.exclusiveMaximum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value<=e.value:r.value<e.value)||r.issues.push({origin:n,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Ds=_("$ZodCheckGreaterThan",(t,e)=>{Se.init(t,e);const n=Ms[typeof e.value];t._zod.onattach.push(r=>{const s=r._zod.bag,i=(e.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?s.minimum=e.value:s.exclusiveMinimum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value>=e.value:r.value>e.value)||r.issues.push({origin:n,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),la=_("$ZodCheckMultipleOf",(t,e)=>{Se.init(t,e),t._zod.onattach.push(n=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=e.value)}),t._zod.check=n=>{if(typeof n.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%e.value===BigInt(0):ho(n.value,e.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:e.value,input:n.value,inst:t,continue:!e.abort})}}),da=_("$ZodCheckNumberFormat",(t,e)=>{var o;Se.init(t,e),e.format=e.format||"float64";const n=(o=e.format)==null?void 0:o.includes("int"),r=n?"int":"number",[s,i]=yo[e.format];t._zod.onattach.push(a=>{const c=a._zod.bag;c.format=e.format,c.minimum=s,c.maximum=i,n&&(c.pattern=ia)}),t._zod.check=a=>{const c=a.value;if(n){if(!Number.isInteger(c)){a.issues.push({expected:r,format:e.format,code:"invalid_type",continue:!1,input:c,inst:t});return}if(!Number.isSafeInteger(c)){c>0?a.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort}):a.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort});return}}c<s&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:s,inclusive:!0,inst:t,continue:!e.abort}),c>i&&a.issues.push({origin:"number",input:c,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),fa=_("$ZodCheckMaxLength",(t,e)=>{var n;Se.init(t,e),(n=t._zod.def).when??(n.when=r=>{const s=r.value;return!Kn(s)&&s.length!==void 0}),t._zod.onattach.push(r=>{const s=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<s&&(r._zod.bag.maximum=e.maximum)}),t._zod.check=r=>{const s=r.value;if(s.length<=e.maximum)return;const o=Qn(s);r.issues.push({origin:o,code:"too_big",maximum:e.maximum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),ha=_("$ZodCheckMinLength",(t,e)=>{var n;Se.init(t,e),(n=t._zod.def).when??(n.when=r=>{const s=r.value;return!Kn(s)&&s.length!==void 0}),t._zod.onattach.push(r=>{const s=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>s&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{const s=r.value;if(s.length>=e.minimum)return;const o=Qn(s);r.issues.push({origin:o,code:"too_small",minimum:e.minimum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),ma=_("$ZodCheckLengthEquals",(t,e)=>{var n;Se.init(t,e),(n=t._zod.def).when??(n.when=r=>{const s=r.value;return!Kn(s)&&s.length!==void 0}),t._zod.onattach.push(r=>{const s=r._zod.bag;s.minimum=e.length,s.maximum=e.length,s.length=e.length}),t._zod.check=r=>{const s=r.value,i=s.length;if(i===e.length)return;const o=Qn(s),a=i>e.length;r.issues.push({origin:o,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),hn=_("$ZodCheckStringFormat",(t,e)=>{var n,r;Se.init(t,e),t._zod.onattach.push(s=>{const i=s._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(n=t._zod).check??(n.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:e.format,input:s.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(r=t._zod).check??(r.check=()=>{})}),pa=_("$ZodCheckRegex",(t,e)=>{hn.init(t,e),t._zod.check=n=>{e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),ga=_("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=ca),hn.init(t,e)}),_a=_("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=ua),hn.init(t,e)}),ya=_("$ZodCheckIncludes",(t,e)=>{Se.init(t,e);const n=at(e.includes),r=new RegExp(typeof e.position=="number"?`^.{${e.position}}${n}`:n);e.pattern=r,t._zod.onattach.push(s=>{const i=s._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=s=>{s.value.includes(e.includes,e.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:s.value,inst:t,continue:!e.abort})}}),va=_("$ZodCheckStartsWith",(t,e)=>{Se.init(t,e);const n=new RegExp(`^${at(e.prefix)}.*`);e.pattern??(e.pattern=n),t._zod.onattach.push(r=>{const s=r._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=r=>{r.value.startsWith(e.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:r.value,inst:t,continue:!e.abort})}}),ba=_("$ZodCheckEndsWith",(t,e)=>{Se.init(t,e);const n=new RegExp(`.*${at(e.suffix)}$`);e.pattern??(e.pattern=n),t._zod.onattach.push(r=>{const s=r._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=r=>{r.value.endsWith(e.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:r.value,inst:t,continue:!e.abort})}}),wa=_("$ZodCheckOverwrite",(t,e)=>{Se.init(t,e),t._zod.check=n=>{n.value=e.tx(n.value)}});class ka{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}const r=e.split(`
|
|
1
|
+
"use strict";const Rr=require("node:process"),ao=require("ws"),co=require("node:http"),uo=require("node:crypto"),Qe=require("./tool-executors-BhDxY6BQ.cjs"),$s=require("ajv"),lo=require("zod"),fo=require("module");var yn=typeof document<"u"?document.currentScript:null;function _(t,e,n){function r(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:o,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);const u=o.prototype,l=Object.keys(u);for(let f=0;f<l.length;f++){const p=l[f];p in a||(a[p]=u[p].bind(a))}}const s=(n==null?void 0:n.Parent)??Object;class i extends s{}Object.defineProperty(i,"name",{value:t});function o(a){var c;const u=n!=null&&n.Parent?new i:this;r(u,a),(c=u._zod).deferred??(c.deferred=[]);for(const l of u._zod.deferred)l();return u}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:a=>{var c,u;return n!=null&&n.Parent&&a instanceof n.Parent?!0:(u=(c=a==null?void 0:a._zod)==null?void 0:c.traits)==null?void 0:u.has(t)}}),Object.defineProperty(o,"name",{value:t}),o}class it extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Rs extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const Ps={};function Fe(t){return Ps}function Ns(t){const e=Object.values(t).filter(r=>typeof r=="number");return Object.entries(t).filter(([r,s])=>e.indexOf(+r)===-1).map(([r,s])=>s)}function $n(t,e){return typeof e=="bigint"?e.toString():e}function an(t){return{get value(){{const e=t();return Object.defineProperty(this,"value",{value:e}),e}}}}function Kn(t){return t==null}function Yn(t){const e=t.startsWith("^")?1:0,n=t.endsWith("$")?t.length-1:t.length;return t.slice(e,n)}function ho(t,e){const n=(t.toString().split(".")[1]||"").length,r=e.toString();let s=(r.split(".")[1]||"").length;if(s===0&&/\d?e-\d?/.test(r)){const c=r.match(/\d?e-(\d?)/);c!=null&&c[1]&&(s=Number.parseInt(c[1]))}const i=n>s?n:s,o=Number.parseInt(t.toFixed(i).replace(".","")),a=Number.parseInt(e.toFixed(i).replace(".",""));return o%a/10**i}const Pr=Symbol("evaluating");function W(t,e,n){let r;Object.defineProperty(t,e,{get(){if(r!==Pr)return r===void 0&&(r=Pr,r=n()),r},set(s){Object.defineProperty(t,e,{value:s})},configurable:!0})}function et(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!0,configurable:!0})}function He(...t){const e={};for(const n of t){const r=Object.getOwnPropertyDescriptors(n);Object.assign(e,r)}return Object.defineProperties({},e)}function Nr(t){return JSON.stringify(t)}function mo(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Es="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function St(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}const po=an(()=>{var t;if(typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)!=null&&t.includes("Cloudflare")))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function ot(t){if(St(t)===!1)return!1;const e=t.constructor;if(e===void 0||typeof e!="function")return!0;const n=e.prototype;return!(St(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Is(t){return ot(t)?{...t}:Array.isArray(t)?[...t]:t}const go=new Set(["string","number","symbol"]);function at(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Me(t,e,n){const r=new t._zod.constr(e??t._zod.def);return(!e||n!=null&&n.parent)&&(r._zod.parent=t),r}function P(t){const e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if((e==null?void 0:e.message)!==void 0){if((e==null?void 0:e.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function _o(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}const yo={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]};function vo(t,e){const n=t._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=He(t._zod.def,{get shape(){const o={};for(const a in e){if(!(a in n.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=n.shape[a])}return et(this,"shape",o),o},checks:[]});return Me(t,i)}function bo(t,e){const n=t._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=He(t._zod.def,{get shape(){const o={...t._zod.def.shape};for(const a in e){if(!(a in n.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete o[a]}return et(this,"shape",o),o},checks:[]});return Me(t,i)}function wo(t,e){if(!ot(e))throw new Error("Invalid input to extend: expected a plain object");const n=t._zod.def.checks;if(n&&n.length>0){const i=t._zod.def.shape;for(const o in e)if(Object.getOwnPropertyDescriptor(i,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const s=He(t._zod.def,{get shape(){const i={...t._zod.def.shape,...e};return et(this,"shape",i),i}});return Me(t,s)}function ko(t,e){if(!ot(e))throw new Error("Invalid input to safeExtend: expected a plain object");const n=He(t._zod.def,{get shape(){const r={...t._zod.def.shape,...e};return et(this,"shape",r),r}});return Me(t,n)}function So(t,e){const n=He(t._zod.def,{get shape(){const r={...t._zod.def.shape,...e._zod.def.shape};return et(this,"shape",r),r},get catchall(){return e._zod.def.catchall},checks:[]});return Me(t,n)}function To(t,e,n){const s=e._zod.def.checks;if(s&&s.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const o=He(e._zod.def,{get shape(){const a=e._zod.def.shape,c={...a};if(n)for(const u in n){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);n[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(const u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return et(this,"shape",c),c},checks:[]});return Me(e,o)}function zo(t,e,n){const r=He(e._zod.def,{get shape(){const s=e._zod.def.shape,i={...s};if(n)for(const o in n){if(!(o in i))throw new Error(`Unrecognized key: "${o}"`);n[o]&&(i[o]=new t({type:"nonoptional",innerType:s[o]}))}else for(const o in s)i[o]=new t({type:"nonoptional",innerType:s[o]});return et(this,"shape",i),i}});return Me(e,r)}function nt(t,e=0){var n;if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(((n=t.issues[r])==null?void 0:n.continue)!==!0)return!0;return!1}function rt(t,e){return e.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(t),n})}function jt(t){return typeof t=="string"?t:t==null?void 0:t.message}function Ue(t,e,n){var s,i,o,a,c,u;const r={...t,path:t.path??[]};if(!t.message){const l=jt((o=(i=(s=t.inst)==null?void 0:s._zod.def)==null?void 0:i.error)==null?void 0:o.call(i,t))??jt((a=e==null?void 0:e.error)==null?void 0:a.call(e,t))??jt((c=n.customError)==null?void 0:c.call(n,t))??jt((u=n.localeError)==null?void 0:u.call(n,t))??"Invalid input";r.message=l}return delete r.inst,delete r.continue,e!=null&&e.reportInput||delete r.input,r}function Qn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Tt(...t){const[e,n,r]=t;return typeof e=="string"?{message:e,code:"custom",input:n,inst:r}:{...e}}const Cs=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,$n,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Os=_("$ZodError",Cs),cn=_("$ZodError",Cs,{Parent:Error});function $o(t,e=n=>n.message){const n={},r=[];for(const s of t.issues)s.path.length>0?(n[s.path[0]]=n[s.path[0]]||[],n[s.path[0]].push(e(s))):r.push(e(s));return{formErrors:r,fieldErrors:n}}function Ro(t,e=n=>n.message){const n={_errors:[]},r=s=>{for(const i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(o=>r({issues:o}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)n._errors.push(e(i));else{let o=n,a=0;for(;a<i.path.length;){const c=i.path[a];a===i.path.length-1?(o[c]=o[c]||{_errors:[]},o[c]._errors.push(e(i))):o[c]=o[c]||{_errors:[]},o=o[c],a++}}};return r(t),n}const un=t=>(e,n,r,s)=>{const i=r?Object.assign(r,{async:!1}):{async:!1},o=e._zod.run({value:n,issues:[]},i);if(o instanceof Promise)throw new it;if(o.issues.length){const a=new((s==null?void 0:s.Err)??t)(o.issues.map(c=>Ue(c,i,Fe())));throw Es(a,s==null?void 0:s.callee),a}return o.value},Po=un(cn),ln=t=>async(e,n,r,s)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let o=e._zod.run({value:n,issues:[]},i);if(o instanceof Promise&&(o=await o),o.issues.length){const a=new((s==null?void 0:s.Err)??t)(o.issues.map(c=>Ue(c,i,Fe())));throw Es(a,s==null?void 0:s.callee),a}return o.value},No=ln(cn),dn=t=>(e,n,r)=>{const s=r?{...r,async:!1}:{async:!1},i=e._zod.run({value:n,issues:[]},s);if(i instanceof Promise)throw new it;return i.issues.length?{success:!1,error:new(t??Os)(i.issues.map(o=>Ue(o,s,Fe())))}:{success:!0,data:i.value}},Xn=dn(cn),fn=t=>async(e,n,r)=>{const s=r?Object.assign(r,{async:!0}):{async:!0};let i=e._zod.run({value:n,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(o=>Ue(o,s,Fe())))}:{success:!0,data:i.value}},er=fn(cn),Eo=t=>(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return un(t)(e,n,s)},Io=t=>(e,n,r)=>un(t)(e,n,r),Co=t=>async(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ln(t)(e,n,s)},Oo=t=>async(e,n,r)=>ln(t)(e,n,r),xo=t=>(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return dn(t)(e,n,s)},Zo=t=>(e,n,r)=>dn(t)(e,n,r),Ao=t=>async(e,n,r)=>{const s=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return fn(t)(e,n,s)},jo=t=>async(e,n,r)=>fn(t)(e,n,r),Mo=/^[cC][^\s-]{8,}$/,Lo=/^[0-9a-z]+$/,Do=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,qo=/^[0-9a-vA-V]{20}$/,Fo=/^[A-Za-z0-9]{27}$/,Uo=/^[a-zA-Z0-9_-]{21}$/,Vo=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ho=/^([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})$/,Er=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Jo=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Bo="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Wo(){return new RegExp(Bo,"u")}const Go=/^(?:(?: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])$/,Ko=/^(([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}|:))$/,Yo=/^((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])$/,Qo=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Xo=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,xs=/^[A-Za-z0-9_-]*$/,ea=/^\+[1-9]\d{6,14}$/,Zs="(?:(?:\\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])))",ta=new RegExp(`^${Zs}$`);function As(t){const e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function na(t){return new RegExp(`^${As(t)}$`)}function ra(t){const e=As({precision:t.precision}),n=["Z"];t.local&&n.push(""),t.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${e}(?:${n.join("|")})`;return new RegExp(`^${Zs}T(?:${r})$`)}const sa=t=>{const e=t?`[\\s\\S]{${(t==null?void 0:t.minimum)??0},${(t==null?void 0:t.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},ia=/^-?\d+$/,js=/^-?\d+(?:\.\d+)?$/,oa=/^(?:true|false)$/i,aa=/^null$/i,ca=/^[^A-Z]*$/,ua=/^[^a-z]*$/,Se=_("$ZodCheck",(t,e)=>{var n;t._zod??(t._zod={}),t._zod.def=e,(n=t._zod).onattach??(n.onattach=[])}),Ms={number:"number",bigint:"bigint",object:"date"},Ls=_("$ZodCheckLessThan",(t,e)=>{Se.init(t,e);const n=Ms[typeof e.value];t._zod.onattach.push(r=>{const s=r._zod.bag,i=(e.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<i&&(e.inclusive?s.maximum=e.value:s.exclusiveMaximum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value<=e.value:r.value<e.value)||r.issues.push({origin:n,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Ds=_("$ZodCheckGreaterThan",(t,e)=>{Se.init(t,e);const n=Ms[typeof e.value];t._zod.onattach.push(r=>{const s=r._zod.bag,i=(e.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?s.minimum=e.value:s.exclusiveMinimum=e.value)}),t._zod.check=r=>{(e.inclusive?r.value>=e.value:r.value>e.value)||r.issues.push({origin:n,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:r.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),la=_("$ZodCheckMultipleOf",(t,e)=>{Se.init(t,e),t._zod.onattach.push(n=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=e.value)}),t._zod.check=n=>{if(typeof n.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%e.value===BigInt(0):ho(n.value,e.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:e.value,input:n.value,inst:t,continue:!e.abort})}}),da=_("$ZodCheckNumberFormat",(t,e)=>{var o;Se.init(t,e),e.format=e.format||"float64";const n=(o=e.format)==null?void 0:o.includes("int"),r=n?"int":"number",[s,i]=yo[e.format];t._zod.onattach.push(a=>{const c=a._zod.bag;c.format=e.format,c.minimum=s,c.maximum=i,n&&(c.pattern=ia)}),t._zod.check=a=>{const c=a.value;if(n){if(!Number.isInteger(c)){a.issues.push({expected:r,format:e.format,code:"invalid_type",continue:!1,input:c,inst:t});return}if(!Number.isSafeInteger(c)){c>0?a.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort}):a.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:r,inclusive:!0,continue:!e.abort});return}}c<s&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:s,inclusive:!0,inst:t,continue:!e.abort}),c>i&&a.issues.push({origin:"number",input:c,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),fa=_("$ZodCheckMaxLength",(t,e)=>{var n;Se.init(t,e),(n=t._zod.def).when??(n.when=r=>{const s=r.value;return!Kn(s)&&s.length!==void 0}),t._zod.onattach.push(r=>{const s=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<s&&(r._zod.bag.maximum=e.maximum)}),t._zod.check=r=>{const s=r.value;if(s.length<=e.maximum)return;const o=Qn(s);r.issues.push({origin:o,code:"too_big",maximum:e.maximum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),ha=_("$ZodCheckMinLength",(t,e)=>{var n;Se.init(t,e),(n=t._zod.def).when??(n.when=r=>{const s=r.value;return!Kn(s)&&s.length!==void 0}),t._zod.onattach.push(r=>{const s=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>s&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{const s=r.value;if(s.length>=e.minimum)return;const o=Qn(s);r.issues.push({origin:o,code:"too_small",minimum:e.minimum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),ma=_("$ZodCheckLengthEquals",(t,e)=>{var n;Se.init(t,e),(n=t._zod.def).when??(n.when=r=>{const s=r.value;return!Kn(s)&&s.length!==void 0}),t._zod.onattach.push(r=>{const s=r._zod.bag;s.minimum=e.length,s.maximum=e.length,s.length=e.length}),t._zod.check=r=>{const s=r.value,i=s.length;if(i===e.length)return;const o=Qn(s),a=i>e.length;r.issues.push({origin:o,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),hn=_("$ZodCheckStringFormat",(t,e)=>{var n,r;Se.init(t,e),t._zod.onattach.push(s=>{const i=s._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(n=t._zod).check??(n.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:e.format,input:s.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(r=t._zod).check??(r.check=()=>{})}),pa=_("$ZodCheckRegex",(t,e)=>{hn.init(t,e),t._zod.check=n=>{e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),ga=_("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=ca),hn.init(t,e)}),_a=_("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=ua),hn.init(t,e)}),ya=_("$ZodCheckIncludes",(t,e)=>{Se.init(t,e);const n=at(e.includes),r=new RegExp(typeof e.position=="number"?`^.{${e.position}}${n}`:n);e.pattern=r,t._zod.onattach.push(s=>{const i=s._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=s=>{s.value.includes(e.includes,e.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:s.value,inst:t,continue:!e.abort})}}),va=_("$ZodCheckStartsWith",(t,e)=>{Se.init(t,e);const n=new RegExp(`^${at(e.prefix)}.*`);e.pattern??(e.pattern=n),t._zod.onattach.push(r=>{const s=r._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=r=>{r.value.startsWith(e.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:r.value,inst:t,continue:!e.abort})}}),ba=_("$ZodCheckEndsWith",(t,e)=>{Se.init(t,e);const n=new RegExp(`.*${at(e.suffix)}$`);e.pattern??(e.pattern=n),t._zod.onattach.push(r=>{const s=r._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=r=>{r.value.endsWith(e.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:r.value,inst:t,continue:!e.abort})}}),wa=_("$ZodCheckOverwrite",(t,e)=>{Se.init(t,e),t._zod.check=n=>{n.value=e.tx(n.value)}});class ka{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}const r=e.split(`
|
|
2
2
|
`).filter(o=>o),s=Math.min(...r.map(o=>o.length-o.trimStart().length)),i=r.map(o=>o.slice(s)).map(o=>" ".repeat(this.indent*2)+o);for(const o of i)this.content.push(o)}compile(){const e=Function,n=this==null?void 0:this.args,s=[...((this==null?void 0:this.content)??[""]).map(i=>` ${i}`)];return new e(...n,s.join(`
|
|
3
3
|
`))}}const Sa={major:4,minor:3,patch:6},ee=_("$ZodType",(t,e)=>{var s;var n;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Sa;const r=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&r.unshift(t);for(const i of r)for(const o of i._zod.onattach)o(t);if(r.length===0)(n=t._zod).deferred??(n.deferred=[]),(s=t._zod.deferred)==null||s.push(()=>{t._zod.run=t._zod.parse});else{const i=(a,c,u)=>{let l=nt(a),f;for(const p of c){if(p._zod.def.when){if(!p._zod.def.when(a))continue}else if(l)continue;const m=a.issues.length,v=p._zod.check(a);if(v instanceof Promise&&(u==null?void 0:u.async)===!1)throw new it;if(f||v instanceof Promise)f=(f??Promise.resolve()).then(async()=>{await v,a.issues.length!==m&&(l||(l=nt(a,m)))});else{if(a.issues.length===m)continue;l||(l=nt(a,m))}}return f?f.then(()=>a):a},o=(a,c,u)=>{if(nt(a))return a.aborted=!0,a;const l=i(c,r,u);if(l instanceof Promise){if(u.async===!1)throw new it;return l.then(f=>t._zod.parse(f,u))}return t._zod.parse(l,u)};t._zod.run=(a,c)=>{if(c.skipChecks)return t._zod.parse(a,c);if(c.direction==="backward"){const l=t._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});return l instanceof Promise?l.then(f=>o(f,a,c)):o(l,a,c)}const u=t._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new it;return u.then(l=>i(l,r,c))}return i(u,r,c)}}W(t,"~standard",()=>({validate:i=>{var o;try{const a=Xn(t,i);return a.success?{value:a.data}:{issues:(o=a.error)==null?void 0:o.issues}}catch{return er(t,i).then(c=>{var u;return c.success?{value:c.data}:{issues:(u=c.error)==null?void 0:u.issues}})}},vendor:"zod",version:1}))}),tr=_("$ZodString",(t,e)=>{var n;ee.init(t,e),t._zod.pattern=[...((n=t==null?void 0:t._zod.bag)==null?void 0:n.patterns)??[]].pop()??sa(t._zod.bag),t._zod.parse=(r,s)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ne=_("$ZodStringFormat",(t,e)=>{hn.init(t,e),tr.init(t,e)}),Ta=_("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Ho),ne.init(t,e)}),za=_("$ZodUUID",(t,e)=>{if(e.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(r===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Er(r))}else e.pattern??(e.pattern=Er());ne.init(t,e)}),$a=_("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Jo),ne.init(t,e)}),Ra=_("$ZodURL",(t,e)=>{ne.init(t,e),t._zod.check=n=>{try{const r=n.value.trim(),s=new URL(r);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(s.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:n.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:n.value,inst:t,continue:!e.abort})),e.normalize?n.value=s.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:t,continue:!e.abort})}}}),Pa=_("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Wo()),ne.init(t,e)}),Na=_("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Uo),ne.init(t,e)}),Ea=_("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Mo),ne.init(t,e)}),Ia=_("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Lo),ne.init(t,e)}),Ca=_("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Do),ne.init(t,e)}),Oa=_("$ZodXID",(t,e)=>{e.pattern??(e.pattern=qo),ne.init(t,e)}),xa=_("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Fo),ne.init(t,e)}),Za=_("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=ra(e)),ne.init(t,e)}),Aa=_("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=ta),ne.init(t,e)}),ja=_("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=na(e)),ne.init(t,e)}),Ma=_("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Vo),ne.init(t,e)}),La=_("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Go),ne.init(t,e),t._zod.bag.format="ipv4"}),Da=_("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ko),ne.init(t,e),t._zod.bag.format="ipv6",t._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:t,continue:!e.abort})}}}),qa=_("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Yo),ne.init(t,e)}),Fa=_("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Qo),ne.init(t,e),t._zod.check=n=>{const r=n.value.split("/");try{if(r.length!==2)throw new Error;const[s,i]=r;if(!i)throw new Error;const o=Number(i);if(`${o}`!==i)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${s}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:t,continue:!e.abort})}}});function qs(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}const Ua=_("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Xo),ne.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=n=>{qs(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:t,continue:!e.abort})}});function Va(t){if(!xs.test(t))return!1;const e=t.replace(/[-_]/g,r=>r==="-"?"+":"/"),n=e.padEnd(Math.ceil(e.length/4)*4,"=");return qs(n)}const Ha=_("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=xs),ne.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=n=>{Va(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:t,continue:!e.abort})}}),Ja=_("$ZodE164",(t,e)=>{e.pattern??(e.pattern=ea),ne.init(t,e)});function Ba(t,e=null){try{const n=t.split(".");if(n.length!==3)return!1;const[r]=n;if(!r)return!1;const s=JSON.parse(atob(r));return!("typ"in s&&(s==null?void 0:s.typ)!=="JWT"||!s.alg||e&&(!("alg"in s)||s.alg!==e))}catch{return!1}}const Wa=_("$ZodJWT",(t,e)=>{ne.init(t,e),t._zod.check=n=>{Ba(n.value,e.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:t,continue:!e.abort})}}),Fs=_("$ZodNumber",(t,e)=>{ee.init(t,e),t._zod.pattern=t._zod.bag.pattern??js,t._zod.parse=(n,r)=>{if(e.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:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:s,inst:t,...i?{received:i}:{}}),n}}),Ga=_("$ZodNumberFormat",(t,e)=>{da.init(t,e),Fs.init(t,e)}),Ka=_("$ZodBoolean",(t,e)=>{ee.init(t,e),t._zod.pattern=oa,t._zod.parse=(n,r)=>{if(e.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:t}),n}}),Ya=_("$ZodNull",(t,e)=>{ee.init(t,e),t._zod.pattern=aa,t._zod.values=new Set([null]),t._zod.parse=(n,r)=>{const s=n.value;return s===null||n.issues.push({expected:"null",code:"invalid_type",input:s,inst:t}),n}}),Qa=_("$ZodUnknown",(t,e)=>{ee.init(t,e),t._zod.parse=n=>n}),Xa=_("$ZodNever",(t,e)=>{ee.init(t,e),t._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:t}),n)});function Ir(t,e,n){t.issues.length&&e.issues.push(...rt(n,t.issues)),e.value[n]=t.value}const ec=_("$ZodArray",(t,e)=>{ee.init(t,e),t._zod.parse=(n,r)=>{const s=n.value;if(!Array.isArray(s))return n.issues.push({expected:"array",code:"invalid_type",input:s,inst:t}),n;n.value=Array(s.length);const i=[];for(let o=0;o<s.length;o++){const a=s[o],c=e.element._zod.run({value:a,issues:[]},r);c instanceof Promise?i.push(c.then(u=>Ir(u,n,o))):Ir(c,n,o)}return i.length?Promise.all(i).then(()=>n):n}});function qt(t,e,n,r,s){if(t.issues.length){if(s&&!(n in r))return;e.issues.push(...rt(n,t.issues))}t.value===void 0?n in r&&(e.value[n]=void 0):e.value[n]=t.value}function Us(t){var r,s,i,o;const e=Object.keys(t.shape);for(const a of e)if(!((o=(i=(s=(r=t.shape)==null?void 0:r[a])==null?void 0:s._zod)==null?void 0:i.traits)!=null&&o.has("$ZodType")))throw new Error(`Invalid element at key "${a}": expected a Zod schema`);const n=_o(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(n)}}function Vs(t,e,n,r,s,i){const o=[],a=s.keySet,c=s.catchall._zod,u=c.def.type,l=c.optout==="optional";for(const f in e){if(a.has(f))continue;if(u==="never"){o.push(f);continue}const p=c.run({value:e[f],issues:[]},r);p instanceof Promise?t.push(p.then(m=>qt(m,n,f,e,l))):qt(p,n,f,e,l)}return o.length&&n.issues.push({code:"unrecognized_keys",keys:o,input:e,inst:i}),t.length?Promise.all(t).then(()=>n):n}const Hs=_("$ZodObject",(t,e)=>{ee.init(t,e);const n=Object.getOwnPropertyDescriptor(e,"shape");if(!(n!=null&&n.get)){const a=e.shape;Object.defineProperty(e,"shape",{get:()=>{const c={...a};return Object.defineProperty(e,"shape",{value:c}),c}})}const r=an(()=>Us(e));W(t._zod,"propValues",()=>{const a=e.shape,c={};for(const u in a){const l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(const f of l.values)c[u].add(f)}}return c});const s=St,i=e.catchall;let o;t._zod.parse=(a,c)=>{o??(o=r.value);const u=a.value;if(!s(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),a;a.value={};const l=[],f=o.shape;for(const p of o.keys){const m=f[p],v=m._zod.optout==="optional",T=m._zod.run({value:u[p],issues:[]},c);T instanceof Promise?l.push(T.then(x=>qt(x,a,p,u,v))):qt(T,a,p,u,v)}return i?Vs(l,u,a,c,r.value,t):l.length?Promise.all(l).then(()=>a):a}}),tc=_("$ZodObjectJIT",(t,e)=>{Hs.init(t,e);const n=t._zod.parse,r=an(()=>Us(e)),s=p=>{var A;const m=new ka(["shape","payload","ctx"]),v=r.value,T=j=>{const L=Nr(j);return`shape[${L}]._zod.run({ value: input[${L}], issues: [] }, ctx)`};m.write("const input = payload.value;");const x=Object.create(null);let b=0;for(const j of v.keys)x[j]=`key_${b++}`;m.write("const newResult = {};");for(const j of v.keys){const L=x[j],ue=Nr(j),K=p[j],_e=((A=K==null?void 0:K._zod)==null?void 0:A.optout)==="optional";m.write(`const ${L} = ${T(j)};`),_e?m.write(`
|
|
4
4
|
if (${L}.issues.length) {
|
|
@@ -53,5 +53,5 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
53
53
|
|
|
54
54
|
Important: sites are temporary by default and not persisted between sessions. Call playground_save_in_browser early in any multi-step workflow where losing progress would be costly.
|
|
55
55
|
|
|
56
|
-
Error handling: tool failures are returned as thrown exceptions with descriptive messages, not as silent failures.`})}function yt(t,e){return{content:[{type:"text",text:`${t}: ${Qe.stringifyError(e)}`}],isError:!0}}const Gn=wt().describe("Target site ID. Call playground_list_sites first to discover available site IDs.");function zs(t){const e={siteId:Gn};for(const n of t){let r;switch(n.type){case"string":r=wt();break;case"boolean":r=sh();break;case"object":r=ls(wt(),us());break;case"string_or_object":r=ih([wt(),ls(wt(),us())]);break;default:throw new Error(`Unknown param type "${n.type}" for "${n.name}"`)}n.required||(r=r.optional(),n.default!==void 0&&(r=r.default(n.default))),r=r.describe(n.description),e[n.name]=r}return e}function _m(t,e,n,r){const s=e.sendCommand.bind(e),i=Qe.getSiteToolDefinitions(),o=Qe.playgroundUrl(n,r),a=i.playground_list_sites;t.registerTool("playground_list_sites",{title:a.title,description:a.description,inputSchema:Vn({}),annotations:a.annotations},async()=>{const p=e.getTabCount(),m=e.listSites();return m.length===0?{content:[{type:"text",text:JSON.stringify({connectedTabs:p,sites:[],message:e.isConnected()?"No sites are loaded.":`No browser connected. Open the Playground website at ${o} to connect.`})}]}:{content:[{type:"text",text:JSON.stringify({connectedTabs:p,sites:m.map(v=>({siteId:v.siteId,name:v.name,storage:v.storage,isActive:v.isActive,url:o}))})}]}});const c=i.playground_open_site_in_new_tab;t.registerTool("playground_open_site_in_new_tab",{title:c.title,description:c.description,inputSchema:{siteId:Gn},annotations:c.annotations},async({siteId:p})=>{try{await e.sendCommand(p,"__open_site_in_new_tab");const m=await e.waitForSiteActive(p,3e4);return{content:[{type:"text",text:JSON.stringify({siteId:p,name:m.siteName,isActive:!0})}]}}catch(m){return yt(c.errorPrefix,m)}});const u=i.playground_rename_site;t.registerTool("playground_rename_site",{title:u.title,description:u.description,inputSchema:zs(u.params),annotations:u.annotations},async({siteId:p,newName:m})=>{try{return await e.sendCommand(p,"__rename_site",[m]),{content:[{type:"text",text:JSON.stringify({success:!0,siteId:p,newName:m})}]}}catch(v){return yt(u.errorPrefix,v)}});const l=i.playground_get_website_url;t.registerTool("playground_get_website_url",{title:l.title,description:l.description,inputSchema:Vn({}),annotations:l.annotations},async()=>({content:[{type:"text",text:JSON.stringify({url:o})}]}));const f=i.playground_save_in_browser;t.registerTool("playground_save_in_browser",{title:f.title,description:f.description,inputSchema:{siteId:Gn},annotations:f.annotations},async({siteId:p})=>{try{const v=e.listSites().find(x=>x.siteId===p);if(!v)return yt("Error saving site",new Error(`Unknown site: ${p}`));if(v.storage!=="temporary")return{content:[{type:"text",text:JSON.stringify({success:!0,alreadySaved:!0,siteId:p,name:v.name,storage:v.storage})}]};const T=await e.sendCommand(p,"__save_site");return{content:[{type:"text",text:JSON.stringify({success:!0,alreadySaved:!1,siteId:p,name:v.name,storage:Qe.formatStorageLabel(T.storage)})}]}}catch(m){return yt(f.errorPrefix,m)}});for(const[p,m]of Object.entries(Qe.toolDefinitions)){const v=Qe.toolExecutors[p];v&&t.registerTool(p,{title:m.title,description:m.description,inputSchema:zs(m.params),annotations:m.annotations},async T=>{const{siteId:x,...b}=T;try{const y=x,j=await v({run:(...L)=>s(y,"run",L),request:(...L)=>s(y,"request",L),goTo:(...L)=>s(y,"goTo",L),getCurrentURL:()=>s(y,"getCurrentURL",[]),readFileAsText:(...L)=>s(y,"readFileAsText",L),writeFile:(...L)=>s(y,"writeFile",L),listFiles:(...L)=>s(y,"listFiles",L),mkdirTree:(...L)=>s(y,"mkdirTree",L),unlink:(...L)=>s(y,"unlink",L),rmdir:(...L)=>s(y,"rmdir",L),fileExists:(...L)=>s(y,"fileExists",L)},b);return{content:[{type:"text",text:JSON.stringify(j)}]}}catch(y){return yt(m.errorPrefix,y)}})}}function ym(){const t=process.argv.find(e=>e.startsWith("--port="));return t?Number(t.split("=")[1]):0}function vm(){const t=process.argv.find(n=>n.startsWith("--url="));if(!t)return;const e=t.split("=").slice(1).join("=");try{return new URL(e)}catch{throw new Error(`Invalid --url: "${e}" must be an absolute URL.`)}}async function bm(){const t=vm(),e=new If(t?[t.href]:[]);await e.startWebSocketServer(ym());const n=e.getPort(),r=gm();_m(r,e,n,t==null?void 0:t.href);const s=new Nf;await r.connect(s),console.error("[MCP] WordPress Playground MCP server running on stdio")}bm().catch(t=>{console.error("Fatal error:",t),process.exit(1)});
|
|
56
|
+
Error handling: tool failures are returned as thrown exceptions with descriptive messages, not as silent failures.`})}function yt(t,e){return{content:[{type:"text",text:`${t}: ${Qe.stringifyError(e)}`}],isError:!0}}const Gn=wt().describe("Target site ID. Call playground_list_sites first to discover available site IDs.");function zs(t){const e={siteId:Gn};for(const n of t){let r;switch(n.type){case"string":r=wt();break;case"boolean":r=sh();break;case"object":r=ls(wt(),us());break;case"string_or_object":r=ih([wt(),ls(wt(),us())]);break;default:throw new Error(`Unknown param type "${n.type}" for "${n.name}"`)}n.required||(r=r.optional(),n.default!==void 0&&(r=r.default(n.default))),r=r.describe(n.description),e[n.name]=r}return e}function _m(t,e,n,r){const s=e.sendCommand.bind(e),i=Qe.getSiteToolDefinitions(),o=Qe.playgroundUrl(n,r),a=i.playground_list_sites;t.registerTool("playground_list_sites",{title:a.title,description:a.description,inputSchema:Vn({}),annotations:a.annotations},async()=>{const p=e.getTabCount(),m=e.listSites();return m.length===0?{content:[{type:"text",text:JSON.stringify({connectedTabs:p,sites:[],message:e.isConnected()?"No sites are loaded.":`No browser connected. Open the Playground website at ${o} to connect.`})}]}:{content:[{type:"text",text:JSON.stringify({connectedTabs:p,sites:m.map(v=>({siteId:v.siteId,name:v.name,storage:v.storage,isActive:v.isActive,url:o}))})}]}});const c=i.playground_open_site_in_new_tab;t.registerTool("playground_open_site_in_new_tab",{title:c.title,description:c.description,inputSchema:{siteId:Gn},annotations:c.annotations},async({siteId:p})=>{try{await e.sendCommand(p,"__open_site_in_new_tab");const m=await e.waitForSiteActive(p,3e4);return{content:[{type:"text",text:JSON.stringify({siteId:p,name:m.siteName,isActive:!0})}]}}catch(m){return yt(c.errorPrefix,m)}});const u=i.playground_rename_site;t.registerTool("playground_rename_site",{title:u.title,description:u.description,inputSchema:zs(u.params),annotations:u.annotations},async({siteId:p,newName:m})=>{try{return await e.sendCommand(p,"__rename_site",[m]),{content:[{type:"text",text:JSON.stringify({success:!0,siteId:p,newName:m})}]}}catch(v){return yt(u.errorPrefix,v)}});const l=i.playground_get_website_url;t.registerTool("playground_get_website_url",{title:l.title,description:l.description,inputSchema:Vn({}),annotations:l.annotations},async()=>({content:[{type:"text",text:JSON.stringify({url:o})}]}));const f=i.playground_save_in_browser;t.registerTool("playground_save_in_browser",{title:f.title,description:f.description,inputSchema:{siteId:Gn},annotations:f.annotations},async({siteId:p})=>{try{const v=e.listSites().find(x=>x.siteId===p);if(!v)return yt("Error saving site",new Error(`Unknown site: ${p}`));if(v.storage!=="temporary")return{content:[{type:"text",text:JSON.stringify({success:!0,alreadySaved:!0,siteId:p,name:v.name,storage:v.storage})}]};const T=await e.sendCommand(p,"__save_site");return{content:[{type:"text",text:JSON.stringify({success:!0,alreadySaved:!1,siteId:p,name:v.name,storage:Qe.formatStorageLabel(T.storage)})}]}}catch(m){return yt(f.errorPrefix,m)}});for(const[p,m]of Object.entries(Qe.toolDefinitions)){const v=Qe.toolExecutors[p];v&&t.registerTool(p,{title:m.title,description:m.description,inputSchema:zs(m.params),annotations:m.annotations},async T=>{const{siteId:x,...b}=T;try{const y=x,j=await v({run:(...L)=>s(y,"run",L),request:(...L)=>s(y,"request",L),goTo:(...L)=>s(y,"goTo",L),getCurrentURL:()=>s(y,"getCurrentURL",[]),readFileAsText:(...L)=>s(y,"readFileAsText",L),writeFile:(...L)=>s(y,"writeFile",L),listFiles:(...L)=>s(y,"listFiles",L),mkdirTree:(...L)=>s(y,"mkdirTree",L),unlink:(...L)=>s(y,"unlink",L),rmdir:(...L)=>s(y,"rmdir",L),fileExists:(...L)=>s(y,"fileExists",L),listEmails:()=>s(y,"listEmails",[])},b);return{content:[{type:"text",text:JSON.stringify(j)}]}}catch(y){return yt(m.errorPrefix,y)}})}}function ym(){const t=process.argv.find(e=>e.startsWith("--port="));return t?Number(t.split("=")[1]):0}function vm(){const t=process.argv.find(n=>n.startsWith("--url="));if(!t)return;const e=t.split("=").slice(1).join("=");try{return new URL(e)}catch{throw new Error(`Invalid --url: "${e}" must be an absolute URL.`)}}async function bm(){const t=vm(),e=new If(t?[t.href]:[]);await e.startWebSocketServer(ym());const n=e.getPort(),r=gm();_m(r,e,n,t==null?void 0:t.href);const s=new Nf;await r.connect(s),console.error("[MCP] WordPress Playground MCP server running on stdio")}bm().catch(t=>{console.error("Fatal error:",t),process.exit(1)});
|
|
57
57
|
//# sourceMappingURL=index.cjs.map
|