@zuplo/runtime 6.62.6 → 6.62.7
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/out/esm/{chunk-VRVJDH3L.js → chunk-2TEG5A7U.js} +2 -2
- package/out/esm/chunk-BHPOLR2W.js +37 -0
- package/out/esm/chunk-BHPOLR2W.js.map +1 -0
- package/out/esm/{chunk-DZW2OPG5.js → chunk-CRSNWVTX.js} +2 -2
- package/out/esm/index.js +2 -2
- package/out/esm/index.js.map +1 -1
- package/out/esm/internal/index.js +1 -1
- package/out/esm/mocks/index.js +1 -1
- package/out/types/index.d.ts +30 -0
- package/package.json +1 -1
- package/out/esm/chunk-S3E3TWYD.js +0 -37
- package/out/esm/chunk-S3E3TWYD.js.map +0 -1
- /package/out/esm/{chunk-VRVJDH3L.js.map → chunk-2TEG5A7U.js.map} +0 -0
- /package/out/esm/{chunk-S3E3TWYD.js.LEGAL.txt → chunk-BHPOLR2W.js.LEGAL.txt} +0 -0
- /package/out/esm/{chunk-DZW2OPG5.js.map → chunk-CRSNWVTX.js.map} +0 -0
|
@@ -22,5 +22,5 @@
|
|
|
22
22
|
* DEALINGS IN THE SOFTWARE.
|
|
23
23
|
*--------------------------------------------------------------------------------------------*/
|
|
24
24
|
|
|
25
|
-
import{a as i,k as o}from"./chunk-
|
|
26
|
-
//# sourceMappingURL=chunk-
|
|
25
|
+
import{a as i,k as o}from"./chunk-BHPOLR2W.js";var p=(n=>(n.Build="build-data",n.CorsPreflight="cors-preflight",n.DeveloperPortal="developer-portal",n.ZudokuPortal="zudoku-portal",n.DeveloperPortalLegacy="developer-portal-legacy",n.StripePlugin="stripe-plugin",n.EmptyGatewayCatchall="empty-gateway-catchall",n.Ping="ping",n.UnmatchedPath="unmatched-path",n))(p||{});var g=["ZUPLO_USER_LOGGER_DATA_DOG_API_KEY","ZUPLO_USER_LOGGER_DATA_DOG_URL","ZUPLO_LOG_LEVEL","ZUPLO_HANDLER_WRITE_LOG_LEVEL"];function l(e){return e.startsWith("__ZUPLO")||e.startsWith("ZUPLO_")?!g.includes(e)&&!e.startsWith("ZUPLO_PUBLIC_"):e.startsWith("ZUDOKU_")?!e.startsWith("ZUDOKU_PUBLIC_"):!1}i(l,"isRestrictedEnvVariableName");function _(e){return!!e.startsWith("ZUPLO_")}i(_,"isZuploReadableEnvVariableName");var d=new Proxy({},{get(e,t){let r=String(t);switch(r){case"ZUPLO_ENVIRONMENT_TYPE":return o.instance.loggingEnvironmentType;case"ZUPLO_ENVIRONMENT_STAGE":return o.instance.loggingEnvironmentStage;case"ZUPLO_ENVIRONMENT_NAME":return o.instance.runtime.__ZUPLO_DEPLOYMENT_NAME;case"ZUPLO_ACCOUNT_NAME":return o.instance.build.ACCOUNT_NAME;case"ZUPLO_PROJECT_NAME":return o.instance.build.PROJECT_NAME;case"ZUPLO_BUILD_ID":return o.instance.build.BUILD_ID;case"ZUPLO_COMPATIBILITY_DATE":return o.instance.build.COMPATIBILITY_DATE}if(!(l(r)&&!_(r)))return o.instance.runtime[r]}});function f(e,t,r){return`_${a(`${e}_${t}_${r}`)}`}i(f,"getRawOperationDataIdentifierName");function L(e,t,r,s){return`_${a(e.toLowerCase())}_${t.toLowerCase()}_${r.toLowerCase()}_${s.toLowerCase()}`}i(L,"getIdForParameterSchema");function E(e,t,r){return`_${a(e.toLowerCase())}_${t.toLowerCase()}_rb_${a(r.toLowerCase())}`}i(E,"getIdForRequestBodySchema");function C(e,t){return`_${a(e)}_${a(t)}`}i(C,"getIdForRefSchema");function a(e){let t=e.replace(/\[/g,"_LBRACKET_").replace(/\]/g,"_RBRACKET_").replace(/\{/g,"_LCURLY_").replace(/\}/g,"_RCURLY_").replace(/\//g,"_SLASH_").replace(/-/g,"_DASH_").replace(/\./g,"_DOT_").replace(/\+/g,"_PLUS_").replace(/:/g,"_COLON_").replace(/@/g,"_AT_").replace(/\$/g,"_DOLLAR_").replace(/[^a-zA-Z0-9_]/g,"_");return/^[a-zA-Z_]/.test(t)||(t=`_${t}`),t}i(a,"sanitizedIdentifierName");export{p as a,l as b,_ as c,d,f as e,L as f,E as g,C as h,a as i};
|
|
26
|
+
//# sourceMappingURL=chunk-2TEG5A7U.js.map
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
|
|
2
|
+
/*---------------------------------------------------------------------------------------------
|
|
3
|
+
* Copyright (c) Zuplo, Inc. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* This software and associated documentation files (the "Software") is intended to be used
|
|
6
|
+
* only by Zuplo customers solely to develop and test applications that will be deployed
|
|
7
|
+
* to Zuplo hosted services. You and others in your organization may use these files on your
|
|
8
|
+
* Development Devices solely for the above stated purpose.
|
|
9
|
+
*
|
|
10
|
+
* Outside of uses stated above, no license is granted for any other purpose including
|
|
11
|
+
* without limitation the rights to use, copy, modify, merge, publish, distribute,
|
|
12
|
+
* sublicense, host, and/or sell copies of the Software.
|
|
13
|
+
*
|
|
14
|
+
* The software may include third party components with separate legal notices or governed by
|
|
15
|
+
* other agreements, as described in licenses either embedded in or accompanying the Software.
|
|
16
|
+
*
|
|
17
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
|
18
|
+
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
|
19
|
+
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
|
|
20
|
+
* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
|
21
|
+
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
22
|
+
* DEALINGS IN THE SOFTWARE.
|
|
23
|
+
*--------------------------------------------------------------------------------------------*/
|
|
24
|
+
|
|
25
|
+
var ge=Object.create;var P=Object.defineProperty;var _e=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var he=Object.getPrototypeOf,Ee=Object.prototype.hasOwnProperty;var r=(e,t)=>P(e,"name",{value:t,configurable:!0});var it=(e,t)=>()=>(e&&(t=e(e=0)),t);var st=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ct=(e,t)=>{for(var n in t)P(e,n,{get:t[n],enumerable:!0})},j=(e,t,n,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of me(t))!Ee.call(e,o)&&o!==n&&P(e,o,{get:()=>t[o],enumerable:!(i=_e(t,o))||i.enumerable});return e};var lt=(e,t,n)=>(n=e!=null?ge(he(e)):{},j(t||!e||!e.__esModule?P(n,"default",{value:e,enumerable:!0}):n,e)),ut=e=>j(P({},"__esModule",{value:!0}),e);var q=class extends Error{static{r(this,"SystemError")}constructor(t,n){super(t,n),this.name="InternalError"}},b=class extends Error{static{r(this,"RuntimeError")}extensionMembers;constructor(t,n){typeof t=="string"?super(t,n):(super(t.message,n),this.extensionMembers=t.extensionMembers),this.name="RuntimeError"}},W=class extends b{static{r(this,"ConfigurationError")}constructor(t,n){super(t,n),this.name="ConfigurationError"}};var dt="zuplo-request-id",Oe="zp-rid",ye="zp-body-removed",Re="cf-ray",gt="x-forwarded-scheme",_t="x-forwarded-proto",mt="x-scheme",be="cf-ipcity",Ae="cf-ipcontinent",xe="cf-ipcountry",Le="cf-iplongitude",Te="cf-iplatitude",ht="cf-region",Et="cf-region-code",Ot="cf-metro-code",yt="cf-postal-code",Rt="cf-timezone",bt="zp-ipcity",At="zp-ipcontinent",xt="zp-ipcountry",Lt="zp-iplongitude",Tt="zp-iplatitude",Ie="zp-asn",Pe="zp-asorg",Ce="zp-colo",we="zp-postalcode",Se="zp-metrocode",Ue="zp-region",Ne="zp-regioncode",De="zp-timezone",It="zp-http-protocol",N="zp-local-service",ve="x-akamai-edgescape",Pt=[ve,N],Ct=[be,Ae,xe,Le,Te,Ie,Pe,Ce,we,Se,Ue,Ne,De],wt=["zp-","cf-"],St=[Oe,Re,ye];var Ut=Symbol("zuplo_meters"),Nt=Symbol("zuplo_dynamic_meters"),Dt="system-logger";var Me=!1;function T(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}r(T,"code");function I(e,t){return Me?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}r(I,"run");function ze(e){return I(e,T([31],39))}r(ze,"red");function He(e){return I(e,T([32],39))}r(He,"green");function Ze(e){return I(e,T([33],39))}r(Ze,"yellow");function Fe(e){return I(e,T([34],39))}r(Fe,"blue");function $e(e){return I(e,T([35],39))}r($e,"magenta");function Ge(e){return I(e,T([36],39))}r(Ge,"cyan");var Mt=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|"),"g");var J=[ze,He,Ze,Fe,$e,Ge];function ke(e){let t=0,n=e.length,i=0;if(n>0)for(;i<n;)t=(t<<5)-t+e.charCodeAt(i++)|0;return t}r(ke,"hashCode");function K(e){let t=Math.abs(ke(e));return J[t%J.length]}r(K,"generateColor");function X(e,t,...n){let i=0,o=n.length,l=String(t).replace(/%[sdjoO%]/g,s=>{if(s==="%%")return"%";if(i>=o)return s;switch(s){case"%s":return String(n[i++]);case"%d":return Number(n[i++]).toString();case"%o":return e(n[i++]).split(`
|
|
26
|
+
`).map(u=>u.trim()).join(" ");case"%O":return e(n[i++]);case"%j":try{return JSON.stringify(n[i++])}catch{return"[Circular]"}default:return s}});for(let s of n.splice(i))s===null||!(typeof s=="object"&&s!==null)?l+=" "+s:l+=" "+e(s);return l}r(X,"format");function x(e,t,n,i){let o={seen:[],stylize:Ve,showHidden:t??!1,depth:n??2,colors:i??!1,customInspect:!0};return o.colors&&(o.stylize=Ye),S(o,e,o.depth)}r(x,"inspect");x.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};x.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function Ve(e,t){return e}r(Ve,"stylizeNoColor");function Be(e){return typeof e=="boolean"}r(Be,"isBoolean");function ee(e){return e===void 0}r(ee,"isUndefined");function Ye(e,t){let n=x.styles[t];return n?"\x1B["+x.colors[n][0]+"m"+e+"\x1B["+x.colors[n][1]+"m":e}r(Ye,"stylizeWithColor");function D(e){return typeof e=="function"}r(D,"isFunction");function te(e){return typeof e=="string"}r(te,"isString");function je(e){return typeof e=="number"}r(je,"isNumber");function ne(e){return e===null}r(ne,"isNull");function re(e,t){return Object.hasOwn(e,t)}r(re,"hasOwn");function v(e){return Z(e)&&F(e)==="[object RegExp]"}r(v,"isRegExp");function Z(e){return typeof e=="object"&&e!==null}r(Z,"isObject");function M(e){return Z(e)&&(F(e)==="[object Error]"||e instanceof Error)}r(M,"isError");function Q(e){return Z(e)&&F(e)==="[object Date]"}r(Q,"isDate");function F(e){return Object.prototype.toString.call(e)}r(F,"objectToString");function qe(e){let t={};return e.forEach(function(n,i){t[n]=!0}),t}r(qe,"arrayToHash");function We(e,t,n,i,o){let l=[];for(let s=0,u=t.length;s<u;++s)re(t,String(s))?l.push(H(e,t,n,i,String(s),!0)):l.push("");return o.forEach(function(s){s.match(/^\d+$/)||l.push(H(e,t,n,i,s,!0))}),l}r(We,"formatArray");function z(e){return"["+Error.prototype.toString.call(e)+"]"}r(z,"formatError");function S(e,t,n){if(e.customInspect&&t&&D(t.inspect)&&t.inspect!==x&&!(t.constructor&&t.constructor.prototype===t)){let a=t.inspect(n,e);return te(a)||(a=S(e,a,n)),a}let i=Je(e,t);if(i)return i;let o=Object.keys(t),l=qe(o);try{e.showHidden&&Object.getOwnPropertyNames&&(o=Object.getOwnPropertyNames(t))}catch{}if(M(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return z(t);if(o.length===0){if(D(t)){let a=t.name?": "+t.name:"";return e.stylize("[Function"+a+"]","special")}if(v(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(Q(t))return e.stylize(Date.prototype.toString.call(t),"date");if(M(t))return z(t)}let s="",u=!1,f=["{","}"];if(Array.isArray(t)&&(u=!0,f=["[","]"]),D(t)&&(s=" [Function"+(t.name?": "+t.name:"")+"]"),v(t)&&(s=" "+RegExp.prototype.toString.call(t)),Q(t)&&(s=" "+Date.prototype.toUTCString.call(t)),M(t)&&(s=" "+z(t)),o.length===0&&(!u||t.length==0))return f[0]+s+f[1];if(n<0)return v(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);let c;return u?c=We(e,t,n,l,o):c=o.map(function(a){return H(e,t,n,l,a,u)}),e.seen.pop(),Ke(c,s,f)}r(S,"formatValue");function H(e,t,n,i,o,l){let s,u,f;f={value:void 0};try{f.value=t[o]}catch{}try{Object.getOwnPropertyDescriptor&&(f=Object.getOwnPropertyDescriptor(t,o)||f)}catch{}if(f.get?f.set?u=e.stylize("[Getter/Setter]","special"):u=e.stylize("[Getter]","special"):f.set&&(u=e.stylize("[Setter]","special")),re(i,o)||(s="["+o+"]"),u||(e.seen.indexOf(f.value)<0?(ne(n)?u=S(e,f.value,null):u=S(e,f.value,n-1),u.indexOf(`
|
|
27
|
+
`)>-1&&(l?u=u.split(`
|
|
28
|
+
`).map(function(c){return" "+c}).join(`
|
|
29
|
+
`).substr(2):u=`
|
|
30
|
+
`+u.split(`
|
|
31
|
+
`).map(function(c){return" "+c}).join(`
|
|
32
|
+
`))):u=e.stylize("[Circular]","special")),ee(s)){if(l&&o.match(/^\d+$/))return u;s=JSON.stringify(""+o),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+u}r(H,"formatProperty");function Je(e,t){if(ee(t))return e.stylize("undefined","undefined");if(te(t)){let n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(je(t))return e.stylize(""+t,"number");if(Be(t))return e.stylize(""+t,"boolean");if(ne(t))return e.stylize("null","null")}r(Je,"formatPrimitive");function Ke(e,t,n){let i=0;return e.reduce(function(l,s){return i++,s.indexOf(`
|
|
33
|
+
`)>=0&&i++,l+s.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?n[0]+(t===""?"":t+`
|
|
34
|
+
`)+" "+e.join(`,
|
|
35
|
+
`)+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}r(Ke,"reduceToSingleString");var oe=r((e,...t)=>X(x,e,t),"format");var $=class{static{r(this,"Debugger")}manager;ns;color;last;enabled;constructor(t,n){this.manager=t,this.ns=n,this.color=K(n),this.last=0,this.enabled=t.enabled.some(i=>i.test(n))}log(...t){if(!this.enabled)return;let n,i=t[0];typeof i=="function"?n=i():n=String(i);let o=Date.now()-(this.last||Date.now());n=oe(n,...t);let l=`${this.color(this.ns)} ${n} ${this.color(`+${o}ms`)}`;console.log(l),this.last=Date.now()}},G=class{static{r(this,"DebugManager")}debuggers;enabled;constructor(t){this.debuggers=new Map,this.enabled=t??[]}};function Xe(e){return!e||e.length===0?[]:(e=e.replace(/\s/g,"").replace(/\*/g,".+"),e.split(",").map(t=>new RegExp(`^${t}$`)))}r(Xe,"extract");var U;function ie(e){let t=globalThis.DEBUG;U||(U=new G(Xe(t)));let n=new $(U,e);return U.debuggers.set(e,n),Object.assign(n.log.bind(n),{self:n})}r(ie,"debug");function Qe(e){if(e.length>=255)throw new TypeError("Alphabet too long");let t=new Uint8Array(256);for(let c=0;c<t.length;c++)t[c]=255;for(let c=0;c<e.length;c++){let a=e.charAt(c),h=a.charCodeAt(0);if(t[h]!==255)throw new TypeError(a+" is ambiguous");t[h]=c}let n=e.length,i=e.charAt(0),o=Math.log(n)/Math.log(256),l=Math.log(256)/Math.log(n);function s(c){if(c instanceof Uint8Array||(ArrayBuffer.isView(c)?c=new Uint8Array(c.buffer,c.byteOffset,c.byteLength):Array.isArray(c)&&(c=Uint8Array.from(c))),!(c instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(c.length===0)return"";let a=0,h=0,_=0,g=c.length;for(;_!==g&&c[_]===0;)_++,a++;let E=(g-_)*l+1>>>0,m=new Uint8Array(E);for(;_!==g;){let d=c[_],R=0;for(let A=E-1;(d!==0||R<h)&&A!==-1;A--,R++)d+=256*m[A]>>>0,m[A]=d%n>>>0,d=d/n>>>0;if(d!==0)throw new Error("Non-zero carry");h=R,_++}let p=E-h;for(;p!==E&&m[p]===0;)p++;let y=i.repeat(a);for(;p<E;++p)y+=e.charAt(m[p]);return y}r(s,"encode");function u(c){if(typeof c!="string")throw new TypeError("Expected String");if(c.length===0)return new Uint8Array;let a=0,h=0,_=0;for(;c[a]===i;)h++,a++;let g=(c.length-a)*o+1>>>0,E=new Uint8Array(g);for(;c[a];){let d=t[c.charCodeAt(a)];if(d===255)return;let R=0;for(let A=g-1;(d!==0||R<_)&&A!==-1;A--,R++)d+=n*E[A]>>>0,E[A]=d%256>>>0,d=d/256>>>0;if(d!==0)throw new Error("Non-zero carry");_=R,a++}let m=g-_;for(;m!==g&&E[m]===0;)m++;let p=new Uint8Array(h+(g-m)),y=h;for(;m!==g;)p[y++]=E[m++];return p}r(u,"decodeUnsafe");function f(c){let a=u(c);if(a)return a;throw new Error("Non-base"+n+" character")}return r(f,"decode"),{encode:s,decodeUnsafe:u,decode:f}}r(Qe,"base");var se=Qe;var et="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",ce=se(et);var L=ie("zuplo:runtime:external-service");function tt(){let e,{__ZUPLO_EXTERNAL_SERVICE_TOKEN:t}=O.instance.runtime;if(t&&t!=="undefined")try{let n=atob(t);e=JSON.parse(n)}catch{}return e}r(tt,"getServiceAuth");async function le(e,t){let n=".proxy",i=".tunnel";if(typeof e=="string"){let o=new URL(e),l=o.hostname;if(l.endsWith(n)){let p=l.slice(0,-n.length),y=new URL(`http://${p}${o.pathname}${o.search}`);L(`Routing to proxy: ${y.toString()}`);let d=t??{};return C(y.toString(),d)}let s=l.endsWith(i),u=l.indexOf(".")===-1;if(!(s||u))throw new b(`Invalid service hostname suffix: ${l}. Use .proxy for proxy routing, .tunnel for explicit tunnel routing, or no suffix for default tunnel routing.`);let c=s?l.slice(0,-i.length):l,a=tt();if(!a)throw L("There is no external service auth configured for this zup."),new b("There are no external services configured for this zup.");L(`Using external service auth. ClientId: ${a.clientId})`);let h=t??{},_=new Headers(h.headers||{});_.set("CF-Access-Client-Id",a.clientId),_.set("CF-Access-Client-Secret",a.clientSecret),h.headers=_;let g;if(a.customServiceMapping?.[c])g=`https://${a.customServiceMapping[c]}`;else if(O.instance.useLegacyServiceRouting)g=`https://${c}.zuptunnel.com`;else{L("Using sha256 service routing");let p=O.instance.build;if(p.ACCOUNT_NAME&&p.PROJECT_NAME&&p.ENVIRONMENT_TYPE){let y=await nt(c,p.ACCOUNT_NAME,p.PROJECT_NAME,p.ENVIRONMENT_TYPE),d=ae(p.ENVIRONMENT_TYPE),R=await k(`${p.ACCOUNT_NAME}-${p.PROJECT_NAME}-${d}`);R==="40d7ad502f5d743997999594c177184a00161a77865423511f3a1ea21eb5a5e"||R==="d05bffe8fa91a300187d2cf43e8aa4a56bd809c442ae10d1ee49af7d29a5a11"?g=`https://${y}.zuptunnel.com`:g=`https://${y}.t.zuplo.app`}else throw L("Cannot use sha256 service routing, missing build variables"),new b("Failed to generate fully qualified tunnel url.")}let E=new URL(`${g}${o.pathname}${o.search}`);L(`Calling external service: ${E.toString()}`);let m=await C(E.toString(),h);if(m.status===403&&m.headers.get("cf-access-domain")!==null)throw w.console.error("403 Forbidden when calling external service.",{clientId:a.clientId,tunnelHost:g}),new b("Could not connect to secure tunnel.");return m}else throw L("Cannot call external service with Request object"),new b("Currently, we only support fetch(<some_string>, ...).")}r(le,"externalServiceHandler");async function ue(e,t){if(typeof e=="string"){let n=new URL(e),i=n.hostname,o=t??{},l=`http://${i}.zuplo.svc.cluster.local:9000`,s=new URL(`${l}${n.pathname}${n.search}`),u=new Headers(o.headers||{});return u.set(N,i),o.headers=u,await C(s.toString(),o)}else throw new b("Currently, we only support fetch(<some_string>, ...).")}r(ue,"clusterServiceHandler");async function nt(e,t,n,i){let o=e.toLowerCase(),l=t.toLowerCase(),s=n.toLowerCase(),u=ae(i);L(`Hashing service name: ${l}-${o}.${l}-${s}-${u}`);let f=await k(`${l}-${o}`),c=await k(`${l}-${s}-${u}`);return`${f}.${c}`}r(nt,"hashServiceName");async function k(e){let t=new TextEncoder().encode(e),n=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(n)).map(l=>l.toString(16).padStart(2,"0")).join("").slice(0,-1)}r(k,"hashSegment");function ae(e){let t=e.toLowerCase();switch(t){case"production":case"preview":return t;default:return"working-copy"}}r(ae,"sanitizeEnvironmentType");var V=new Map;V.set("service:",le);V.set("local:",ue);var C=globalThis.fetch;function B(e,t){let{transformedInit:n,clientCertificate:i}=rt(t);if(typeof e=="string"){let o=new URL(e),l=V.get(o.protocol);return l?l(e,n):fe(e,n,i)}else return fe(e,n,i)}r(B,"internalFetch");globalThis.fetch=B;function fe(e,t,n){if(!n)return C(e,t);if(O.instance.isCloudflare){let o=O.instance.runtime[n];if(!o)throw new Error(`Client certificate binding '${n}' not found. Ensure the certificate is uploaded and properly configured.`);if(typeof o!="object"||typeof o.fetch!="function")throw new Error(`Client certificate binding '${n}' is not a valid mTLS certificate binding. Make sure it's configured as an mTLS certificate, not an environment variable.`);return o.fetch(e,t)}else throw O.instance.isDeno?new Error("mTLS client certificates are not yet supported in Deno runtime. This will be added in a future update."):new Error("mTLS client certificates are not supported in this runtime environment")}r(fe,"performFetch");var rt=r(e=>{if(!e||e instanceof Request)return{transformedInit:e,clientCertificate:void 0};let t=e;if(!t.zuplo)return{transformedInit:e,clientCertificate:void 0};let n=t.zuplo.clientCertificate,i=e;return i.cf={cacheEverything:t.zuplo?.cacheEverything,cacheTtl:t.zuplo?.cacheTtlSeconds},delete e.zuplo,{transformedInit:e,clientCertificate:n}},"transformInit");var ot={console:{log:console.log.bind(console),info:console.info.bind(console),warn:console.warn.bind(console),error:console.error.bind(console),debug:console.debug.bind(console),assert:console.assert.bind(console),clear:console.clear.bind(console),count:console.count.bind(console),countReset:console.countReset.bind(console),dir:console.dir.bind(console),dirxml:console.dirxml.bind(console),group:console.group.bind(console),groupCollapsed:console.groupCollapsed.bind(console),groupEnd:console.groupEnd.bind(console),table:console.table.bind(console),time:console.time.bind(console),timeEnd:console.timeEnd.bind(console),timeLog:console.timeLog.bind(console),timeStamp:console.timeStamp.bind(console),trace:console.trace.bind(console),profile:console.profile.bind(console),profileEnd:console.profileEnd.bind(console)},fetch:B},w=ot;var Y="2025-02-06",pe=Object.freeze({none:{runOutboundPoliciesOnHandlerOnAllStatuses:!1,doNotRunHooksOnSystemRoutes:!1,removeAllVendorHeadersExceptListed:!1,allowCustomPorts:!1,removeLegacyLogInitialization:!1,useForwardRedirectsPropOnUrlForwardHandler:!1},"2023-03-14":{runOutboundPoliciesOnHandlerOnAllStatuses:!1,doNotRunHooksOnSystemRoutes:!1,removeAllVendorHeadersExceptListed:!1,allowCustomPorts:!1,removeLegacyLogInitialization:!1,useForwardRedirectsPropOnUrlForwardHandler:!1},"2024-01-15":{runOutboundPoliciesOnHandlerOnAllStatuses:!0,doNotRunHooksOnSystemRoutes:!0,removeAllVendorHeadersExceptListed:!0,allowCustomPorts:!1,removeLegacyLogInitialization:!1,useForwardRedirectsPropOnUrlForwardHandler:!1},"2024-03-14":{runOutboundPoliciesOnHandlerOnAllStatuses:!0,doNotRunHooksOnSystemRoutes:!0,removeAllVendorHeadersExceptListed:!0,allowCustomPorts:!1,removeLegacyLogInitialization:!1,useForwardRedirectsPropOnUrlForwardHandler:!1},"2024-09-02":{runOutboundPoliciesOnHandlerOnAllStatuses:!0,doNotRunHooksOnSystemRoutes:!0,removeAllVendorHeadersExceptListed:!0,allowCustomPorts:!0,removeLegacyLogInitialization:!1,useForwardRedirectsPropOnUrlForwardHandler:!1},"2025-02-06":{runOutboundPoliciesOnHandlerOnAllStatuses:!0,doNotRunHooksOnSystemRoutes:!0,removeAllVendorHeadersExceptListed:!0,allowCustomPorts:!0,removeLegacyLogInitialization:!0,useForwardRedirectsPropOnUrlForwardHandler:!0}});function de(){return new O({build:{ACCOUNT_NAME:"mock-account-name",PROJECT_NAME:"mock-project-name",API_VERSION:"0.0.0",BUILD_ID:crypto.randomUUID(),TIMESTAMP:new Date().toISOString(),BUILD_ENV:"test",ZUPLO_VERSION:"0.0.0",COMPATIBILITY_DATE:Y,ENVIRONMENT_TYPE:"mock-environment-type",GIT_SHA:void 0,IS_LOCAL_DEVELOPMENT:!1,COMPATIBILITY_FLAGS:pe[Y]},runtime:{RUNTIME_ENV:"test",RUNTIME_STAGE:"test",__ZUPLO_DEPLOYMENT_NAME:"mock-deployment-name",__ZUPLO_LOG_LEVEL:"debug",__ZUPLO_LOG_FORMAT:"pretty",__ZUPLO_MANAGEMENT_API_URL:"",__ZUPLO_RUNTIME_TYPE:"cloudflare",__ZUPLO_AUTH_API_JWT:"",ZUPLO_SERVICE_BUCKET_ID:"mock-bucket-id"}})}r(de,"getMockEnvironment");var O=class e{static{r(this,"Environment")}config;static#e;static#t=!1;static initialize(t){e.#e||(e.#e=new e(t),e.#t=!0)}static get instance(){return e.#t||(w.console.debug("Environment has not been initialized. This is okay when running tests, a mock environment will be used."),e.#e=de()),e.#e}constructor({build:t,runtime:n}){let i;try{if(n.ZUPLO_SYSTEM_CONFIGURATIONS){let o=new TextDecoder().decode(ce.decode(n.ZUPLO_SYSTEM_CONFIGURATIONS)),l=JSON.parse(o);for(let s of Object.keys(l))n[s]||(n[s]=l[s])}if(n.__ZUPLO_CONFIG){let o=atob(n.__ZUPLO_CONFIG);i=JSON.parse(o)}}catch(o){w.console.error("Failed to parse runtime configuration",o)}this.config=i??{},this.build=t,this.runtime=n,this.instanceId=crypto.randomUUID()}build;runtime;instanceId;get deploymentName(){return this.runtime.__ZUPLO_DEPLOYMENT_NAME??this.config.deployment_name??void 0}get useLegacyServiceRouting(){return this.config.use_legacy_service_routing??void 0}get useProxyForFetchFromZups(){return this.config.use_proxy_for_fetch_from_zups??void 0}get devPortalBaseUrl(){return this.runtime.__ZUPLO_DEV_PORTAL_URL??this.config.dev_portal_url??"https://dev-portal-v4-1.zuplo.com"}get buildAssetsUrl(){return this.runtime.__ZUPLO_BUILD_ASSETS_URL??this.config.build_assets_url??"https://build-assets.zuplo.com"}get zuploEdgeApiUrl(){return this.config.zuplo_edge_api_url??"https://api.zuploedge.com"}get remoteLogToken(){return this.runtime.__ZUPLO_REMOTE_LOG_TOKEN??this.config.remote_log_token??void 0}get zuploClientAuthBucketId(){return this.config.zuplo_auth_client_bucket_id??"auth_o8PUdhKxSTOiB794GWPwLQCD"}get managementApiURL(){return this.runtime.__ZUPLO_MANAGEMENT_API_URL??this.config.management_api_url??"https://api.zuplo.com"}get developerApiUrl(){return this.config.developer_api_url??"https://dev.zuplo.com"}get cdnURL(){return this.runtime.__ZUPLO_CDN_URL??this.config.cdn_url??"https://cdn.zuplo.com"}get remoteLogURL(){return this.runtime.__ZUPLO_REMOTE_LOG_URL??this.config.log_event_api??"https://ellie.zuploedge.com"}get loggingId(){return this.runtime.__ZUPLO_LOGGING_ID??this.config.logging_id??void 0}get redisURL(){return this.runtime.__ZUPLO_REDIS_URL??this.config.redis_proxy_url??"https://redis-proxy.zuploedge.com"}get apiKeyServiceUrl(){return this.runtime.__ZUPLO_API_KEY_SERVICE_URL??this.config.api_key_service_url??"https://apikey.zuploedge.com"}get meteringServiceUrl(){return this.config.metering_service_url??"https://meters.zuploedge.com"}get authApiJWT(){return this.runtime.__ZUPLO_AUTH_API_JWT??void 0}get authClientId(){return this.config.auth_client_id??this.runtime.__ZUPLO_AUTH_CLIENT_ID}get authClientSecret(){return this.config.auth_client_secret??this.runtime.__ZUPLO_AUTH_CLIENT_SECRET}get authPublicKey(){return this.config.auth_public_key??this.runtime.__ZUPLO_AUTH_PUBLIC_KEY}get authPrivateKey(){return this.config.auth_private_key??this.runtime.__ZUPLO_AUTH_PRIVATE_KEY}get userLogLevel(){return this.runtime.ZUPLO_LOG_LEVEL??this.runtime.__ZUPLO_LOG_LEVEL??this.config.user_log_level??"debug"}get systemLogLevel(){return this.runtime.__ZUPLO_LOG_LEVEL??this.config.system_log_level??"debug"}get logFormat(){return this.runtime.__ZUPLO_LOG_FORMAT??this.config.log_format??"cloudflare"}get isCloudflare(){return this.runtime.__ZUPLO_RUNTIME_TYPE?this.runtime.__ZUPLO_RUNTIME_TYPE==="cloudflare":this.config.runtime_type?this.config.runtime_type==="cloudflare":typeof WebSocketPair=="function"}get isManagedDedicated(){return this.runtime.__ZUPLO_IS_MANAGED_DEDICATED==="true"}get isDeno(){if(this.runtime.__ZUPLO_RUNTIME_TYPE)return this.runtime.__ZUPLO_RUNTIME_TYPE==="deno";if(this.config.runtime_type)return this.config.runtime_type==="deno";{let t=globalThis.Deno?.version?.deno;return typeof WebSocketPair!="function"&&t}}get isLocalDevelopment(){return this.build.IS_LOCAL_DEVELOPMENT}get isTestMode(){return!!this.runtime.__ZUPLO_TEST_MODE}get systemUserAgent(){return`Zuplo/${this.build.ZUPLO_VERSION}`}get loggingEnvironmentType(){return this.isCloudflare?"edge":this.isLocalDevelopment?"local":this.isDeno?"working-copy":"unknown"}get loggingEnvironmentStage(){return this.build.ENVIRONMENT_TYPE==="PRODUCTION"?"production":this.build.ENVIRONMENT_TYPE==="PREVIEW"?"preview":this.isLocalDevelopment?"local":this.isWorkingCopy?"working-copy":"unknown"}get isWorkingCopy(){return this.build.ENVIRONMENT_TYPE==="WORKING_COPY"}get rateLimitServiceTimeoutMs(){let t=this.runtime.__ZUPLO_RATE_LIMIT_TIMEOUT_MS,n=this.config.rate_limit_service_timeout_ms,i=t??n;if(!i)return 500;let o=Number(i);return Number.isFinite(o)&&o>0?o:500}};export{r as a,it as b,st as c,ct as d,lt as e,ut as f,ie as g,q as h,b as i,W as j,O as k,dt as l,Oe as m,ye as n,Re as o,gt as p,_t as q,mt as r,be as s,Ae as t,xe as u,Le as v,Te as w,ht as x,Et as y,Ot as z,yt as A,Rt as B,bt as C,At as D,xt as E,Lt as F,Tt as G,Ie as H,Pe as I,Ce as J,we as K,Se as L,Ue as M,Ne as N,De as O,It as P,N as Q,ve as R,Pt as S,Ct as T,wt as U,St as V,Ut as W,Nt as X,Dt as Y,w as Z};
|
|
36
|
+
/*! For license information please see chunk-BHPOLR2W.js.LEGAL.txt */
|
|
37
|
+
//# sourceMappingURL=chunk-BHPOLR2W.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@zuplo/runtime/errors.ts","@zuplo/runtime/constants.ts","../../../../debug/src/colors.ts","../../../../debug/src/format.ts","../../../../debug/src/worker/inspect.ts","../../../../debug/src/worker/format.ts","../../../../debug/src/worker/debug.ts","../../../../../node_modules/base-x/src/esm/index.js","../../../../../node_modules/bs58/src/esm/index.js","@zuplo/runtime/external-services.ts","@zuplo/runtime/fetch-redefinition.ts","@zuplo/runtime/internals.ts","@zuplo/runtime/compatibility-flags.generated.ts","@zuplo/runtime/mocks/environment.ts","@zuplo/runtime/utils/environment.ts"],"mappings":"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","names":["SystemError","__name","message","options","RuntimeError","problem","ConfigurationError","LEGACY_REQUEST_ID_HEADER","REQUEST_ID_HEADER","BODY_REMOVED_HEADER","RAY_ID_HEADER","X_FORWARDED_SCHEME_HEADER","X_FORWARDED_PROTO_HEADER","X_SCHEM_HEADER","CF_IP_CITY_HEADER","CF_IP_CONTINENT_HEADER","CF_IP_COUNTRY_HEADER","CF_IP_LONGITUDE_HEADER","CF_IP_LATITUDE_HEADER","CF_IP_REGION_HEADER","CF_REGION_CODE_HEADER","CF_METRO_CODE_HEADER","CF_POSTAL_CODE_HEADER","CF_TIMEZONE_HEADER","ZP_IP_CITY_HEADER","ZP_IP_CONTINENT_HEADER","ZP_IP_COUNTRY_HEADER","ZP_IP_LONGITUDE_HEADER","ZP_IP_LATITUDE_HEADER","ZP_ASN_HEADER","ZP_AS_ORG_HEADER","ZP_COLO_HEADER","ZP_POSTAL_CODE_HEADER","ZP_METRO_CODE_HEADER","ZP_REGION_HEADER","ZP_REGION_CODE_HEADER","ZP_TIMEZONE_HEADER","ZP_HTTP_PROTOCOL_HEADER","ZP_LOCAL_SERVICE_HEADER","AKAMAI_EDGESCAPE_HEADER","DISPATCH_HEADERS_TO_REMOVE","DISPATCH_HEADERS_TO_REMOVE_BEFORE_COMPAT_CHANGE","VENDOR_HEADER_PREFIXES","VENDOR_HEADERS_TO_ALLOW","METERING_SUBSCRIPTION_CONTEXT_DATA","DYNAMIC_METERS_CONTEXT_DATA","SYSTEM_LOGGER","enabled","code","open","close","__name","run","str","enabled","red","str","run","code","__name","green","yellow","blue","magenta","cyan","ANSI_PATTERN","colorFunctions","red","green","yellow","blue","magenta","cyan","hashCode","s","h","l","__name","generateColor","message","hash","format","inspect","f","args","len","str","x","_","__name","inspect","obj","showHidden","depth","color","ctx","stylizeNoColor","stylizeWithColor","formatValue","__name","str","styleType","isBoolean","arg","isUndefined","style","isFunction","isString","isNumber","isNull","hasOwn","prop","isRegExp","re","isObject","objectToString","isError","isDate","d","o","arrayToHash","array","hash","val","idx","formatArray","value","recurseTimes","visibleKeys","keys","output","i","l","formatProperty","key","formatError","ret","primitive","formatPrimitive","name","base","braces","reduceToSingleString","desc","line","simple","numLinesEst","prev","cur","format","__name","f","args","inspect","Debugger","__name","manager","namespace","generateColor","r","args","fmt","firstArg","diff","format","msg","DebugManager","enabled","extract","opts","rule","debug","namespace","envVar","manager","DebugManager","extract","dbg","Debugger","__name","base","ALPHABET","BASE_MAP","j","i","x","xc","BASE","LEADER","FACTOR","iFACTOR","encode","source","zeroes","length","pbegin","pend","size","b58","carry","it1","it2","str","__name","decodeUnsafe","psz","b256","it3","it4","vch","decode","string","buffer","esm_default","ALPHABET","esm_default","log","debug","getServiceAuth","serviceAuth","serviceAuthJson","Environment","base64Decoded","__name","externalServiceHandler","request","init","proxySuffix","tunnelSuffix","url","hostname","serviceName","proxyUrl","decoratedInit","originalFetch","hasExplicitTunnelSuffix","hasNoDots","RuntimeError","headers","serviceBaseUrl","rawBuild","fullyHashedSubdomain","hashServiceName","environment","sanitizeEnvironmentType","hashedSubdomain","hashSegment","serviceUrl","response","internals_default","clusterServiceHandler","deploymentName","ZP_LOCAL_SERVICE_HEADER","accountName","projectName","environmentType","service","account","project","hashedService","segment","msgUint8","hashBuffer","b","lowercased","protocolHandlers","externalServiceHandler","clusterServiceHandler","originalFetch","internalFetch","request","init","transformedInit","clientCertificate","transformInit","url","handler","performFetch","__name","Environment","binding","zuploInit","cfInitRef","internals","internalFetch","internals_default","DEFAULT_COMPATIBILITY_DATE","COMPATIBILITY_FLAG_MAPPINGS","getMockEnvironment","Environment","DEFAULT_COMPATIBILITY_DATE","COMPATIBILITY_FLAG_MAPPINGS","__name","Environment","_Environment","__name","#instance","#initialized","options","internals_default","getMockEnvironment","build","runtime","parsedRes","jsonString","esm_default","systemConfiguration","key","base64Decoded","err","isGlobalDenoDefined","envValue","runtimeConfValue","envOverConf","parsed"]}
|
|
@@ -22,5 +22,5 @@
|
|
|
22
22
|
* DEALINGS IN THE SOFTWARE.
|
|
23
23
|
*--------------------------------------------------------------------------------------------*/
|
|
24
24
|
|
|
25
|
-
import{a,k as s}from"./chunk-
|
|
26
|
-
//# sourceMappingURL=chunk-
|
|
25
|
+
import{a,k as s}from"./chunk-BHPOLR2W.js";var e={MCP_TOOL_USAGE:"mcp_tool_usage",AI_GATEWAY_COST_SUM:"ai_gateway_cost_sum",AI_GATEWAY_REQUEST_COUNT:"ai_gateway_request_count",AI_GATEWAY_TOKEN_SUM:"ai_gateway_token_sum",AI_GATEWAY_LATENCY_HISTOGRAM:"ai_gateway_latency_histogram",AI_GATEWAY_WARNING_COUNT:"ai_gateway_warning_count",AI_GATEWAY_BLOCKED_COUNT:"ai_gateway_blocked_count"};var n=class{static{a(this,"BaseAnalyticsEvent")}eventId;requestId;timestamp;accountName;projectName;deploymentName;unit;value;constructor(t){this.eventId=t.eventId,this.requestId=t.requestId,this.timestamp=t.timestamp??new Date,this.accountName=t.accountName,this.projectName=t.projectName,this.deploymentName=t.deploymentName,this.unit=t.unit,this.value=t.value}};var r=class extends n{static{a(this,"McpToolUsageEvent")}eventType=e.MCP_TOOL_USAGE;metadata;constructor(t){t.metadata.toolName.trim()||(t.metadata.toolName="unknown"),t.metadata.toolPath.trim()||(t.metadata.toolPath="unknown"),t.metadata.toolMethod.trim()||(t.metadata.toolMethod="unknown"),t.metadata.toolOperationId.trim()||(t.metadata.toolOperationId="unknown"),super(t),this.metadata=t.metadata}};var m=class extends n{static{a(this,"AiGatewayCostSumEvent")}eventType=e.AI_GATEWAY_COST_SUM;metadata;constructor(t){super(t),this.metadata=t.metadata,(!this.metadata.model||!this.metadata.model.trim())&&(this.metadata.model="unknown"),(!this.metadata.provider||!this.metadata.provider.trim())&&(this.metadata.provider="unknown"),(!this.metadata.configId||!this.metadata.configId.trim())&&(this.metadata.configId="unknown")}};var d=class extends n{static{a(this,"AiGatewayRequestCountEvent")}eventType=e.AI_GATEWAY_REQUEST_COUNT;metadata;constructor(t){super(t),this.metadata=t.metadata,(!this.metadata.model||!this.metadata.model.trim())&&(this.metadata.model="unknown"),(!this.metadata.provider||!this.metadata.provider.trim())&&(this.metadata.provider="unknown"),(!this.metadata.configId||!this.metadata.configId.trim())&&(this.metadata.configId="unknown")}};var p=class extends n{static{a(this,"AiGatewayTokenSumEvent")}eventType=e.AI_GATEWAY_TOKEN_SUM;metadata;constructor(t){super(t),this.metadata=t.metadata,(!this.metadata.model||!this.metadata.model.trim())&&(this.metadata.model="unknown"),(!this.metadata.provider||!this.metadata.provider.trim())&&(this.metadata.provider="unknown"),(!this.metadata.configId||!this.metadata.configId.trim())&&(this.metadata.configId="unknown")}};var c=class extends n{static{a(this,"AiGatewayLatencyHistogramEvent")}eventType=e.AI_GATEWAY_LATENCY_HISTOGRAM;metadata;constructor(t){super(t),this.metadata=t.metadata,(!this.metadata.model||!this.metadata.model.trim())&&(this.metadata.model="unknown"),(!this.metadata.provider||!this.metadata.provider.trim())&&(this.metadata.provider="unknown"),(!this.metadata.configId||!this.metadata.configId.trim())&&(this.metadata.configId="unknown")}};var y=class extends n{static{a(this,"AiGatewayWarningCountEvent")}eventType=e.AI_GATEWAY_WARNING_COUNT;metadata;constructor(t){super(t),this.metadata=t.metadata,(!this.metadata.type||!this.metadata.type.trim())&&(this.metadata.type="unknown"),(!this.metadata.configId||!this.metadata.configId.trim())&&(this.metadata.configId="unknown")}};var A=class extends n{static{a(this,"AiGatewayBlockedCountEvent")}eventType=e.AI_GATEWAY_BLOCKED_COUNT;metadata;constructor(t){super(t),this.metadata=t.metadata,(!this.metadata.type||!this.metadata.type.trim())&&(this.metadata.type="unknown"),(!this.metadata.configId||!this.metadata.configId.trim())&&(this.metadata.configId="unknown")}};var f={[e.MCP_TOOL_USAGE]:r,[e.AI_GATEWAY_COST_SUM]:m,[e.AI_GATEWAY_REQUEST_COUNT]:d,[e.AI_GATEWAY_TOKEN_SUM]:p,[e.AI_GATEWAY_LATENCY_HISTOGRAM]:c,[e.AI_GATEWAY_WARNING_COUNT]:y,[e.AI_GATEWAY_BLOCKED_COUNT]:A};function l(o,t){let i=f[o];return new i(t)}a(l,"createAnalyticsEvent");var E=class{static{a(this,"ZuploGatewayAnalyticsContext")}#t;#e;constructor(t){this.#t=[],this.#e=t}addAnalyticsEvent(t,i,u,v){let T=this.createAnalyticsEvent(t,i,u,v);this.#t.push(T)}flushAnalyticsEvents(){let t=[...this.#t];return this.#t.length=0,t}getAnalyticsEvents(){return[...this.#t]}createAnalyticsEvent(t,i,u,v){return l(i,{eventId:crypto.randomUUID(),requestId:this.#e,accountName:s.instance.build.ACCOUNT_NAME??"unknown",projectName:s.instance.build.PROJECT_NAME??"unknown",deploymentName:s.instance.deploymentName??"unknown",metadata:u,unit:v,value:t})}};export{e as a,E as b};
|
|
26
|
+
//# sourceMappingURL=chunk-CRSNWVTX.js.map
|
package/out/esm/index.js
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
* DEALINGS IN THE SOFTWARE.
|
|
23
23
|
*--------------------------------------------------------------------------------------------*/
|
|
24
24
|
|
|
25
|
-
import{a as Ht,d as ke,e as Jx,f as Ea,g as _a,h as Wx,i as Kx}from"./chunk-VRVJDH3L.js";import{a as Oe,b as Ng}from"./chunk-DZW2OPG5.js";import{A as Rg,B as Pg,C as Xo,D as Yo,E as ei,F as ti,G as ri,H as ni,I as Ig,J as Sg,K as oi,L as ii,M as kg,N as si,O as ai,P as Tg,Q as Cg,R as Eg,S as _g,T as Og,U as $g,V as Ag,W as kn,X as Tn,Y as ci,Z as j,a as s,b as te,c as Bx,d as Nt,e as Vx,f as Qo,g as Ne,h as le,i as F,j as w,k as P,l as ug,m as Sn,n as lg,o as Nr,p as dg,q as pg,r as mg,s as fg,t as gg,u as hg,v as yg,w as bg,x as wg,y as vg,z as xg}from"./chunk-S3E3TWYD.js";var mh=Bx(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.parse=_R;Ii.serialize=OR;var IR=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,SR=/^[\u0021-\u003A\u003C-\u007E]*$/,kR=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,TR=/^[\u0020-\u003A\u003D-\u007E]*$/,CR=Object.prototype.toString,ER=(()=>{let t=s(function(){},"C");return t.prototype=Object.create(null),t})();function _R(t,e){let r=new ER,n=t.length;if(n<2)return r;let o=e?.decode||$R,i=0;do{let a=t.indexOf("=",i);if(a===-1)break;let c=t.indexOf(";",i),u=c===-1?n:c;if(a>u){i=t.lastIndexOf(";",a-1)+1;continue}let l=dh(t,i,a),d=ph(t,a,l),p=t.slice(l,d);if(r[p]===void 0){let m=dh(t,a+1,u),f=ph(t,u,m),g=o(t.slice(m,f));r[p]=g}i=u+1}while(i<n);return r}s(_R,"parse");function dh(t,e,r){do{let n=t.charCodeAt(e);if(n!==32&&n!==9)return e}while(++e<r);return r}s(dh,"startIndex");function ph(t,e,r){for(;e>r;){let n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}s(ph,"endIndex");function OR(t,e,r){let n=r?.encode||encodeURIComponent;if(!IR.test(t))throw new TypeError(`argument name is invalid: ${t}`);let o=n(e);if(!SR.test(o))throw new TypeError(`argument val is invalid: ${e}`);let i=t+"="+o;if(!r)return i;if(r.maxAge!==void 0){if(!Number.isInteger(r.maxAge))throw new TypeError(`option maxAge is invalid: ${r.maxAge}`);i+="; Max-Age="+r.maxAge}if(r.domain){if(!kR.test(r.domain))throw new TypeError(`option domain is invalid: ${r.domain}`);i+="; Domain="+r.domain}if(r.path){if(!TR.test(r.path))throw new TypeError(`option path is invalid: ${r.path}`);i+="; Path="+r.path}if(r.expires){if(!AR(r.expires)||!Number.isFinite(r.expires.valueOf()))throw new TypeError(`option expires is invalid: ${r.expires}`);i+="; Expires="+r.expires.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority)switch(typeof r.priority=="string"?r.priority.toLowerCase():void 0){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${r.priority}`)}if(r.sameSite)switch(typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite){case!0:case"strict":i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"none":i+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${r.sameSite}`)}return i}s(OR,"serialize");function $R(t){if(t.indexOf("%")===-1)return t;try{return decodeURIComponent(t)}catch{return t}}s($R,"decode");function AR(t){return CR.call(t)==="[object Date]"}s(AR,"isDate")});function T(t,e,r){function n(c,u){var l;Object.defineProperty(c,"_zod",{value:c._zod??{},enumerable:!1}),(l=c._zod).traits??(l.traits=new Set),c._zod.traits.add(t),e(c,u);for(let d in a.prototype)Object.defineProperty(c,d,{value:a.prototype[d].bind(c)});c._zod.constr=a,c._zod.def=u}s(n,"init");let o=r?.Parent??Object;class i extends o{static{s(this,"Definition")}}Object.defineProperty(i,"name",{value:t});function a(c){var u;let l=r?.Parent?new i:this;n(l,c),(u=l._zod).deferred??(u.deferred=[]);for(let d of l._zod.deferred)d();return l}return s(a,"_"),Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:s(c=>r?.Parent&&c instanceof r.Parent?!0:c?._zod?.traits?.has(t),"value")}),Object.defineProperty(a,"name",{value:t}),a}function ze(t){return t&&Object.assign(Vn,t),Vn}var Mi,St,Vn,Jr=te(()=>{s(T,"$constructor");Mi=Symbol("zod_brand"),St=class extends Error{static{s(this,"$ZodAsyncError")}constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Vn={};s(ze,"config")});var ee={};Nt(ee,{BIGINT_FORMAT_RANGES:()=>Dc,Class:()=>Ec,NUMBER_FORMAT_RANGES:()=>Mc,aborted:()=>br,allowsEval:()=>Ac,assert:()=>MP,assertEqual:()=>$P,assertIs:()=>NP,assertNever:()=>LP,assertNotEqual:()=>AP,assignProp:()=>$c,cached:()=>Wn,cleanEnum:()=>WP,cleanRegex:()=>Kn,clone:()=>rt,createTransparentProxy:()=>qP,defineLazy:()=>Pe,esc:()=>yr,escapeRegex:()=>kt,extend:()=>GP,finalizeIssue:()=>nt,floatSafeRemainder:()=>Oc,getElementAtPath:()=>UP,getLengthableOrigin:()=>eo,getParsedType:()=>ZP,getSizableOrigin:()=>Yn,getValidEnumValues:()=>DP,isObject:()=>Ui,isPlainObject:()=>Qn,issue:()=>Uc,joinValues:()=>q,jsonStringifyReplacer:()=>_c,merge:()=>BP,normalizeParams:()=>K,nullish:()=>Qt,numKeys:()=>jP,omit:()=>HP,optionalKeys:()=>Lc,partial:()=>VP,pick:()=>FP,prefixIssues:()=>Je,primitiveTypes:()=>Nc,promiseAllObject:()=>zP,propertyKeyTypes:()=>Xn,randomString:()=>Di,required:()=>JP,stringifyPrimitive:()=>re,unwrapMessage:()=>Jn});function $P(t){return t}function AP(t){return t}function NP(t){}function LP(t){throw new Error}function MP(t){}function DP(t){let e=Object.keys(t).filter(n=>typeof t[t[n]]!="number"),r={};for(let n of e)r[n]=t[n];return Object.values(r)}function q(t,e="|"){return t.map(r=>re(r)).join(e)}function _c(t,e){return typeof e=="bigint"?e.toString():e}function Wn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Qt(t){return t==null}function Kn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Oc(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,i=Number.parseInt(t.toFixed(o).replace(".","")),a=Number.parseInt(e.toFixed(o).replace(".",""));return i%a/10**o}function Pe(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function $c(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function UP(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function zP(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let i=0;i<e.length;i++)o[e[i]]=n[i];return o})}function Di(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function yr(t){return JSON.stringify(t)}function Ui(t){return typeof t=="object"&&t!==null}function Qn(t){return typeof t=="object"&&t!==null&&Object.getPrototypeOf(t)===Object.prototype}function jP(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function kt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function K(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:s(()=>e,"error")};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:s(()=>e.error,"error")}:e}function qP(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,i){return e??(e=t()),Reflect.set(e,n,o,i)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function re(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Lc(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional")}function FP(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return rt(t,{...t._zod.def,shape:r,checks:[]})}function HP(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return rt(t,{...t._zod.def,shape:r,checks:[]})}function GP(t,e){let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return $c(this,"shape",n),n},checks:[]};return rt(t,r)}function BP(t,e){return rt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return $c(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function VP(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in n))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=t?new t({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)o[i]=t?new t({type:"optional",innerType:n[i]}):n[i];return rt(e,{...e._zod.def,shape:o,checks:[]})}function JP(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=new t({type:"nonoptional",innerType:n[i]}))}else for(let i in n)o[i]=new t({type:"nonoptional",innerType:n[i]});return rt(e,{...e._zod.def,shape:o,checks:[]})}function br(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r].continue!==!0)return!0;return!1}function Je(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Jn(t){return typeof t=="string"?t:t?.message}function nt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Jn(t.inst?._zod.def?.error?.(t))??Jn(e?.error?.(t))??Jn(r.customError?.(t))??Jn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Yn(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function eo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Uc(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function WP(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ac,ZP,Xn,Nc,Mc,Dc,Ec,me=te(()=>{s($P,"assertEqual");s(AP,"assertNotEqual");s(NP,"assertIs");s(LP,"assertNever");s(MP,"assert");s(DP,"getValidEnumValues");s(q,"joinValues");s(_c,"jsonStringifyReplacer");s(Wn,"cached");s(Qt,"nullish");s(Kn,"cleanRegex");s(Oc,"floatSafeRemainder");s(Pe,"defineLazy");s($c,"assignProp");s(UP,"getElementAtPath");s(zP,"promiseAllObject");s(Di,"randomString");s(yr,"esc");s(Ui,"isObject");Ac=Wn(()=>{try{let t=Function;return new t(""),!0}catch{return!1}});s(Qn,"isPlainObject");s(jP,"numKeys");ZP=s(t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},"getParsedType"),Xn=new Set(["string","number","symbol"]),Nc=new Set(["string","number","bigint","boolean","symbol","undefined"]);s(kt,"escapeRegex");s(rt,"clone");s(K,"normalizeParams");s(qP,"createTransparentProxy");s(re,"stringifyPrimitive");s(Lc,"optionalKeys");Mc={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]},Dc={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};s(FP,"pick");s(HP,"omit");s(GP,"extend");s(BP,"merge");s(VP,"partial");s(JP,"required");s(br,"aborted");s(Je,"prefixIssues");s(Jn,"unwrapMessage");s(nt,"finalizeIssue");s(Yn,"getSizableOrigin");s(eo,"getLengthableOrigin");s(Uc,"issue");s(WP,"cleanEnum");Ec=class{static{s(this,"Class")}constructor(...e){}}});function ro(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function no(t,e){let r=e||function(i){return i.message},n={_errors:[]},o=s(i=>{for(let a of i.issues)if(a.code==="invalid_union")a.errors.map(c=>o({issues:c}));else if(a.code==="invalid_key")o({issues:a.issues});else if(a.code==="invalid_element")o({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let c=n,u=0;for(;u<a.path.length;){let l=a.path[u];u===a.path.length-1?(c[l]=c[l]||{_errors:[]},c[l]._errors.push(r(a))):c[l]=c[l]||{_errors:[]},c=c[l],u++}}},"processError");return o(t),n}function zc(t,e){let r=e||function(i){return i.message},n={errors:[]},o=s((i,a=[])=>{var c,u;for(let l of i.issues)if(l.code==="invalid_union")l.errors.map(d=>o({issues:d},l.path));else if(l.code==="invalid_key")o({issues:l.issues},l.path);else if(l.code==="invalid_element")o({issues:l.issues},l.path);else{let d=[...a,...l.path];if(d.length===0){n.errors.push(r(l));continue}let p=n,m=0;for(;m<d.length;){let f=d[m],g=m===d.length-1;typeof f=="string"?(p.properties??(p.properties={}),(c=p.properties)[f]??(c[f]={errors:[]}),p=p.properties[f]):(p.items??(p.items=[]),(u=p.items)[f]??(u[f]={errors:[]}),p=p.items[f]),g&&p.errors.push(r(l)),m++}}},"processError");return o(t),n}function Bh(t){let e=[];for(let r of t)typeof r=="number"?e.push(`[${r}]`):typeof r=="symbol"?e.push(`[${JSON.stringify(String(r))}]`):/[^\w$]/.test(r)?e.push(`[${JSON.stringify(r)}]`):(e.length&&e.push("."),e.push(r));return e.join("")}function jc(t){let e=[],r=[...t.issues].sort((n,o)=>n.path.length-o.path.length);for(let n of r)e.push(`\u2716 ${n.message}`),n.path?.length&&e.push(` \u2192 at ${Bh(n.path)}`);return e.join(`
|
|
25
|
+
import{a as Ht,d as ke,e as Jx,f as Ea,g as _a,h as Wx,i as Kx}from"./chunk-2TEG5A7U.js";import{a as Oe,b as Ng}from"./chunk-CRSNWVTX.js";import{A as Rg,B as Pg,C as Xo,D as Yo,E as ei,F as ti,G as ri,H as ni,I as Ig,J as Sg,K as oi,L as ii,M as kg,N as si,O as ai,P as Tg,Q as Cg,R as Eg,S as _g,T as Og,U as $g,V as Ag,W as kn,X as Tn,Y as ci,Z as j,a as s,b as te,c as Bx,d as Nt,e as Vx,f as Qo,g as Ne,h as le,i as F,j as w,k as P,l as ug,m as Sn,n as lg,o as Nr,p as dg,q as pg,r as mg,s as fg,t as gg,u as hg,v as yg,w as bg,x as wg,y as vg,z as xg}from"./chunk-BHPOLR2W.js";var mh=Bx(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.parse=_R;Ii.serialize=OR;var IR=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,SR=/^[\u0021-\u003A\u003C-\u007E]*$/,kR=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,TR=/^[\u0020-\u003A\u003D-\u007E]*$/,CR=Object.prototype.toString,ER=(()=>{let t=s(function(){},"C");return t.prototype=Object.create(null),t})();function _R(t,e){let r=new ER,n=t.length;if(n<2)return r;let o=e?.decode||$R,i=0;do{let a=t.indexOf("=",i);if(a===-1)break;let c=t.indexOf(";",i),u=c===-1?n:c;if(a>u){i=t.lastIndexOf(";",a-1)+1;continue}let l=dh(t,i,a),d=ph(t,a,l),p=t.slice(l,d);if(r[p]===void 0){let m=dh(t,a+1,u),f=ph(t,u,m),g=o(t.slice(m,f));r[p]=g}i=u+1}while(i<n);return r}s(_R,"parse");function dh(t,e,r){do{let n=t.charCodeAt(e);if(n!==32&&n!==9)return e}while(++e<r);return r}s(dh,"startIndex");function ph(t,e,r){for(;e>r;){let n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}s(ph,"endIndex");function OR(t,e,r){let n=r?.encode||encodeURIComponent;if(!IR.test(t))throw new TypeError(`argument name is invalid: ${t}`);let o=n(e);if(!SR.test(o))throw new TypeError(`argument val is invalid: ${e}`);let i=t+"="+o;if(!r)return i;if(r.maxAge!==void 0){if(!Number.isInteger(r.maxAge))throw new TypeError(`option maxAge is invalid: ${r.maxAge}`);i+="; Max-Age="+r.maxAge}if(r.domain){if(!kR.test(r.domain))throw new TypeError(`option domain is invalid: ${r.domain}`);i+="; Domain="+r.domain}if(r.path){if(!TR.test(r.path))throw new TypeError(`option path is invalid: ${r.path}`);i+="; Path="+r.path}if(r.expires){if(!AR(r.expires)||!Number.isFinite(r.expires.valueOf()))throw new TypeError(`option expires is invalid: ${r.expires}`);i+="; Expires="+r.expires.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority)switch(typeof r.priority=="string"?r.priority.toLowerCase():void 0){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${r.priority}`)}if(r.sameSite)switch(typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite){case!0:case"strict":i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"none":i+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${r.sameSite}`)}return i}s(OR,"serialize");function $R(t){if(t.indexOf("%")===-1)return t;try{return decodeURIComponent(t)}catch{return t}}s($R,"decode");function AR(t){return CR.call(t)==="[object Date]"}s(AR,"isDate")});function T(t,e,r){function n(c,u){var l;Object.defineProperty(c,"_zod",{value:c._zod??{},enumerable:!1}),(l=c._zod).traits??(l.traits=new Set),c._zod.traits.add(t),e(c,u);for(let d in a.prototype)Object.defineProperty(c,d,{value:a.prototype[d].bind(c)});c._zod.constr=a,c._zod.def=u}s(n,"init");let o=r?.Parent??Object;class i extends o{static{s(this,"Definition")}}Object.defineProperty(i,"name",{value:t});function a(c){var u;let l=r?.Parent?new i:this;n(l,c),(u=l._zod).deferred??(u.deferred=[]);for(let d of l._zod.deferred)d();return l}return s(a,"_"),Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:s(c=>r?.Parent&&c instanceof r.Parent?!0:c?._zod?.traits?.has(t),"value")}),Object.defineProperty(a,"name",{value:t}),a}function ze(t){return t&&Object.assign(Vn,t),Vn}var Mi,St,Vn,Jr=te(()=>{s(T,"$constructor");Mi=Symbol("zod_brand"),St=class extends Error{static{s(this,"$ZodAsyncError")}constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Vn={};s(ze,"config")});var ee={};Nt(ee,{BIGINT_FORMAT_RANGES:()=>Dc,Class:()=>Ec,NUMBER_FORMAT_RANGES:()=>Mc,aborted:()=>br,allowsEval:()=>Ac,assert:()=>MP,assertEqual:()=>$P,assertIs:()=>NP,assertNever:()=>LP,assertNotEqual:()=>AP,assignProp:()=>$c,cached:()=>Wn,cleanEnum:()=>WP,cleanRegex:()=>Kn,clone:()=>rt,createTransparentProxy:()=>qP,defineLazy:()=>Pe,esc:()=>yr,escapeRegex:()=>kt,extend:()=>GP,finalizeIssue:()=>nt,floatSafeRemainder:()=>Oc,getElementAtPath:()=>UP,getLengthableOrigin:()=>eo,getParsedType:()=>ZP,getSizableOrigin:()=>Yn,getValidEnumValues:()=>DP,isObject:()=>Ui,isPlainObject:()=>Qn,issue:()=>Uc,joinValues:()=>q,jsonStringifyReplacer:()=>_c,merge:()=>BP,normalizeParams:()=>K,nullish:()=>Qt,numKeys:()=>jP,omit:()=>HP,optionalKeys:()=>Lc,partial:()=>VP,pick:()=>FP,prefixIssues:()=>Je,primitiveTypes:()=>Nc,promiseAllObject:()=>zP,propertyKeyTypes:()=>Xn,randomString:()=>Di,required:()=>JP,stringifyPrimitive:()=>re,unwrapMessage:()=>Jn});function $P(t){return t}function AP(t){return t}function NP(t){}function LP(t){throw new Error}function MP(t){}function DP(t){let e=Object.keys(t).filter(n=>typeof t[t[n]]!="number"),r={};for(let n of e)r[n]=t[n];return Object.values(r)}function q(t,e="|"){return t.map(r=>re(r)).join(e)}function _c(t,e){return typeof e=="bigint"?e.toString():e}function Wn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Qt(t){return t==null}function Kn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Oc(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,i=Number.parseInt(t.toFixed(o).replace(".","")),a=Number.parseInt(e.toFixed(o).replace(".",""));return i%a/10**o}function Pe(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function $c(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function UP(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function zP(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let i=0;i<e.length;i++)o[e[i]]=n[i];return o})}function Di(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function yr(t){return JSON.stringify(t)}function Ui(t){return typeof t=="object"&&t!==null}function Qn(t){return typeof t=="object"&&t!==null&&Object.getPrototypeOf(t)===Object.prototype}function jP(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}function kt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function K(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:s(()=>e,"error")};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:s(()=>e.error,"error")}:e}function qP(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,i){return e??(e=t()),Reflect.set(e,n,o,i)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function re(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Lc(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional")}function FP(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return rt(t,{...t._zod.def,shape:r,checks:[]})}function HP(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return rt(t,{...t._zod.def,shape:r,checks:[]})}function GP(t,e){let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return $c(this,"shape",n),n},checks:[]};return rt(t,r)}function BP(t,e){return rt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return $c(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function VP(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in n))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=t?new t({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)o[i]=t?new t({type:"optional",innerType:n[i]}):n[i];return rt(e,{...e._zod.def,shape:o,checks:[]})}function JP(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let i in r){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(o[i]=new t({type:"nonoptional",innerType:n[i]}))}else for(let i in n)o[i]=new t({type:"nonoptional",innerType:n[i]});return rt(e,{...e._zod.def,shape:o,checks:[]})}function br(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r].continue!==!0)return!0;return!1}function Je(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Jn(t){return typeof t=="string"?t:t?.message}function nt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Jn(t.inst?._zod.def?.error?.(t))??Jn(e?.error?.(t))??Jn(r.customError?.(t))??Jn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Yn(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function eo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Uc(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function WP(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ac,ZP,Xn,Nc,Mc,Dc,Ec,me=te(()=>{s($P,"assertEqual");s(AP,"assertNotEqual");s(NP,"assertIs");s(LP,"assertNever");s(MP,"assert");s(DP,"getValidEnumValues");s(q,"joinValues");s(_c,"jsonStringifyReplacer");s(Wn,"cached");s(Qt,"nullish");s(Kn,"cleanRegex");s(Oc,"floatSafeRemainder");s(Pe,"defineLazy");s($c,"assignProp");s(UP,"getElementAtPath");s(zP,"promiseAllObject");s(Di,"randomString");s(yr,"esc");s(Ui,"isObject");Ac=Wn(()=>{try{let t=Function;return new t(""),!0}catch{return!1}});s(Qn,"isPlainObject");s(jP,"numKeys");ZP=s(t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},"getParsedType"),Xn=new Set(["string","number","symbol"]),Nc=new Set(["string","number","bigint","boolean","symbol","undefined"]);s(kt,"escapeRegex");s(rt,"clone");s(K,"normalizeParams");s(qP,"createTransparentProxy");s(re,"stringifyPrimitive");s(Lc,"optionalKeys");Mc={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]},Dc={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};s(FP,"pick");s(HP,"omit");s(GP,"extend");s(BP,"merge");s(VP,"partial");s(JP,"required");s(br,"aborted");s(Je,"prefixIssues");s(Jn,"unwrapMessage");s(nt,"finalizeIssue");s(Yn,"getSizableOrigin");s(eo,"getLengthableOrigin");s(Uc,"issue");s(WP,"cleanEnum");Ec=class{static{s(this,"Class")}constructor(...e){}}});function ro(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function no(t,e){let r=e||function(i){return i.message},n={_errors:[]},o=s(i=>{for(let a of i.issues)if(a.code==="invalid_union")a.errors.map(c=>o({issues:c}));else if(a.code==="invalid_key")o({issues:a.issues});else if(a.code==="invalid_element")o({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let c=n,u=0;for(;u<a.path.length;){let l=a.path[u];u===a.path.length-1?(c[l]=c[l]||{_errors:[]},c[l]._errors.push(r(a))):c[l]=c[l]||{_errors:[]},c=c[l],u++}}},"processError");return o(t),n}function zc(t,e){let r=e||function(i){return i.message},n={errors:[]},o=s((i,a=[])=>{var c,u;for(let l of i.issues)if(l.code==="invalid_union")l.errors.map(d=>o({issues:d},l.path));else if(l.code==="invalid_key")o({issues:l.issues},l.path);else if(l.code==="invalid_element")o({issues:l.issues},l.path);else{let d=[...a,...l.path];if(d.length===0){n.errors.push(r(l));continue}let p=n,m=0;for(;m<d.length;){let f=d[m],g=m===d.length-1;typeof f=="string"?(p.properties??(p.properties={}),(c=p.properties)[f]??(c[f]={errors:[]}),p=p.properties[f]):(p.items??(p.items=[]),(u=p.items)[f]??(u[f]={errors:[]}),p=p.items[f]),g&&p.errors.push(r(l)),m++}}},"processError");return o(t),n}function Bh(t){let e=[];for(let r of t)typeof r=="number"?e.push(`[${r}]`):typeof r=="symbol"?e.push(`[${JSON.stringify(String(r))}]`):/[^\w$]/.test(r)?e.push(`[${JSON.stringify(r)}]`):(e.length&&e.push("."),e.push(r));return e.join("")}function jc(t){let e=[],r=[...t.issues].sort((n,o)=>n.path.length-o.path.length);for(let n of r)e.push(`\u2716 ${n.message}`),n.path?.length&&e.push(` \u2192 at ${Bh(n.path)}`);return e.join(`
|
|
26
26
|
`)}var Gh,to,Wr,Zc=te(()=>{Jr();me();Gh=s((t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,_c,2)},enumerable:!0})},"initializer"),to=T("$ZodError",Gh),Wr=T("$ZodError",Gh,{Parent:Error});s(ro,"flattenError");s(no,"formatError");s(zc,"treeifyError");s(Bh,"toDotPath");s(jc,"prettifyError")});var zi,ji,Zi,qi,Fi,qc,Hi,Fc,Gi=te(()=>{Jr();Zc();me();zi=s(t=>(e,r,n,o)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new St;if(a.issues.length){let c=new(o?.Err??t)(a.issues.map(u=>nt(u,i,ze())));throw Error.captureStackTrace(c,o?.callee),c}return a.value},"_parse"),ji=zi(Wr),Zi=s(t=>async(e,r,n,o)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let c=new(o?.Err??t)(a.issues.map(u=>nt(u,i,ze())));throw Error.captureStackTrace(c,o?.callee),c}return a.value},"_parseAsync"),qi=Zi(Wr),Fi=s(t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new St;return i.issues.length?{success:!1,error:new(t??to)(i.issues.map(a=>nt(a,o,ze())))}:{success:!0,data:i.value}},"_safeParse"),qc=Fi(Wr),Hi=s(t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>nt(a,o,ze())))}:{success:!0,data:i.value}},"_safeParseAsync"),Fc=Hi(Wr)});var vr={};Nt(vr,{_emoji:()=>Vh,base64:()=>ru,base64url:()=>Ji,bigint:()=>cu,boolean:()=>du,browserEmail:()=>oI,cidrv4:()=>eu,cidrv6:()=>tu,cuid:()=>Hc,cuid2:()=>Gc,date:()=>ou,datetime:()=>su,duration:()=>Kc,e164:()=>nu,email:()=>Xc,emoji:()=>Yc,extendedDuration:()=>QP,guid:()=>Qc,hostname:()=>oo,html5Email:()=>tI,integer:()=>uu,ip:()=>iI,ipv4:()=>Bi,ipv6:()=>Vi,ksuid:()=>Jc,lowercase:()=>fu,nanoid:()=>Wc,null:()=>pu,number:()=>lu,rfc5322Email:()=>rI,string:()=>au,time:()=>iu,ulid:()=>Bc,undefined:()=>mu,unicodeEmail:()=>nI,uppercase:()=>gu,uuid:()=>wr,uuid4:()=>XP,uuid6:()=>YP,uuid7:()=>eI,xid:()=>Vc});function Yc(){return new RegExp(Vh,"u")}function Wh(t){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`),e}function iu(t){return new RegExp(`^${Wh(t)}$`)}function su(t){let e=`${Jh}T${Wh(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}var Hc,Gc,Bc,Vc,Jc,Wc,Kc,QP,Qc,wr,XP,YP,eI,Xc,tI,rI,nI,oI,Vh,Bi,Vi,eu,tu,iI,ru,Ji,oo,nu,Jh,ou,au,cu,uu,lu,du,pu,mu,fu,gu,Wi=te(()=>{Hc=/^[cC][^\s-]{8,}$/,Gc=/^[0-9a-z]+$/,Bc=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Vc=/^[0-9a-vA-V]{20}$/,Jc=/^[A-Za-z0-9]{27}$/,Wc=/^[a-zA-Z0-9_-]{21}$/,Kc=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,QP=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Qc=/^([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})$/,wr=s(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)$/,"uuid"),XP=wr(4),YP=wr(6),eI=wr(7),Xc=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,tI=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,rI=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,nI=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,oI=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Vh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";s(Yc,"emoji");Bi=/^(?:(?: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])$/,Vi=/^(([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})$/,eu=/^((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])$/,tu=/^(([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])$/,iI=new RegExp(`(${Bi.source})|(${Vi.source})`),ru=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ji=/^[A-Za-z0-9_-]*$/,oo=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,nu=/^\+(?:[0-9]){6,14}[0-9]$/,Jh="((\\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])))",ou=new RegExp(`^${Jh}$`);s(Wh,"timeSource");s(iu,"time");s(su,"datetime");au=s(t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},"string"),cu=/^\d+n?$/,uu=/^\d+$/,lu=/^-?\d+(?:\.\d+)?/i,du=/true|false/i,pu=/null/i,mu=/undefined/i,fu=/^[^A-Z]*$/,gu=/^[^a-z]*$/});function Kh(t,e,r){t.issues.length&&e.issues.push(...Je(r,t.issues))}var Ae,Qh,Ki,Qi,hu,yu,bu,wu,vu,xu,Ru,Pu,Iu,Kr,Su,ku,Tu,Cu,Eu,_u,Ou,$u,Au,Xi=te(()=>{Jr();Wi();me();Ae=T("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Qh={number:"number",bigint:"bigint",object:"date"},Ki=T("$ZodCheckLessThan",(t,e)=>{Ae.init(t,e);let r=Qh[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,i=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<i&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Qi=T("$ZodCheckGreaterThan",(t,e)=>{Ae.init(t,e);let r=Qh[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,i=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),hu=T("$ZodCheckMultipleOf",(t,e)=>{Ae.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Oc(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),yu=T("$ZodCheckNumberFormat",(t,e)=>{Ae.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,i]=Mc[e.format];t._zod.onattach.push(a=>{let c=a._zod.bag;c.format=e.format,c.minimum=o,c.maximum=i,r&&(c.pattern=uu)}),t._zod.check=a=>{let c=a.value;if(r){if(!Number.isInteger(c)){a.issues.push({expected:n,format:e.format,code:"invalid_type",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:n,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:n,continue:!e.abort});return}}c<o&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),c>i&&a.issues.push({origin:"number",input:c,code:"too_big",maximum:i,inst:t})}}),bu=T("$ZodCheckBigIntFormat",(t,e)=>{Ae.init(t,e);let[r,n]=Dc[e.format];t._zod.onattach.push(o=>{let i=o._zod.bag;i.format=e.format,i.minimum=r,i.maximum=n}),t._zod.check=o=>{let i=o.value;i<r&&o.issues.push({origin:"bigint",input:i,code:"too_small",minimum:r,inclusive:!0,inst:t,continue:!e.abort}),i>n&&o.issues.push({origin:"bigint",input:i,code:"too_big",maximum:n,inst:t})}}),wu=T("$ZodCheckMaxSize",(t,e)=>{Ae.init(t,e),t._zod.when=r=>{let n=r.value;return!Qt(n)&&n.size!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<n&&(r._zod.bag.maximum=e.maximum)}),t._zod.check=r=>{let n=r.value;n.size<=e.maximum||r.issues.push({origin:Yn(n),code:"too_big",maximum:e.maximum,input:n,inst:t,continue:!e.abort})}}),vu=T("$ZodCheckMinSize",(t,e)=>{Ae.init(t,e),t._zod.when=r=>{let n=r.value;return!Qt(n)&&n.size!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{let n=r.value;n.size>=e.minimum||r.issues.push({origin:Yn(n),code:"too_small",minimum:e.minimum,input:n,inst:t,continue:!e.abort})}}),xu=T("$ZodCheckSizeEquals",(t,e)=>{Ae.init(t,e),t._zod.when=r=>{let n=r.value;return!Qt(n)&&n.size!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag;n.minimum=e.size,n.maximum=e.size,n.size=e.size}),t._zod.check=r=>{let n=r.value,o=n.size;if(o===e.size)return;let i=o>e.size;r.issues.push({origin:Yn(n),...i?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},input:r.value,inst:t,continue:!e.abort})}}),Ru=T("$ZodCheckMaxLength",(t,e)=>{Ae.init(t,e),t._zod.when=r=>{let n=r.value;return!Qt(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<n&&(r._zod.bag.maximum=e.maximum)}),t._zod.check=r=>{let n=r.value;if(n.length<=e.maximum)return;let i=eo(n);r.issues.push({origin:i,code:"too_big",maximum:e.maximum,input:n,inst:t,continue:!e.abort})}}),Pu=T("$ZodCheckMinLength",(t,e)=>{Ae.init(t,e),t._zod.when=r=>{let n=r.value;return!Qt(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{let n=r.value;if(n.length>=e.minimum)return;let i=eo(n);r.issues.push({origin:i,code:"too_small",minimum:e.minimum,input:n,inst:t,continue:!e.abort})}}),Iu=T("$ZodCheckLengthEquals",(t,e)=>{Ae.init(t,e),t._zod.when=r=>{let n=r.value;return!Qt(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=r=>{let n=r.value,o=n.length;if(o===e.length)return;let i=eo(n),a=o>e.length;r.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},input:r.value,inst:t,continue:!e.abort})}}),Kr=T("$ZodCheckStringFormat",(t,e)=>{var r;Ae.init(t,e),t._zod.onattach.push(n=>{n._zod.bag.format=e.format,e.pattern&&(n._zod.bag.pattern=e.pattern)}),(r=t._zod).check??(r.check=n=>{if(!e.pattern)throw new Error("Not implemented.");e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:e.format,input:n.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})})}),Su=T("$ZodCheckRegex",(t,e)=>{Kr.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),ku=T("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=fu),Kr.init(t,e)}),Tu=T("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=gu),Kr.init(t,e)}),Cu=T("$ZodCheckIncludes",(t,e)=>{Ae.init(t,e);let r=new RegExp(kt(e.includes));e.pattern=r,t._zod.onattach.push(n=>{n._zod.bag.pattern=r}),t._zod.check=n=>{n.value.includes(e.includes,e.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:n.value,inst:t,continue:!e.abort})}}),Eu=T("$ZodCheckStartsWith",(t,e)=>{Ae.init(t,e);let r=new RegExp(`^${kt(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{n._zod.bag.pattern=r}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),_u=T("$ZodCheckEndsWith",(t,e)=>{Ae.init(t,e);let r=new RegExp(`.*${kt(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{n._zod.bag.pattern=new RegExp(`.*${kt(e.suffix)}$`)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});s(Kh,"handleCheckPropertyResult");Ou=T("$ZodCheckProperty",(t,e)=>{Ae.init(t,e),t._zod.check=r=>{let n=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(n instanceof Promise)return n.then(o=>Kh(o,r,e.property));Kh(n,r,e.property)}}),$u=T("$ZodCheckMimeType",(t,e)=>{Ae.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(n=>{n._zod.bag.mime=e.mime}),t._zod.check=n=>{r.has(n.value.type)||n.issues.push({code:"invalid_value",values:e.mime,input:n.value.type,path:["type"],inst:t})}}),Au=T("$ZodCheckOverwrite",(t,e)=>{Ae.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}})});var io,Nu=te(()=>{io=class{static{s(this,"Doc")}constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
27
27
|
`).filter(a=>a),o=Math.min(...n.map(a=>a.length-a.trimStart().length)),i=n.map(a=>a.slice(o)).map(a=>" ".repeat(this.indent*2)+a);for(let a of i)this.content.push(a)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new e(...r,o.join(`
|
|
28
28
|
`))}}});var Lu,Mu=te(()=>{Lu={major:4,minor:0,patch:0}});function nl(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}function ly(t){if(!Ji.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return nl(r)}function dy(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r,o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}function Yh(t,e,r){t.issues.length&&e.issues.push(...Je(r,t.issues)),e.value[r]=t.value}function Yi(t,e,r){t.issues.length&&e.issues.push(...Je(r,t.issues)),e.value[r]=t.value}function ey(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Je(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function ty(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(i=>nt(i,n,ze())))}),e}function py(t,e,r){let n=!0,o=t?.[e];if(r.values.size&&!r.values.has(o)&&(n=!1),r.maps.length>0)for(let i of r.maps)sI(o,i)||(n=!1);return n}function sI(t,e){let r=!0;for(let[n,o]of e)py(t,n,o)||(r=!1);return r}function Du(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Qn(t)&&Qn(e)){let r=Object.keys(e),n=Object.keys(t).filter(i=>r.indexOf(i)!==-1),o={...t,...e};for(let i of n){let a=Du(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};o[i]=a.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],i=e[n],a=Du(o,i);if(!a.valid)return{valid:!1,mergeErrorPath:[n,...a.mergeErrorPath]};r.push(a.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function ry(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),br(t))return t;let n=Du(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}function es(t,e,r){t.issues.length&&e.issues.push(...Je(r,t.issues)),e.value[r]=t.value}function ny(t,e,r,n,o,i,a){t.issues.length&&(Xn.has(typeof n)?r.issues.push(...Je(n,t.issues)):r.issues.push({origin:"map",code:"invalid_key",input:o,inst:i,issues:t.issues.map(c=>nt(c,a,ze()))})),e.issues.length&&(Xn.has(typeof n)?r.issues.push(...Je(n,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:o,inst:i,key:n,issues:e.issues.map(c=>nt(c,a,ze()))})),r.value.set(t.value,e.value)}function oy(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}function iy(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}function sy(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}function ay(t,e,r){return br(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}function cy(t){return t.value=Object.freeze(t.value),t}function uy(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Uc(o))}}var ue,so,Ce,Uu,zu,ju,Zu,qu,Fu,Hu,Gu,Bu,Vu,Ju,Wu,Ku,Qu,Xu,Yu,el,tl,rl,ol,il,sl,al,ts,cl,ao,rs,ul,ll,dl,pl,ml,co,fl,gl,hl,yl,bl,ns,wl,vl,xr,xl,Rl,Pl,Il,Sl,kl,Tl,Cl,El,_l,Ol,$l,Al,Nl,Ll,uo,Ml,Dl,Ul,zl,jl,lo=te(()=>{Xi();Jr();Nu();Gi();Wi();me();Mu();me();ue=T("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.id=e.type+"_"+Di(10),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Lu;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let i of o._zod.onattach)i(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=s((i,a,c)=>{let u=br(i),l;for(let d of a){if(d._zod.when){if(!d._zod.when(i))continue}else if(u)continue;let p=i.issues.length,m=d._zod.check(i);if(m instanceof Promise&&c?.async===!1)throw new St;if(l||m instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await m,i.issues.length!==p&&(u||(u=br(i,p)))});else{if(i.issues.length===p)continue;u||(u=br(i,p))}}return l?l.then(()=>i):i},"runChecks");t._zod.run=(i,a)=>{let c=t._zod.parse(i,a);if(c instanceof Promise){if(a.async===!1)throw new St;return c.then(u=>o(u,n,a))}return o(c,n,a)}}t["~standard"]={validate:s(o=>{try{let i=qc(t,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Fc(t,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},"validate"),vendor:"zod",version:1}}),so=T("$ZodString",(t,e)=>{ue.init(t,e),t._zod.pattern=t?._zod.bag?.pattern??au(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),Ce=T("$ZodStringFormat",(t,e)=>{Kr.init(t,e),so.init(t,e)}),Uu=T("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Qc),Ce.init(t,e)}),zu=T("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=wr(n))}else e.pattern??(e.pattern=wr());Ce.init(t,e)}),ju=T("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Xc),Ce.init(t,e)}),Zu=T("$ZodURL",(t,e)=>{Ce.init(t,e),t._zod.check=r=>{try{let n=new URL(r.value);oo.lastIndex=0,oo.test(n.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:oo.source,input:r.value,inst:t}),e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(n.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t}));return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t})}}}),qu=T("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Yc()),Ce.init(t,e)}),Fu=T("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Wc),Ce.init(t,e)}),Hu=T("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Hc),Ce.init(t,e)}),Gu=T("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Gc),Ce.init(t,e)}),Bu=T("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Bc),Ce.init(t,e)}),Vu=T("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Vc),Ce.init(t,e)}),Ju=T("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Jc),Ce.init(t,e)}),Wu=T("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=su(e)),Ce.init(t,e)}),Ku=T("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=ou),Ce.init(t,e)}),Qu=T("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=iu(e)),Ce.init(t,e)}),Xu=T("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Kc),Ce.init(t,e)}),Yu=T("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Bi),Ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.format="ipv4"})}),el=T("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Vi),Ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t})}}}),tl=T("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=eu),Ce.init(t,e)}),rl=T("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=tu),Ce.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let i=Number(o);if(`${i}`!==o)throw new Error;if(i<0||i>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t})}}});s(nl,"isValidBase64");ol=T("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=ru),Ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{nl(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t})}});s(ly,"isValidBase64URL");il=T("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ji),Ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{ly(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t})}}),sl=T("$ZodE164",(t,e)=>{e.pattern??(e.pattern=nu),Ce.init(t,e)});s(dy,"isValidJWT");al=T("$ZodJWT",(t,e)=>{Ce.init(t,e),t._zod.check=r=>{dy(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t})}}),ts=T("$ZodNumber",(t,e)=>{ue.init(t,e),t._zod.pattern=t._zod.bag.pattern??lu,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...i?{received:i}:{}}),r}}),cl=T("$ZodNumber",(t,e)=>{yu.init(t,e),ts.init(t,e)}),ao=T("$ZodBoolean",(t,e)=>{ue.init(t,e),t._zod.pattern=du,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}}),rs=T("$ZodBigInt",(t,e)=>{ue.init(t,e),t._zod.pattern=cu,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}let{value:o}=r;return typeof o=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:o,inst:t}),r}}),ul=T("$ZodBigInt",(t,e)=>{bu.init(t,e),rs.init(t,e)}),ll=T("$ZodSymbol",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>{let{value:o}=r;return typeof o=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:o,inst:t}),r}}),dl=T("$ZodUndefined",(t,e)=>{ue.init(t,e),t._zod.pattern=mu,t._zod.values=new Set([void 0]),t._zod.parse=(r,n)=>{let{value:o}=r;return typeof o>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:o,inst:t}),r}}),pl=T("$ZodNull",(t,e)=>{ue.init(t,e),t._zod.pattern=pu,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let{value:o}=r;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}}),ml=T("$ZodAny",(t,e)=>{ue.init(t,e),t._zod.parse=r=>r}),co=T("$ZodUnknown",(t,e)=>{ue.init(t,e),t._zod.parse=r=>r}),fl=T("$ZodNever",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),gl=T("$ZodVoid",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>{let{value:o}=r;return typeof o>"u"||r.issues.push({expected:"void",code:"invalid_type",input:o,inst:t}),r}}),hl=T("$ZodDate",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let o=r.value,i=o instanceof Date;return i&&!Number.isNaN(o.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:o,...i?{received:"Invalid Date"}:{},inst:t}),r}});s(Yh,"handleArrayResult");yl=T("$ZodArray",(t,e)=>{ue.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let i=[];for(let a=0;a<o.length;a++){let c=o[a],u=e.element._zod.run({value:c,issues:[]},n);u instanceof Promise?i.push(u.then(l=>Yh(l,r,a))):Yh(u,r,a)}return i.length?Promise.all(i).then(()=>r):r}});s(Yi,"handleObjectResult");s(ey,"handleOptionalObjectResult");bl=T("$ZodObject",(t,e)=>{ue.init(t,e);let r=Wn(()=>{let p=Object.keys(e.shape),m=Lc(e.shape);return{shape:e.shape,keys:p,keySet:new Set(p),numKeys:p.length,optionalKeys:new Set(m)}});Pe(t._zod,"disc",()=>{let p=e.shape,m=new Map,f=!1;for(let g in p){let b=p[g]._zod;if(b.values||b.disc){f=!0;let h={values:new Set(b.values??[]),maps:b.disc?[b.disc]:[]};m.set(g,h)}}if(f)return m});let n=s(p=>{let m=new io(["shape","payload","ctx"]),{keys:f,optionalKeys:g}=r.value,b=s(v=>{let C=yr(v);return`shape[${C}]._zod.run({ value: input[${C}], issues: [] }, ctx)`},"parseStr");m.write("const input = payload.value;");let h=Object.create(null);for(let v of f)h[v]=Di(15);m.write("const newResult = {}");for(let v of f)if(g.has(v)){let C=h[v];m.write(`const ${C} = ${b(v)};`);let A=yr(v);m.write(`
|
|
@@ -84,7 +84,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
84
84
|
`),this.credentialString=[this.datetime.slice(0,8),this.region,this.service,"aws4_request"].join("/"),this.signQuery&&(this.service==="s3"&&!v.has("X-Amz-Expires")&&v.set("X-Amz-Expires","86400"),v.set("X-Amz-Algorithm","AWS4-HMAC-SHA256"),v.set("X-Amz-Credential",`${this.accessKeyId}/${this.credentialString}`),v.set("X-Amz-SignedHeaders",this.signedHeaders)),this.service==="s3")try{this.encodedPath=decodeURIComponent(this.url.pathname.replace(/\+/g," "))}catch{this.encodedPath=this.url.pathname}else this.encodedPath=this.url.pathname.replace(/\/+/g,"/");b||(this.encodedPath=encodeURIComponent(this.encodedPath).replace(/%2F/g,"/")),this.encodedPath=Uh(this.encodedPath);let C=new Set;this.encodedSearch=[...this.url.searchParams].filter(([A])=>{if(!A)return!1;if(this.service==="s3"){if(C.has(A))return!1;C.add(A)}return!0}).map(A=>A.map(O=>Uh(encodeURIComponent(O)))).sort(([A,O],[S,M])=>A<S?-1:A>S?1:O<M?-1:O>M?1:0).map(A=>A.join("=")).join("&")}async sign(){return this.signQuery?(this.url.searchParams.set("X-Amz-Signature",await this.signature()),this.sessionToken&&this.appendSessionToken&&this.url.searchParams.set("X-Amz-Security-Token",this.sessionToken)):this.headers.set("Authorization",await this.authHeader()),{method:this.method,url:this.url,headers:this.headers,body:this.body}}async authHeader(){return["AWS4-HMAC-SHA256 Credential="+this.accessKeyId+"/"+this.credentialString,`SignedHeaders=${this.signedHeaders}`,`Signature=${await this.signature()}`].join(", ")}async signature(){let e=this.datetime.slice(0,8),r=[this.secretAccessKey,e,this.region,this.service].join(),n=this.cache.get(r);if(!n){let o=await Bn(`AWS4${this.secretAccessKey}`,e),i=await Bn(o,this.region),a=await Bn(i,this.service);n=await Bn(a,"aws4_request"),this.cache.set(r,n)}return Rc(await Bn(n,await this.stringToSign()))}async stringToSign(){return["AWS4-HMAC-SHA256",this.datetime,this.credentialString,Rc(await Dh(await this.canonicalString()))].join(`
|
|
85
85
|
`)}async canonicalString(){return[this.method.toUpperCase(),this.encodedPath,this.encodedSearch,`${this.canonicalHeaders}
|
|
86
86
|
`,this.signedHeaders,await this.hexBodyHash()].join(`
|
|
87
|
-
`)}async hexBodyHash(){let e=this.headers.get("X-Amz-Content-Sha256");if(e==null){if(this.body&&typeof this.body!="string"&&!("byteLength"in this.body))throw new F("body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header");e=Rc(await Dh(this.body||""))}return e}};async function Bn(t,e){let r=await crypto.subtle.importKey("raw",typeof t=="string"?Pc.encode(t):t,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return crypto.subtle.sign("HMAC",r,Pc.encode(e))}s(Bn,"hmac");async function Dh(t){return crypto.subtle.digest("SHA-256",typeof t=="string"?Pc.encode(t):t)}s(Dh,"hash");function Rc(t){return Array.prototype.map.call(new Uint8Array(t),e=>`0${e.toString(16)}`.slice(-2)).join("")}s(Rc,"buf2hex");function Uh(t){return t.replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)}s(Uh,"encodeRfc3986");function nP(t,e){let{hostname:r,pathname:n}=t,o=r.replace("dualstack.","").match(/([^.]+)\.(?:([^.]*)\.)?amazonaws\.com(?:\.cn)?$/),[i,a]=(o||["",""]).slice(1,3);if(a==="us-gov")a="us-gov-west-1";else if(a==="s3"||a==="s3-accelerate")a="us-east-1",i="s3";else if(i==="iot")r.startsWith("iot.")?i="execute-api":r.startsWith("data.jobs.iot.")?i="iot-jobs-data":i=n==="/mqtt"?"iotdevicegateway":"iotdata";else if(i==="autoscaling"){let c=(e.get("X-Amz-Target")||"").split(".")[0];c==="AnyScaleFrontendService"?i="application-autoscaling":c==="AnyScaleScalingPlannerFrontendService"&&(i="autoscaling-plans")}else a==null&&i.startsWith("s3-")?(a=i.slice(3).replace(/^fips-|^external-1/,""),i="s3"):i.endsWith("-fips")?i=i.slice(0,-5):a&&/-\d$/.test(i)&&!/-\d$/.test(a)&&([i,a]=[a,i]);return i in Mh?[Mh[i],a]:[i,a]}s(nP,"guessServiceRegion");function oP(t){return t>64&&t<91?t-65:t>96&&t<123?t-71:t>47&&t<58?t+4:t===43?62:t===47?63:0}s(oP,"b64ToUint6");function zh(t,e){let r=t.replace(/[^A-Za-z0-9+/]/g,""),n=r.length,o=e?Math.ceil((n*3+1>>2)/e)*e:n*3+1>>2,i=new Uint8Array(o),a,c,u=0,l=0;for(let d=0;d<n;d++)if(c=d&3,u|=oP(r.charCodeAt(d))<<6*(3-c),c===3||n-d===1){for(a=0;a<3&&l<o;)i[l]=u>>>(16>>>a&24)&255,a++,l++;u=0}return i}s(zh,"base64Decode");function Li(t){return t<26?t+65:t<52?t+71:t<62?t-4:t===62?43:t===63?47:65}s(Li,"uint6ToB64");function jh(t){let e=2,r="",n=t.length,o=0;for(let i=0;i<n;i++)e=i%3,o|=t[i]<<(16>>>e&24),(e===2||t.length-i===1)&&(r+=String.fromCodePoint(Li(o>>>18&63),Li(o>>>12&63),Li(o>>>6&63),Li(o&63)),o=0);return r.substring(0,r.length-2+e)+(e===2?"":e===1?"=":"==")}s(jh,"base64Encode");function Gr(t){let e=t.toString();return`${e.length===1?"0":""}${e}`}s(Gr,"numberToString");function iP(t){let e=t.getTimezoneOffset(),r=Math.abs(e),n=e>0?"-":"+",o=Gr(Math.floor(r/60)),i=Gr(r%60);return`${n}${o}${i}`}s(iP,"getCLFOffset");function Sc(t=new Date){if(!(t instanceof Date))throw new Error("clf-date: invalid parameter");let e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],r=Gr(t.getDate()),n=e[t.getMonth()],o=t.getFullYear(),i=Gr(t.getHours()),a=Gr(t.getMinutes()),c=Gr(t.getSeconds()),u=iP(t);return`${r}/${n}/${o}:${i}:${a}:${c} ${u}`}s(Sc,"toCLFDate");var Zh=Ne("zuplo:runtime"),Br="X-Amzn-Trace-Id",sP="x-amzn-errortype",qh=[],aP=s(async(t,e,r)=>{let n=r;for await(let o of qh)n=await o(t,e,r);return n},"onSendingAwsLambdaEvent"),tt=class extends F{static{s(this,"AwsLambdaError")}traceId;errorType;constructor(e,r){super(`Failed to invoke AWS Lambda function. ${e}`),this.traceId=r.get(Br)??void 0,this.errorType=r.get(sP)??void 0}},cP={addSendingAwsLambdaEventHook:s(t=>{qh.push(t)},"addSendingAwsLambdaEventHook")};async function uP(t,e){R("handler.aws-lambda");let{accessKeyId:r,secretAccessKey:n,region:o,functionName:i,useLambdaProxyIntegration:a=!0,useAwsResourcePathStyle:c=!1,binaryMediaTypes:u}=e.route.handler.options;if(!r)throw new w("awsAccessKeyId is not set in the handler options");if(!n)throw new w("secretAccessKey is not set in the handler options");if(!o)throw new w("region is not set in the handler options");if(!i)throw new w("functionName is not set in the handler options");let l=new Hr({accessKeyId:r,secretAccessKey:n}),d=`https://lambda.${o}.amazonaws.com/2015-03-31/functions/${i}/invocations`;if(Zh(`AWS Lambda URL: ${d}`),!a)return l.fetch(d,{body:await t.arrayBuffer()});let[p,m]=await mP(t,{binaryMediaTypes:u}),{options:f}=e.route.handler,g;f&&typeof f=="object"&&"payloadFormatVersion"in f&&f.payloadFormatVersion==="2.0"?g=pP(t,e):g=await dP(t,e,{useAwsResourcePathStyle:c}),Zh("Calling onSendingAwsLambdaEvent hook");let b=await aP(t,e,g);b.body=p,b.isBase64Encoded=m;let h=await l.fetch(d,{body:JSON.stringify(b)}),x=f&&typeof f=="object"&&"returnAmazonTraceIdHeader"in f&&typeof f.returnAmazonTraceIdHeader=="boolean"?f.returnAmazonTraceIdHeader:!1;try{return lP(h,{returnLambdaTraceIdHeader:x})}catch(v){if(v instanceof tt){let C=x&&v.traceId?{[Br]:v.traceId}:void 0;return D.internalServerError(t,e,void 0,C)}throw v}}s(uP,"awsLambdaHandler");async function lP(t,{returnLambdaTraceIdHeader:e}){let r;try{r=await t.json()}catch{throw new tt("Lambda response did not contain valid JSON",t.headers)}if(t.status!==200)throw r&&typeof r=="object"&&"message"in r&&typeof r.message=="string"?new tt(r.message,t.headers):new tt(`Status: ${t.statusText}`,t.headers);if(r&&typeof r=="object"&&"errorMessage"in r&&typeof r.errorMessage=="string")throw new tt(r.errorMessage,t.headers);if(!r||typeof r!="object"||!("statusCode"in r)||typeof r.statusCode!="number"){let a=t.headers.get(Br);return new Response(JSON.stringify(r),{status:t.status,headers:{"content-type":"application/json",...e&&a?{[Br]:a}:{}}})}let n=new Headers;if("headers"in r&&r.headers){if(typeof r.headers!="object")throw new tt(`Response headers must be an object. Received ${typeof r.headers}`,t.headers);for(let[a,c]of Object.entries(r.headers))n.set(a,c)}if("cookies"in r&&r.cookies){if(!Array.isArray(r.cookies))throw new tt(`Response cookies must be an array. Received ${typeof r.cookies}`,t.headers);n.set("cookie",r.cookies.join(";"))}let o;if("isBase64Encoded"in r&&typeof r.isBase64Encoded!="boolean")throw new tt(`Response property isBase64Encoded must be a boolean. Received ${typeof r.isBase64Encoded}`,t.headers);if("isBase64Encoded"in r&&r.isBase64Encoded===!0){if(!("body"in r))throw new tt("Response was set to base64 encoded but no body was set",t.headers);if(typeof r.body!="string")throw new tt("Response was set to base64 encoded but body was not a string",t.headers);o=zh(r.body)}else"body"in r&&typeof r.body=="string"?o=r.statusCode===204&&r.body===""?null:r.body:"body"in r&&r.body!==null&&r.body!==void 0?o=JSON.stringify(r.body):o=null;if(o!==null&&"bodyEncoding"in r){if(typeof r.bodyEncoding!="string"||!(r.bodyEncoding==="gzip"||r.bodyEncoding==="deflate"))throw new tt(`Response property bodyEncoding can only be set to 'gzip' or 'deflate'. Received ${r.bodyEncoding}`,t.headers);let a=new Blob([o]).stream().pipeThrough(new DecompressionStream(r.bodyEncoding));o=await new Response(a).arrayBuffer()}let i=t.headers.get(Br);return e&&i&&n.set(Br,i),new Response(o,{headers:n,status:r.statusCode})}s(lP,"getResponse");async function dP(t,e,{useAwsResourcePathStyle:r}){let n={},o={};t.headers.forEach((l,d)=>{n[d]=l,o[d]=[l]});let i=t.query,a={};for(let[l,d]of Object.entries(i))a[l]||(a[l]=[]),a[l].push(d);let c=new URL(t.url);return{version:"1.0",resource:c.pathname,path:c.pathname,httpMethod:t.method,headers:n,multiValueHeaders:o,queryStringParameters:i,multiValueQueryStringParameters:a,requestContext:{accountId:null,apiId:null,authorizer:{claims:{},scopes:[]},domainName:c.hostname,domainPrefix:null,extendedRequestId:e.requestId,httpMethod:t.method,identity:{accessKey:null,accountId:null,caller:null,cognitoAuthenticationProvider:null,cognitoAuthenticationType:null,cognitoIdentityId:null,cognitoIdentityPoolId:null,principalOrgId:null,sourceIp:t.headers.get("CF-Connecting-IP"),user:null,userAgent:t.headers.get("user-agent"),userArn:null,clientCert:{clientCertPem:null,subjectDN:null,issuerDN:null,serialNumber:null,validity:{notBefore:null,notAfter:null}}},path:c.pathname,protocol:"HTTP/1.1",requestId:e.requestId,requestTime:Sc(),requestTimeEpoch:Date.now(),resourceId:e.route.operationId??null,resourcePath:gP(e.route.path,r),stage:null},pathParameters:t.params,stageVariables:null}}s(dP,"buildEventVersion1");function pP(t,e){let r={};t.headers.forEach((i,a)=>{r[a]=i});let n=new URL(t.url);return{version:"2.0",routeKey:null,rawPath:n.pathname,rawQueryString:n.search,cookies:[],headers:r,queryStringParameters:t.query,requestContext:{accountId:null,apiId:null,authentication:{clientCert:{clientCertPem:null,subjectDN:null,issuerDN:null,serialNumber:null,validity:{notBefore:null,notAfter:null}}},authorizer:{jwt:{claims:{},scopes:[]}},domainName:n.hostname,domainPrefix:null,http:{method:t.method,path:n.pathname,protocol:"HTTP/1.1",sourceIp:t.headers.get("CF-Connecting-IP"),userAgent:t.headers.get("user-agent")},requestId:e.requestId,routeKey:null,stage:null,time:Sc(),timeEpoch:Date.now()},pathParameters:t.params,stageVariables:null}}s(pP,"buildEventVersion2");async function mP(t,{binaryMediaTypes:e}){let r,n=!1,o=t.headers.get("content-type");if(t.method==="GET"||t.method==="HEAD")r=null;else if(e&&o&&fP(e,o)){let i=await t.arrayBuffer();r=jh(new Uint8Array(i)),n=!0}else r=await t.clone().text();return[r,n]}s(mP,"getBodyResult");function fP(t,e){let r=e.split(";")[0].trim().toLowerCase();return t.findIndex(n=>n==="*/*"?!0:n.toLowerCase()===r)>-1}s(fP,"matchesContentType");function gP(t,e=!1){if(!e)return t;let r=xc(t),n=Lh(t),o={};return r.forEach(i=>{typeof i=="string"?o[i]=`{${i}}`:o[i.name]=`{${i.name}}`}),n(o)}s(gP,"getResourcePath");var hP=[502,503,504];async function Vr(t,e){if(hP.includes(t.status)){let r=Q.getLogger(e),o=await t.clone().text(),i={};for(let[a,c]of t.headers)i[a]=c;r.warn(`BadGatewayResponse ${t.status}`,{status:t.status,statusText:t.statusText,body:o,headers:i})}}s(Vr,"logBadGatewayResponses");var kc;function Kt(t){if(kc===void 0){let r=P.instance.runtime.ZUPLO_HANDLER_WRITE_LOG_LEVEL;["debug","info","warn","error"].includes(r??"")||(r="debug"),kc=r}return t.log[kc]}s(Kt,"getHandlerUserLogFunction");async function yP(t,e){R("handler.open-api");let r=P.instance.build.BUILD_ID,{buildAssetsUrl:n}=P.instance,o=e.route.handler.options,{openApiFilePath:i}=o;if(!i)throw new w("Open API Spec Handler must have 'openApiFilePath' specified");let a=bP(i);if(!a.isValid)throw new w(a.error);let c=`${n}/${r}${i.substring(1)}`,u=await j.fetch(c,{method:t.method,body:t.body,headers:t.headers});if(u.status!==200)return D.notFound(t,e,{detail:"OpenAPI file could not be found."});let l={"content-type":"application/json",vary:"Accept-Encoding"};P.instance.isDeno||(l["content-encoding"]=u.headers.get("content-encoding")||"");let d=new Response(u.body,{headers:l,status:u.status,statusText:u.statusText});return Vr(d,e),d}s(yP,"openApiSpecHandler");var bP=s(t=>t.startsWith("./")?t.startsWith("./config")?t.endsWith(".oas.json")?{isValid:!0}:{isValid:!1,error:"'openApiFilePath' must point to a file ending in '.oas.json'"}:{isValid:!1,error:"'openApiFilePath' must point to a file in your /config directory"}:{isValid:!1,error:"'openApiFilePath' must start with './'"},"validateOpenApiPath");async function wP(t,e){R("handler.redirect");let r=e.route.handler.options;if(!r.location)throw new w("Redirect Handler must have 'location' specified");let n=r.status??302;return new Response(null,{status:n,headers:{location:r.location}})}s(wP,"redirectHandler");async function vP(t){if(R("handler.zuplo-service-proxy"),Object.entries(t.params).length!==1)throw new w("The service proxy handler only supports one wildcard path parameter. Change your url to something like '/service/{path}'");let e=new URL(t.params.path,P.instance.zuploEdgeApiUrl),r=new Headers(t.headers);return r.set("Authorization",`Bearer ${P.instance.authApiJWT}`),j.fetch(e,{method:t.method,headers:r,body:t.body})}s(vP,"zuploServiceProxy");function xP(t,e){let r=t.endsWith("/"),n=e.startsWith("/");return r&&n?`${t.substring(0,t.length-1)}${e}`:!r&&!n?`${t}/${e}`:`${t}${e}`}s(xP,"join");async function RP(t,e){R("handler.url-forward");let r=Kt(e),n=e.route.handler.options,o=n.forwardSearch!==!1,i;if(P.instance.build.COMPATIBILITY_FLAGS.useForwardRedirectsPropOnUrlForwardHandler?i=n.followRedirects===!0?"follow":"manual":typeof n.followRedirects<"u"&&R("handler.url-forward.follow-redirects"),!n.baseUrl)throw new Error("URL Forward Handler must have 'baseUrl' specified");if(!n||typeof n.__rewriteFunction!="function")throw new w("Invalid options for this route");let a=Wt(e),c=new URL(t.url),u=n.__rewriteFunction(t,a),l=xP(u,c.pathname),d=o?`${l}${c.search}`:l.toString(),p=Date.now();r(`URL Forwarding to '${d}'`);let m=t.body;if(i==="follow"&&t.body)try{m=await t.arrayBuffer()}catch(b){throw new Error(`Failed to buffer request body for redirect handling: ${b}`)}let f=await fetch(d,{method:t.method,body:m,headers:t.headers,redirect:i}),g=Date.now()-p;return r(`URL Forward received response ${f.status} - ${f.statusText} in ${g}ms`),Vr(f,e),f}s(RP,"urlForwardHandler");var PP=s((t,e)=>{let r=new URL(t),n=new URL(e);for(let[o,i]of n.searchParams.entries())r.searchParams.append(o,i);return r.toString()},"addQuery");async function IP(t,e){R("handler.url-rewrite");let r=Kt(e),n=e.route.handler.options,o=n.forwardSearch!==!1,i=n.followRedirects??!1;if(!n||typeof n.__rewriteFunction!="function")throw new w("Invalid options for this route");let a=Wt(e),c=n.__rewriteFunction(t,a),u=o?PP(c,t.url):c,l=Date.now();r(`URL Rewriting to '${u}'`);let d=await fetch(u.toString(),{method:t.method,body:t.body,headers:t.headers,redirect:i?"follow":"manual"}),p=Date.now()-l;return r(`URL Rewrite received response ${d.status} - ${d.statusText} in ${p}ms`),Vr(d,e),d}s(IP,"urlRewriteHandler");function SP(t,e,r){t.addEventListener("close",()=>{e.close()}),e.addEventListener("close",()=>{t.close()}),t.addEventListener("error",n=>{r.log.error(`Incoming WebSocket error: ${JSON.stringify(n)}`),e.send(JSON.stringify(n))}),e.addEventListener("error",n=>{r.log.error(`Outgoing WebSocket error: ${JSON.stringify(n)}`),t.send(JSON.stringify(n))}),t.addEventListener("message",n=>{e.send(n.data)}),e.addEventListener("message",n=>{t.send(n.data)})}s(SP,"wireUpPassthrough");async function kP(t,e){R("handler.websocket");let r=e.route.handler.options,n=Kt(e);if(!r||!r.rewritePattern)throw new w("WebSocket Handler must have option 'rewritePattern' specified");let o=t.headers.get("Upgrade");if(!o||o!=="websocket")return D.badRequest(t,e,{detail:"Request must include header 'Upgrade: websocket'"});if(!r||typeof r.__rewriteFunction!="function")throw new w("Invalid options for this route");let i=Wt(e),a=r.__rewriteFunction(t,i);if(n(`Attempting WebSocket connection to '${a}'`),P.instance.isDeno){if(!t.originalRequest)throw new Error("Original websocket request is not available");let c=new WebSocket(a);await new Promise((d,p)=>{let m=s(()=>{g(),n("WebSocket connection established with upstream"),d()},"onOpen"),f=s(b=>{g(),n(`WebSocket connection error: ${b}`),p(new Error("Upstream open failed"))},"onErr"),g=s(()=>{c.removeEventListener("open",m),c.removeEventListener("error",f)},"cleanup");c.addEventListener("open",m),c.addEventListener("error",f)}).catch(d=>{throw new Error(`Failed to open outgoing socket: ${d.message}`)});let{socket:u,response:l}=globalThis.Deno.upgradeWebSocket(t.originalRequest);return SP(u,c,e),l}else{a=a.replace(/^(ws)/,"http");let c=await fetch(a,{method:t.method,headers:t.headers,body:t.body});if(c.status!==101||!c.webSocket){let u=await c.text(),l=`WebSocket connection error - ${c.status}: ${c.statusText}, content: '${u}'`;throw new Error(l)}return n(`WebSocket connected, received response ${c.status} - ${c.statusText}`),new Response(null,{status:101,webSocket:c.webSocket})}}s(kP,"webSocketHandler");async function TP(t,e){let r=we.instance.runtimeSettings.developerPortal.urls?.urls?.[0];if(!r)throw new w("Developer portal URL is not configured.");let n=CP(t.url,r);return e.log.info(`Redirecting from legacy dev portal to ${n}`),new Response(null,{status:301,headers:{location:n}})}s(TP,"redirectLegacyDevPortal");function CP(t,e){let r=new URL(t),n=r.pathname.split("/")[1];if(!n)throw new w("The request URL does not contain a valid developer portal base path. This handler cannot be used on a root path");return r.hostname=new URL(e).hostname,r.pathname=r.pathname.substring(n.length+1),r.toString()}s(CP,"getDevPortalRedirectUrl");var Tc=s((t,e)=>t.map((n,o)=>{let i;if(typeof n.module=="object"&&(i=n.module[n.export]),!i||typeof i!="function"){let a=e==="inbound"?"WebSocketInboundPolicy":"WebSocketOutboundPolicy",c=`policy in position: ${o+1}, export name: ${n.export}`;throw new w(`${a} - Websocket policy must be a valid function (${c})`)}return i}),"getWebSocketPolicyFunctions"),Fh=s(async(t,e,r,n,o,i)=>{let a=t.data;if(i&&i.length>0){let c=[...i];for(;c.length>0;){let u=c.shift();if(!u)return a;if(a=await u(a,r,e,n,o),a===void 0)return}}return a},"webSocketPolicyProcessor");async function EP(t,e,r){r(`Attempting WebSocket connection to '${e}'`);let n=new WebSocket(e);await new Promise((a,c)=>{let u=s(()=>{d(),r("WebSocket connection established with upstream"),a()},"onOpen"),l=s(p=>{d(),r(`WebSocket connection error: ${p}`),c(new Error("Upstream open failed"))},"onErr"),d=s(()=>{n.removeEventListener("open",u),n.removeEventListener("error",l)},"cleanup");n.addEventListener("open",u),n.addEventListener("error",l)}).catch(a=>{throw new Error(`Failed to open outgoing socket: ${a.message}`)});let{socket:o,response:i}=globalThis.Deno.upgradeWebSocket(t);return{clientSocket:o,outgoingSocket:n,response:i}}s(EP,"getDenoClientAndServerSockets");async function _P(t,e,r){r(`Attempting WebSocket connection to '${e}'`);let n=await fetch(e,{method:t.method,headers:t.headers,body:t.body});if(n.status!==101||!n.webSocket){let u=await n.text(),l=`WebSocket connection error - ${n.status}: ${n.statusText}, content: '${u}'`;throw new Error(l)}let o=new WebSocketPair,[i,a]=Object.values(o);r(`WebSocket connected, received response ${n.status} - ${n.statusText}`),n.webSocket.accept(),a.accept();let c=new Response(null,{status:101,webSocket:i});return{clientSocket:i,outgoingSocket:n.webSocket,serverSocket:a,response:c}}s(_P,"getCfClientAndServerSockets");function Hh(t,e,r,n,o,i){t.addEventListener("close",()=>{e.close()}),t.addEventListener("error",a=>{n.log.error(`WebSocket error: ${JSON.stringify(a)}, direction: ${i}`),e.send(JSON.stringify(a))}),t.addEventListener("message",a=>{try{let u=s(async l=>{let d=await Fh(l,t,e,r,n,o);d!==void 0&&e.send(d)},"innerPipeline")(a).catch(n.log.error);n.waitUntil(u)}catch(c){n.log.error(c)}})}s(Hh,"wireUpListeners");async function OP(t,e){R("handler.websocket-pipeline");let r=e.route.handler.options,n=Kt(e);if(!r||!r.rewritePattern)throw new w("WebSocket Pipeline Handler must have option 'rewritePattern' specified");let o=t.headers.get("Upgrade");if(!o||o!=="websocket")return D.badRequest(t,e,{detail:"Request must include header 'Upgrade: websocket'"});if(!r||typeof r.__rewriteFunction!="function")throw new w("Invalid options for this route");let i=Wt(e),a=r.__rewriteFunction(t,i),c=r.policies?.inbound?Tc(r.policies.inbound,"inbound"):[],u=r.policies?.outbound?Tc(r.policies.outbound,"outbound"):[],l,d,p,m;if(P.instance.isDeno){if(!t.originalRequest)throw new Error("Original websocket request is not available");let f=await EP(t.originalRequest,a,n);p=f.clientSocket,l=p,d=f.outgoingSocket,m=f.response}else{a=a.replace(/^(ws)/,"http");let f=await _P(t,a,n);l=f.serverSocket,d=f.outgoingSocket,p=f.clientSocket,m=f.response}return Hh(l,d,t,e,c,"inbound"),Hh(d,l,t,e,u,"outbound"),m}s(OP,"webSocketPipelineHandler");Ze();Yt();Yt();function Ir({id:t,method:e,params:r}){return{jsonrpc:dt,id:t,method:e,params:r}}s(Ir,"newJSONRPCRequest");function Ct({id:t,result:e}){return{jsonrpc:dt,id:t,result:e}}s(Ct,"newJSONRPCReponse");function Se({id:t,code:e,message:r,data:n}){return{jsonrpc:dt,id:t,error:{code:e,message:r,data:n}}}s(Se,"newJSONRPCError");Ze();Yt();js();var _w=y.object({jsonrpc:y.literal(dt),id:Ew,error:y.object({code:y.number().int(),message:y.string(),data:y.optional(y.unknown())})}).strict();No();Sr();kr();var Lo=s(t=>$w.safeParse(t).success,"isJSONRPCRequest"),Nw=s(t=>Ow.safeParse(t).success,"isJSONRPCNotification"),nn=s(t=>Aw.safeParse(t).success,"isJSONRPCResponse"),tr=s(t=>_w.safeParse(t).success,"isJSONRPCError");var Mo=class{static{s(this,"NoOpLogger")}debug(){}info(){}warn(){}error(){}};function rr(){return new Mo}s(rr,"createDefaultLogger");Ze();Sr();kr();Ze();var Lw=y.object({experimental:y.optional(y.object({}).loose()),roots:y.optional(y.object({listChanged:y.optional(y.boolean())}).loose()),sampling:y.optional(y.object({}).loose()),elicitation:y.optional(y.object({}).loose())}).loose(),Mw=y.object({experimental:y.optional(y.object({}).loose()),logging:y.optional(y.object({}).loose()),completions:y.optional(y.object({}).loose()),prompts:y.optional(y.object({listChanged:y.optional(y.boolean())}).loose()),resources:y.optional(y.object({subscribe:y.optional(y.boolean()),listChanged:y.optional(y.boolean())}).loose()),tools:y.optional(y.object({listChanged:y.optional(y.boolean())}).loose())}).loose();Ze();on();var tm=Et.extend({version:y.string()});var Dw=it.extend({method:y.literal("initialize"),params:ot.extend({protocolVersion:y.string(),capabilities:Lw,clientInfo:tm})}),MF=pt.extend({protocolVersion:y.string(),capabilities:Mw,serverInfo:tm,instructions:y.optional(y.string())});Ze();No();Sr();kr();on();Zs();var AC=Et.extend({description:y.optional(y.string()),required:y.optional(y.boolean())}),NC=Et.extend({description:y.optional(y.string()),arguments:y.optional(y.array(AC)),_meta:y.optional(y.object({}).loose())}),LC=y.lazy(()=>{let{TextContentSchema:t,ImageContentSchema:e,AudioContentSchema:r,EmbeddedResourceSchema:n}=(om(),Qo(nm)),{ResourceLinkSchema:o}=(qs(),Qo(lm));return y.object({role:y.enum(["user","assistant"]),content:y.discriminatedUnion("type",[t,e,r,o,n])}).loose()}),Fw=or.extend({method:y.literal("prompts/list")}),aH=ir.extend({prompts:y.array(NC)}),Hw=it.extend({method:y.literal("prompts/get"),params:ot.extend({name:y.string(),arguments:y.optional(y.record(y.string(),y.string()))})}),cH=pt.extend({description:y.optional(y.string()),messages:y.array(LC)}),uH=er.extend({method:y.literal("notifications/prompts/list_changed")});qs();Ze();No();Sr();kr();on();Zs();var MC=y.object({title:y.optional(y.string()),readOnlyHint:y.optional(y.boolean()),destructiveHint:y.optional(y.boolean()),idempotentHint:y.optional(y.boolean()),openWorldHint:y.optional(y.boolean())}).loose(),DC=Et.extend({description:y.optional(y.string()),inputSchema:y.object({type:y.literal("object"),properties:y.optional(y.record(y.string(),y.object({}).loose())),required:y.optional(y.array(y.string()))}).loose(),outputSchema:y.optional(y.object({type:y.literal("object"),properties:y.optional(y.record(y.string(),y.object({}).loose())),required:y.optional(y.array(y.string()))}).loose()),annotations:y.optional(MC),_meta:y.optional(y.object({}).loose())}),yH=or.extend({method:y.literal("tools/list")}),bH=ir.extend({tools:y.array(DC)}),Gw=it.extend({method:y.literal("tools/call"),params:ot.extend({name:y.string(),arguments:y.optional(y.record(y.string(),y.unknown()))})}),wH=y.lazy(()=>{let{TextContentSchema:t,ImageContentSchema:e,AudioContentSchema:r,EmbeddedResourceSchema:n}=(om(),Qo(nm)),{ResourceLinkSchema:o}=(qs(),Qo(lm));return pt.extend({content:y.array(y.discriminatedUnion("type",[t,e,r,o,n])),structuredContent:y.optional(y.record(y.string(),y.unknown())),isError:y.optional(y.boolean())})}),vH=er.extend({method:y.literal("notifications/tools/list_changed")});var Do="2025-06-18",dm="2025-03-26",pm="2024-11-05",mm="2024-10-07",fm=[Do,dm,pm,mm];var UC="MCP Server",zC="0.0.0",Fs=class{static{s(this,"MCPServer")}capabilities;tools=new Map;prompts=new Map;resources=new Map;name;version;instructions;logger;constructor(e){this.name=e.name||UC,this.version=e.version||zC,this.instructions=e.instructions||void 0,this.logger=e.logger||rr(),this.capabilities={tools:{supported:!0,available:[]},prompts:{},resources:{},...e.capabilities}}withTransport(e){e.onMessage(async r=>{try{if(Lo(r)){let n=await this.handleRequest(r);if(n)return await e.send(n),n}else{if(Nw(r))return await this.handleNotification(r),null;if(nn(r))return this.logger.debug("Received response:",r),null}}catch(n){if(this.logger.error("Error processing message:",n),Lo(r)){let o=Se({id:r.id,code:Ie.InternalError,message:n instanceof Error?n.message:"Internal error"});return await e.send(o),o}}return null})}getTool(e){return this.tools.get(e)?.tool}getTools(){let e=new Map;for(let[r,n]of this.tools.entries())e.set(r,n.tool);return e}getCapabilities(){return{...this.capabilities}}addTool(e){let{name:r,validator:n,handler:o,description:i=`Execute the ${r} tool`,outputSchema:a}=e,u={tool:{name:r,description:i,inputSchema:n.jsonSchema,...a&&{outputSchema:a}},validator:n,handler:o};this.tools.set(r,u),this.updateAvailableTools()}removeTool(e){let r=this.tools.delete(e);return r&&this.updateAvailableTools(),r}getToolDefinitions(){return Array.from(this.tools.values()).map(e=>e.tool)}addPrompt(e){let{name:r,validator:n,generator:o,description:i}=e,a=n.jsonSchema,c;if(a.properties&&typeof a.properties=="object"){let d=new Set(a.required||[]);c=Object.entries(a.properties).map(([p,m])=>({name:p,description:m.description??`Prompt for ${p}`,required:d.has(p)}))}let l={prompt:{name:r,description:i,...c&&{arguments:c}},validator:n,generator:o};this.prompts.set(r,l)}removePrompt(e){return this.prompts.delete(e)}getPrompt(e){return this.prompts.get(e)?.prompt}getPromptDefinitions(){return Array.from(this.prompts.values()).map(e=>e.prompt)}addResource(e,r,n,o){if(typeof r=="string"){let a={type:"resource",resource:{name:e,uri:r,...n},reader:o};this.resources.set(e,a)}else{let a={type:"template",template:{name:e,uriTemplate:r.template,...n},reader:o};this.resources.set(e,a)}}removeResource(e){return this.resources.delete(e)}getResource(e){let r=this.resources.get(e);if(r)return r.type==="resource"?r.resource:void 0}getResourceTemplate(e){let r=this.resources.get(e);if(r)return r.type==="template"?r.template:void 0}getResourceDefinitions(){return Array.from(this.resources.values()).filter(e=>e.type==="resource").map(e=>e.resource)}getResourceTemplateDefinitions(){return Array.from(this.resources.values()).filter(e=>e.type==="template").map(e=>e.template)}async handleRequest(e){try{switch(e.method){case"ping":return this.handlePing(e);case"initialize":return this.handleInitialize(e);case"tools/list":return this.handleToolListRequest(e);case"tools/call":return this.handleToolCallRequest(e);case"prompts/list":return this.handlePromptListRequest(e);case"prompts/get":return this.handlePromptGetRequest(e);case"resources/list":return this.handleResourceListRequest(e);case"resources/templates/list":return this.handleResourceTemplateListRequest(e);case"resources/read":return this.handleResourceReadRequest(e);default:return Se({id:e.id,code:Ie.MethodNotFound,message:`Method "${e.method}" not found`})}}catch(r){return this.logger.error("Error handling request:",r),Se({id:e.id,code:Ie.InternalError,message:r instanceof Error?r.message:"Internal error"})}}async handleNotification(e){this.logger.debug("Received notification:",e.method)}handlePing(e){return Ct({id:e.id,result:{}})}handleInitialize(e){let r=Dw.safeParse(e);if(!r.success){let o=y.treeifyError(r.error),i=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${i}`,data:o})}let n=r.data.params.protocolVersion;switch(n){case Do:case dm:case pm:case mm:{let o={protocolVersion:n,capabilities:this.getCapabilities(),serverInfo:{name:this.name,version:this.version},...this.instructions?{instructions:this.instructions}:{}};return Ct({id:e.id,result:o})}default:return Se({id:e.id,code:Ie.InvalidParams,message:`Unsupported protocol version: ${n} - supported versions: ${fm}`,data:{supportedVersions:fm}})}}async handleToolListRequest(e){let n={tools:Array.from(this.tools.entries()).map(([o,i])=>i.tool)};return Ct({id:e.id,result:n})}async handleToolCallRequest(e){let r=Gw.safeParse(e);if(!r.success)return this.logger.warn("Could not validate tool call:",r.error),Se({id:e.id,code:Ie.InvalidRequest,message:`Invalid request ${r.error}`});let n=r.data,o=n.params.name,i=this.tools.get(o);if(!i)return Se({id:e.id,code:Ie.InvalidParams,message:`Tool "${o}" not found`});let a=n.params.arguments??{},c=i.validator.parse(a);if(!c.success)return Se({id:e.id,code:Ie.InvalidParams,message:c.errorMessage?`Invalid arguments for tool '${o}': ${c.errorMessage}`:`Invalid arguments for tool '${o}'`,data:c.errorData});try{let u=c.data,l=await i.handler(u);return Ct({id:e.id,result:l})}catch(u){return this.logger.error(`Error executing tool "${o}":`,u),Se({id:e.id,code:Ie.InternalError,message:u instanceof Error?u.message:"Tool execution error"})}}async handlePromptListRequest(e){let r=Fw.safeParse(e);if(!r.success){let i=y.treeifyError(r.error),a=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${a}`,data:i})}let o={prompts:Array.from(this.prompts.values()).map(i=>i.prompt)};return Ct({id:e.id,result:o})}async handlePromptGetRequest(e){let r=Hw.safeParse(e);if(!r.success){let c=y.treeifyError(r.error),u=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${u}`,data:c})}let n=r.data.params.name,o=this.prompts.get(n);if(!o)return Se({id:e.id,code:Ie.InvalidParams,message:`Prompt "${n}" not found`});let i=r.data.params.arguments??{},a=o.validator.parse(i);if(!a.success)return Se({id:e.id,code:Ie.InvalidParams,message:a.errorMessage?`Invalid arguments for prompt '${n}': ${a.errorMessage}`:`Invalid arguments for prompt '${n}'`,data:a.errorData});try{let c=a.data,u=await o.generator(c),l={...o.prompt.description&&{description:o.prompt.description},messages:u};return Ct({id:e.id,result:l})}catch(c){return this.logger.error(`Error generating prompt "${n}":`,c),Se({id:e.id,code:Ie.InternalError,message:c instanceof Error?c.message:"Prompt generation error"})}}updateAvailableTools(){this.capabilities.tools&&(this.capabilities.tools.available=Array.from(this.tools.keys()))}async handleResourceListRequest(e){let r=am.safeParse(e);if(!r.success){let i=y.treeifyError(r.error),a=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${a}`,data:i})}let o={resources:Array.from(this.resources.values()).filter(i=>i.type==="resource").map(i=>i.resource)};return Ct({id:e.id,result:o})}async handleResourceTemplateListRequest(e){let r=cm.safeParse(e);if(!r.success){let i=y.treeifyError(r.error),a=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${a}`,data:i})}let o={resourceTemplates:Array.from(this.resources.values()).filter(i=>i.type==="template").map(i=>i.template)};return Ct({id:e.id,result:o})}async handleResourceReadRequest(e){let r=um.safeParse(e);if(!r.success){let a=y.treeifyError(r.error),c=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${c}`,data:a})}let n=r.data.params.uri;function o(a,c){let u=c.replace(/\{[^}]+\}/g,"([^/]+)");return new RegExp(`^${u}$`).test(a)}s(o,"matchesTemplate");let i=Array.from(this.resources.values()).find(a=>a.type==="resource"&&a.resource.uri===n||a.type==="template"&&o(n,a.template.uriTemplate));if(!i)return Se({id:e.id,code:Ie.ResourceNotFound,message:`Resource not found: ${n}`,data:{uri:n}});try{let a=await i.reader(n);return Ct({id:e.id,result:a})}catch(a){return this.logger.error(`Error reading resource "${n}":`,a),Se({id:e.id,code:Ie.ResourceNotFound,message:a instanceof Error?a.message:"Resource not found",data:{uri:n}})}}};var sr=class{static{s(this,"CustomValidator")}jsonSchema;parseFn;constructor(e,r){this.jsonSchema=e,this.parseFn=r}parse(e){return this.parseFn(e)}};Yt();var Hs=class{static{s(this,"HTTPStreamableTransport")}messageHandler=null;closeCallback=null;headers;options;connected=!1;enableStreaming=!1;sessions=new Map;streams=new Map;logger;setHeaders(e){this.headers={...this.headers,...e}}constructor(e={},r=!1){this.options={timeout:30*60*1e3,enableSessions:!1,...e},this.headers={"Content-Type":"application/json",...e.headers},this.logger=e.logger||rr(),r&&this.startSessionCleanup()}onError(e){throw new Error("Method not implemented.")}getSessionId(){throw new Error("Method not implemented.")}setSessionId(e){throw new Error("Method not implemented.")}async connect(){this.connected=!0}async send(e){if(!this.connected)throw new Error("Transport not connected");if(nn(e)){for(let[r,n]of this.sessions.entries())for(let[o,i]of n.streams.entries())if(i.pendingRequests.has(e.id)){await this.sendToStream(i,e),i.pendingRequests.delete(e.id),i.pendingRequests.size===0&&await this.closeStream(r,o);return}}else for(let r of this.sessions.values()){let n=[...r.streams.values()][0];n&&(await this.sendToStream(n,e),Lo(e)&&n.pendingRequests.add(e.id))}}onMessage(e){this.messageHandler=e}onClose(e){this.closeCallback=e}async close(){this.connected=!1;for(let e of this.sessions.values()){for(let[r,n]of e.streams.entries())try{await n.writer.close()}catch(o){this.logger.warn("Error closing stream:",o)}e.streams.clear()}this.sessions.clear(),this.closeCallback&&this.closeCallback()}async handleRequest(e){if(!this.connected)return new Response(JSON.stringify(Se({code:-32e3,message:"Transport not connected",id:null})),{status:503,headers:this.headers});if(!this.messageHandler)return new Response(JSON.stringify(Se({code:-32e3,message:"No message handler registered",id:null})),{status:500,headers:this.headers});let r=e.method.toUpperCase();try{this.validateOrigin(e);let n=e.headers.get("Mcp-Session-Id"),o;if(n&&(o=this.sessions.get(n),!o&&r!=="DELETE"))return new Response(null,{status:404});switch(r){case"POST":return await this.handlePostRequest(e,o);case"GET":return await this.handleGetRequest(e,o);case"DELETE":return await this.handleDeleteRequest(e,o?.id);default:return new Response(null,{status:405,headers:{Allow:"POST, GET, DELETE"}})}}catch(n){return this.logger.error("Error handling request:",n),new Response(JSON.stringify(Se({code:Ie.InternalError,message:"Internal server error",id:null})),{status:400,headers:this.headers})}}async handlePostRequest(e,r){let n=e.headers.get("Accept")||"";if(!n.includes("application/json")&&!n.includes("text/event-stream"))return new Response(JSON.stringify(Se({code:Ie.InvalidRequest,message:"Not Acceptable: Client must accept application/json and text/event-stream",id:null})),{status:406,headers:this.headers});let o=await this.extractJSONRPC(e);if(!o||Array.isArray(o)&&o.length===0)return new Response(JSON.stringify(Se({code:Ie.ParseError,message:"Parse error: received invalid JSON",id:null})),{status:400,headers:this.headers});let i=Array.isArray(o)?o:[o],a=i.some(u=>this.isRequest(u)),c=r;if(this.options.enableSessions&&!c&&i.some(u=>this.isRequest(u)&&u.method==="initialize")){let u=this.generateFallbackUUID();c=this.createSession(u)}try{if(!a){for(let p of i)await this.messageHandler?.(p);return new Response(null,{status:202,headers:{...this.headers,...c&&{"Mcp-Session-Id":c.id}}})}if(!this.enableStreaming){let p=[];for(let f of i)if(this.isRequest(f)){let g=await this.messageHandler?.(f);g&&p.push(g)}else await this.messageHandler?.(f);let m=p.length===1?p[0]:p;return new Response(JSON.stringify(m),{status:200,headers:{...this.headers,...c&&{"Mcp-Session-Id":c.id}}})}let{stream:u,streamId:l}=this.createStream(c),d=[];for(let p of i)if(this.isRequest(p)){this.streams.get(l)?.pendingRequests.add(p.id);let m=this.messageHandler?.(p);d.push(m)}else await this.messageHandler?.(p);return new Response(u.readable,{headers:{"Cache-Control":"no-cache",Connection:"keep-alive",...this.headers,...c&&{"Mcp-Session-Id":c.id}}})}catch{return new Response(JSON.stringify(Se({code:Ie.InternalError,message:"Internal server error",id:null})),{status:500,headers:this.headers})}}async handleGetRequest(e,r){if(!(e.headers.get("Accept")||"").includes("text/event-stream"))return new Response(null,{status:406,headers:this.headers});if(this.options.enableSessions&&!r)return new Response(JSON.stringify(Se({code:Ie.InvalidRequest,message:"Session ID required",id:null})),{status:400,headers:this.headers});let{stream:o,streamId:i}=this.createStream(r),a=e.headers.get("Last-Event-ID");return a&&r&&await this.replayMessages(r,i,a),new Response(o.readable,{headers:{"Cache-Control":"no-cache",Connection:"keep-alive",...this.headers,...r&&{"Mcp-Session-Id":r.id}}})}async handleDeleteRequest(e,r){if(!r)return new Response(null,{status:400});if(this.options.enableSessions&&r){let n=this.sessions.get(r);if(n){for(let[o,i]of n.streams.entries())await this.closeStream(r,o);return this.sessions.delete(r),new Response(null,{status:204})}}return new Response(null,{status:404})}async sendToStream(e,r){try{let n=String(++e.eventCounter),o=JSON.stringify(r);e.messages.push(r),e.messages.length>100&&e.messages.shift();let i=`id: ${n}
|
|
87
|
+
`)}async hexBodyHash(){let e=this.headers.get("X-Amz-Content-Sha256");if(e==null){if(this.body&&typeof this.body!="string"&&!("byteLength"in this.body))throw new F("body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header");e=Rc(await Dh(this.body||""))}return e}};async function Bn(t,e){let r=await crypto.subtle.importKey("raw",typeof t=="string"?Pc.encode(t):t,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return crypto.subtle.sign("HMAC",r,Pc.encode(e))}s(Bn,"hmac");async function Dh(t){return crypto.subtle.digest("SHA-256",typeof t=="string"?Pc.encode(t):t)}s(Dh,"hash");function Rc(t){return Array.prototype.map.call(new Uint8Array(t),e=>`0${e.toString(16)}`.slice(-2)).join("")}s(Rc,"buf2hex");function Uh(t){return t.replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)}s(Uh,"encodeRfc3986");function nP(t,e){let{hostname:r,pathname:n}=t,o=r.replace("dualstack.","").match(/([^.]+)\.(?:([^.]*)\.)?amazonaws\.com(?:\.cn)?$/),[i,a]=(o||["",""]).slice(1,3);if(a==="us-gov")a="us-gov-west-1";else if(a==="s3"||a==="s3-accelerate")a="us-east-1",i="s3";else if(i==="iot")r.startsWith("iot.")?i="execute-api":r.startsWith("data.jobs.iot.")?i="iot-jobs-data":i=n==="/mqtt"?"iotdevicegateway":"iotdata";else if(i==="autoscaling"){let c=(e.get("X-Amz-Target")||"").split(".")[0];c==="AnyScaleFrontendService"?i="application-autoscaling":c==="AnyScaleScalingPlannerFrontendService"&&(i="autoscaling-plans")}else a==null&&i.startsWith("s3-")?(a=i.slice(3).replace(/^fips-|^external-1/,""),i="s3"):i.endsWith("-fips")?i=i.slice(0,-5):a&&/-\d$/.test(i)&&!/-\d$/.test(a)&&([i,a]=[a,i]);return i in Mh?[Mh[i],a]:[i,a]}s(nP,"guessServiceRegion");function oP(t){return t>64&&t<91?t-65:t>96&&t<123?t-71:t>47&&t<58?t+4:t===43?62:t===47?63:0}s(oP,"b64ToUint6");function zh(t,e){let r=t.replace(/[^A-Za-z0-9+/]/g,""),n=r.length,o=e?Math.ceil((n*3+1>>2)/e)*e:n*3+1>>2,i=new Uint8Array(o),a,c,u=0,l=0;for(let d=0;d<n;d++)if(c=d&3,u|=oP(r.charCodeAt(d))<<6*(3-c),c===3||n-d===1){for(a=0;a<3&&l<o;)i[l]=u>>>(16>>>a&24)&255,a++,l++;u=0}return i}s(zh,"base64Decode");function Li(t){return t<26?t+65:t<52?t+71:t<62?t-4:t===62?43:t===63?47:65}s(Li,"uint6ToB64");function jh(t){let e=2,r="",n=t.length,o=0;for(let i=0;i<n;i++)e=i%3,o|=t[i]<<(16>>>e&24),(e===2||t.length-i===1)&&(r+=String.fromCodePoint(Li(o>>>18&63),Li(o>>>12&63),Li(o>>>6&63),Li(o&63)),o=0);return r.substring(0,r.length-2+e)+(e===2?"":e===1?"=":"==")}s(jh,"base64Encode");function Gr(t){let e=t.toString();return`${e.length===1?"0":""}${e}`}s(Gr,"numberToString");function iP(t){let e=t.getTimezoneOffset(),r=Math.abs(e),n=e>0?"-":"+",o=Gr(Math.floor(r/60)),i=Gr(r%60);return`${n}${o}${i}`}s(iP,"getCLFOffset");function Sc(t=new Date){if(!(t instanceof Date))throw new Error("clf-date: invalid parameter");let e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],r=Gr(t.getDate()),n=e[t.getMonth()],o=t.getFullYear(),i=Gr(t.getHours()),a=Gr(t.getMinutes()),c=Gr(t.getSeconds()),u=iP(t);return`${r}/${n}/${o}:${i}:${a}:${c} ${u}`}s(Sc,"toCLFDate");var Zh=Ne("zuplo:runtime"),Br="X-Amzn-Trace-Id",sP="x-amzn-errortype",qh=[],aP=s(async(t,e,r)=>{let n=r;for await(let o of qh)n=await o(t,e,r);return n},"onSendingAwsLambdaEvent"),tt=class extends F{static{s(this,"AwsLambdaError")}traceId;errorType;constructor(e,r){super(`Failed to invoke AWS Lambda function. ${e}`),this.traceId=r.get(Br)??void 0,this.errorType=r.get(sP)??void 0}},cP={addSendingAwsLambdaEventHook:s(t=>{qh.push(t)},"addSendingAwsLambdaEventHook")};async function uP(t,e){R("handler.aws-lambda");let{accessKeyId:r,secretAccessKey:n,region:o,functionName:i,useLambdaProxyIntegration:a=!0,useAwsResourcePathStyle:c=!1,binaryMediaTypes:u}=e.route.handler.options;if(!r)throw new w("awsAccessKeyId is not set in the handler options");if(!n)throw new w("secretAccessKey is not set in the handler options");if(!o)throw new w("region is not set in the handler options");if(!i)throw new w("functionName is not set in the handler options");let l=new Hr({accessKeyId:r,secretAccessKey:n}),d=`https://lambda.${o}.amazonaws.com/2015-03-31/functions/${i}/invocations`;if(Zh(`AWS Lambda URL: ${d}`),!a)return l.fetch(d,{body:await t.arrayBuffer()});let[p,m]=await mP(t,{binaryMediaTypes:u}),{options:f}=e.route.handler,g;f&&typeof f=="object"&&"payloadFormatVersion"in f&&f.payloadFormatVersion==="2.0"?g=pP(t,e):g=await dP(t,e,{useAwsResourcePathStyle:c}),Zh("Calling onSendingAwsLambdaEvent hook");let b=await aP(t,e,g);b.body=p,b.isBase64Encoded=m;let h=await l.fetch(d,{body:JSON.stringify(b)}),x=f&&typeof f=="object"&&"returnAmazonTraceIdHeader"in f&&typeof f.returnAmazonTraceIdHeader=="boolean"?f.returnAmazonTraceIdHeader:!1;try{return lP(h,{returnLambdaTraceIdHeader:x})}catch(v){if(v instanceof tt){let C=x&&v.traceId?{[Br]:v.traceId}:void 0;return D.internalServerError(t,e,void 0,C)}throw v}}s(uP,"awsLambdaHandler");async function lP(t,{returnLambdaTraceIdHeader:e}){let r;try{r=await t.json()}catch{throw new tt("Lambda response did not contain valid JSON",t.headers)}if(t.status!==200)throw r&&typeof r=="object"&&"message"in r&&typeof r.message=="string"?new tt(r.message,t.headers):new tt(`Status: ${t.statusText}`,t.headers);if(r&&typeof r=="object"&&"errorMessage"in r&&typeof r.errorMessage=="string")throw new tt(r.errorMessage,t.headers);if(!r||typeof r!="object"||!("statusCode"in r)||typeof r.statusCode!="number"){let a=t.headers.get(Br);return new Response(JSON.stringify(r),{status:t.status,headers:{"content-type":"application/json",...e&&a?{[Br]:a}:{}}})}let n=new Headers;if("headers"in r&&r.headers){if(typeof r.headers!="object")throw new tt(`Response headers must be an object. Received ${typeof r.headers}`,t.headers);for(let[a,c]of Object.entries(r.headers))n.set(a,c)}if("cookies"in r&&r.cookies){if(!Array.isArray(r.cookies))throw new tt(`Response cookies must be an array. Received ${typeof r.cookies}`,t.headers);n.set("cookie",r.cookies.join(";"))}let o;if("isBase64Encoded"in r&&typeof r.isBase64Encoded!="boolean")throw new tt(`Response property isBase64Encoded must be a boolean. Received ${typeof r.isBase64Encoded}`,t.headers);if("isBase64Encoded"in r&&r.isBase64Encoded===!0){if(!("body"in r))throw new tt("Response was set to base64 encoded but no body was set",t.headers);if(typeof r.body!="string")throw new tt("Response was set to base64 encoded but body was not a string",t.headers);o=zh(r.body)}else"body"in r&&typeof r.body=="string"?o=r.statusCode===204&&r.body===""?null:r.body:"body"in r&&r.body!==null&&r.body!==void 0?o=JSON.stringify(r.body):o=null;if(o!==null&&"bodyEncoding"in r){if(typeof r.bodyEncoding!="string"||!(r.bodyEncoding==="gzip"||r.bodyEncoding==="deflate"))throw new tt(`Response property bodyEncoding can only be set to 'gzip' or 'deflate'. Received ${r.bodyEncoding}`,t.headers);let a=new Blob([o]).stream().pipeThrough(new DecompressionStream(r.bodyEncoding));o=await new Response(a).arrayBuffer()}let i=t.headers.get(Br);return e&&i&&n.set(Br,i),new Response(o,{headers:n,status:r.statusCode})}s(lP,"getResponse");async function dP(t,e,{useAwsResourcePathStyle:r}){let n={},o={};t.headers.forEach((l,d)=>{n[d]=l,o[d]=[l]});let i=t.query,a={};for(let[l,d]of Object.entries(i))a[l]||(a[l]=[]),a[l].push(d);let c=new URL(t.url);return{version:"1.0",resource:c.pathname,path:c.pathname,httpMethod:t.method,headers:n,multiValueHeaders:o,queryStringParameters:i,multiValueQueryStringParameters:a,requestContext:{accountId:null,apiId:null,authorizer:{claims:{},scopes:[]},domainName:c.hostname,domainPrefix:null,extendedRequestId:e.requestId,httpMethod:t.method,identity:{accessKey:null,accountId:null,caller:null,cognitoAuthenticationProvider:null,cognitoAuthenticationType:null,cognitoIdentityId:null,cognitoIdentityPoolId:null,principalOrgId:null,sourceIp:t.headers.get("CF-Connecting-IP"),user:null,userAgent:t.headers.get("user-agent"),userArn:null,clientCert:{clientCertPem:null,subjectDN:null,issuerDN:null,serialNumber:null,validity:{notBefore:null,notAfter:null}}},path:c.pathname,protocol:"HTTP/1.1",requestId:e.requestId,requestTime:Sc(),requestTimeEpoch:Date.now(),resourceId:e.route.operationId??null,resourcePath:gP(e.route.path,r),stage:null},pathParameters:t.params,stageVariables:null}}s(dP,"buildEventVersion1");function pP(t,e){let r={};t.headers.forEach((i,a)=>{r[a]=i});let n=new URL(t.url);return{version:"2.0",routeKey:null,rawPath:n.pathname,rawQueryString:n.search,cookies:[],headers:r,queryStringParameters:t.query,requestContext:{accountId:null,apiId:null,authentication:{clientCert:{clientCertPem:null,subjectDN:null,issuerDN:null,serialNumber:null,validity:{notBefore:null,notAfter:null}}},authorizer:{jwt:{claims:{},scopes:[]}},domainName:n.hostname,domainPrefix:null,http:{method:t.method,path:n.pathname,protocol:"HTTP/1.1",sourceIp:t.headers.get("CF-Connecting-IP"),userAgent:t.headers.get("user-agent")},requestId:e.requestId,routeKey:null,stage:null,time:Sc(),timeEpoch:Date.now()},pathParameters:t.params,stageVariables:null}}s(pP,"buildEventVersion2");async function mP(t,{binaryMediaTypes:e}){let r,n=!1,o=t.headers.get("content-type");if(t.method==="GET"||t.method==="HEAD")r=null;else if(e&&o&&fP(e,o)){let i=await t.arrayBuffer();r=jh(new Uint8Array(i)),n=!0}else r=await t.clone().text();return[r,n]}s(mP,"getBodyResult");function fP(t,e){let r=e.split(";")[0].trim().toLowerCase();return t.findIndex(n=>n==="*/*"?!0:n.toLowerCase()===r)>-1}s(fP,"matchesContentType");function gP(t,e=!1){if(!e)return t;let r=xc(t),n=Lh(t),o={};return r.forEach(i=>{typeof i=="string"?o[i]=`{${i}}`:o[i.name]=`{${i.name}}`}),n(o)}s(gP,"getResourcePath");var hP=[502,503,504];async function Vr(t,e){if(hP.includes(t.status)){let r=Q.getLogger(e),o=await t.clone().text(),i={};for(let[a,c]of t.headers)i[a]=c;r.warn(`BadGatewayResponse ${t.status}`,{status:t.status,statusText:t.statusText,body:o,headers:i})}}s(Vr,"logBadGatewayResponses");var kc;function Kt(t){if(kc===void 0){let r=P.instance.runtime.ZUPLO_HANDLER_WRITE_LOG_LEVEL;["debug","info","warn","error"].includes(r??"")||(r="debug"),kc=r}return t.log[kc]}s(Kt,"getHandlerUserLogFunction");async function yP(t,e){R("handler.open-api");let r=P.instance.build.BUILD_ID,{buildAssetsUrl:n}=P.instance,o=e.route.handler.options,{openApiFilePath:i}=o;if(!i)throw new w("Open API Spec Handler must have 'openApiFilePath' specified");let a=bP(i);if(!a.isValid)throw new w(a.error);let c=`${n}/${r}${i.substring(1)}`,u=await j.fetch(c,{method:t.method,body:t.body,headers:t.headers});if(u.status!==200)return D.notFound(t,e,{detail:"OpenAPI file could not be found."});let l={"content-type":"application/json",vary:"Accept-Encoding"};P.instance.isDeno||(l["content-encoding"]=u.headers.get("content-encoding")||"");let d=new Response(u.body,{headers:l,status:u.status,statusText:u.statusText});return Vr(d,e),d}s(yP,"openApiSpecHandler");var bP=s(t=>t.startsWith("./")?t.startsWith("./config")?t.endsWith(".oas.json")?{isValid:!0}:{isValid:!1,error:"'openApiFilePath' must point to a file ending in '.oas.json'"}:{isValid:!1,error:"'openApiFilePath' must point to a file in your /config directory"}:{isValid:!1,error:"'openApiFilePath' must start with './'"},"validateOpenApiPath");async function wP(t,e){R("handler.redirect");let r=e.route.handler.options;if(!r.location)throw new w("Redirect Handler must have 'location' specified");let n=r.status??302;return new Response(null,{status:n,headers:{location:r.location}})}s(wP,"redirectHandler");async function vP(t){if(R("handler.zuplo-service-proxy"),Object.entries(t.params).length!==1)throw new w("The service proxy handler only supports one wildcard path parameter. Change your url to something like '/service/{path}'");let e=new URL(t.params.path,P.instance.zuploEdgeApiUrl),r=new Headers(t.headers);return r.set("Authorization",`Bearer ${P.instance.authApiJWT}`),j.fetch(e,{method:t.method,headers:r,body:t.body})}s(vP,"zuploServiceProxy");function xP(t,e){let r=t.endsWith("/"),n=e.startsWith("/");return r&&n?`${t.substring(0,t.length-1)}${e}`:!r&&!n?`${t}/${e}`:`${t}${e}`}s(xP,"join");async function RP(t,e){R("handler.url-forward");let r=Kt(e),n=e.route.handler.options,o=n.forwardSearch!==!1,i;if(P.instance.build.COMPATIBILITY_FLAGS.useForwardRedirectsPropOnUrlForwardHandler?i=n.followRedirects===!0?"follow":"manual":typeof n.followRedirects<"u"&&R("handler.url-forward.follow-redirects"),!n.baseUrl)throw new Error("URL Forward Handler must have 'baseUrl' specified");if(!n||typeof n.__rewriteFunction!="function")throw new w("Invalid options for this route");let a=Wt(e),c=new URL(t.url),u=n.__rewriteFunction(t,a),l=xP(u,c.pathname),d=o?`${l}${c.search}`:l.toString(),p=Date.now();r(`URL Forwarding to '${d}'`);let m=t.body;if(i==="follow"&&t.body)try{m=await t.arrayBuffer()}catch(b){throw new Error(`Failed to buffer request body for redirect handling: ${b}`)}let f=await fetch(d,{method:t.method,body:m,headers:t.headers,redirect:i,zuplo:n.clientCertificate?{clientCertificate:n.clientCertificate}:void 0}),g=Date.now()-p;return r(`URL Forward received response ${f.status} - ${f.statusText} in ${g}ms`),Vr(f,e),f}s(RP,"urlForwardHandler");var PP=s((t,e)=>{let r=new URL(t),n=new URL(e);for(let[o,i]of n.searchParams.entries())r.searchParams.append(o,i);return r.toString()},"addQuery");async function IP(t,e){R("handler.url-rewrite");let r=Kt(e),n=e.route.handler.options,o=n.forwardSearch!==!1,i=n.followRedirects??!1;if(!n||typeof n.__rewriteFunction!="function")throw new w("Invalid options for this route");let a=Wt(e),c=n.__rewriteFunction(t,a),u=o?PP(c,t.url):c,l=Date.now();r(`URL Rewriting to '${u}'`);let d=await fetch(u.toString(),{method:t.method,body:t.body,headers:t.headers,redirect:i?"follow":"manual",zuplo:n.clientCertificate?{clientCertificate:n.clientCertificate}:void 0}),p=Date.now()-l;return r(`URL Rewrite received response ${d.status} - ${d.statusText} in ${p}ms`),Vr(d,e),d}s(IP,"urlRewriteHandler");function SP(t,e,r){t.addEventListener("close",()=>{e.close()}),e.addEventListener("close",()=>{t.close()}),t.addEventListener("error",n=>{r.log.error(`Incoming WebSocket error: ${JSON.stringify(n)}`),e.send(JSON.stringify(n))}),e.addEventListener("error",n=>{r.log.error(`Outgoing WebSocket error: ${JSON.stringify(n)}`),t.send(JSON.stringify(n))}),t.addEventListener("message",n=>{e.send(n.data)}),e.addEventListener("message",n=>{t.send(n.data)})}s(SP,"wireUpPassthrough");async function kP(t,e){R("handler.websocket");let r=e.route.handler.options,n=Kt(e);if(!r||!r.rewritePattern)throw new w("WebSocket Handler must have option 'rewritePattern' specified");let o=t.headers.get("Upgrade");if(!o||o!=="websocket")return D.badRequest(t,e,{detail:"Request must include header 'Upgrade: websocket'"});if(!r||typeof r.__rewriteFunction!="function")throw new w("Invalid options for this route");let i=Wt(e),a=r.__rewriteFunction(t,i);if(n(`Attempting WebSocket connection to '${a}'`),P.instance.isDeno){if(!t.originalRequest)throw new Error("Original websocket request is not available");let c=new WebSocket(a);await new Promise((d,p)=>{let m=s(()=>{g(),n("WebSocket connection established with upstream"),d()},"onOpen"),f=s(b=>{g(),n(`WebSocket connection error: ${b}`),p(new Error("Upstream open failed"))},"onErr"),g=s(()=>{c.removeEventListener("open",m),c.removeEventListener("error",f)},"cleanup");c.addEventListener("open",m),c.addEventListener("error",f)}).catch(d=>{throw new Error(`Failed to open outgoing socket: ${d.message}`)});let{socket:u,response:l}=globalThis.Deno.upgradeWebSocket(t.originalRequest);return SP(u,c,e),l}else{a=a.replace(/^(ws)/,"http");let c=await fetch(a,{method:t.method,headers:t.headers,body:t.body});if(c.status!==101||!c.webSocket){let u=await c.text(),l=`WebSocket connection error - ${c.status}: ${c.statusText}, content: '${u}'`;throw new Error(l)}return n(`WebSocket connected, received response ${c.status} - ${c.statusText}`),new Response(null,{status:101,webSocket:c.webSocket})}}s(kP,"webSocketHandler");async function TP(t,e){let r=we.instance.runtimeSettings.developerPortal.urls?.urls?.[0];if(!r)throw new w("Developer portal URL is not configured.");let n=CP(t.url,r);return e.log.info(`Redirecting from legacy dev portal to ${n}`),new Response(null,{status:301,headers:{location:n}})}s(TP,"redirectLegacyDevPortal");function CP(t,e){let r=new URL(t),n=r.pathname.split("/")[1];if(!n)throw new w("The request URL does not contain a valid developer portal base path. This handler cannot be used on a root path");return r.hostname=new URL(e).hostname,r.pathname=r.pathname.substring(n.length+1),r.toString()}s(CP,"getDevPortalRedirectUrl");var Tc=s((t,e)=>t.map((n,o)=>{let i;if(typeof n.module=="object"&&(i=n.module[n.export]),!i||typeof i!="function"){let a=e==="inbound"?"WebSocketInboundPolicy":"WebSocketOutboundPolicy",c=`policy in position: ${o+1}, export name: ${n.export}`;throw new w(`${a} - Websocket policy must be a valid function (${c})`)}return i}),"getWebSocketPolicyFunctions"),Fh=s(async(t,e,r,n,o,i)=>{let a=t.data;if(i&&i.length>0){let c=[...i];for(;c.length>0;){let u=c.shift();if(!u)return a;if(a=await u(a,r,e,n,o),a===void 0)return}}return a},"webSocketPolicyProcessor");async function EP(t,e,r){r(`Attempting WebSocket connection to '${e}'`);let n=new WebSocket(e);await new Promise((a,c)=>{let u=s(()=>{d(),r("WebSocket connection established with upstream"),a()},"onOpen"),l=s(p=>{d(),r(`WebSocket connection error: ${p}`),c(new Error("Upstream open failed"))},"onErr"),d=s(()=>{n.removeEventListener("open",u),n.removeEventListener("error",l)},"cleanup");n.addEventListener("open",u),n.addEventListener("error",l)}).catch(a=>{throw new Error(`Failed to open outgoing socket: ${a.message}`)});let{socket:o,response:i}=globalThis.Deno.upgradeWebSocket(t);return{clientSocket:o,outgoingSocket:n,response:i}}s(EP,"getDenoClientAndServerSockets");async function _P(t,e,r){r(`Attempting WebSocket connection to '${e}'`);let n=await fetch(e,{method:t.method,headers:t.headers,body:t.body});if(n.status!==101||!n.webSocket){let u=await n.text(),l=`WebSocket connection error - ${n.status}: ${n.statusText}, content: '${u}'`;throw new Error(l)}let o=new WebSocketPair,[i,a]=Object.values(o);r(`WebSocket connected, received response ${n.status} - ${n.statusText}`),n.webSocket.accept(),a.accept();let c=new Response(null,{status:101,webSocket:i});return{clientSocket:i,outgoingSocket:n.webSocket,serverSocket:a,response:c}}s(_P,"getCfClientAndServerSockets");function Hh(t,e,r,n,o,i){t.addEventListener("close",()=>{e.close()}),t.addEventListener("error",a=>{n.log.error(`WebSocket error: ${JSON.stringify(a)}, direction: ${i}`),e.send(JSON.stringify(a))}),t.addEventListener("message",a=>{try{let u=s(async l=>{let d=await Fh(l,t,e,r,n,o);d!==void 0&&e.send(d)},"innerPipeline")(a).catch(n.log.error);n.waitUntil(u)}catch(c){n.log.error(c)}})}s(Hh,"wireUpListeners");async function OP(t,e){R("handler.websocket-pipeline");let r=e.route.handler.options,n=Kt(e);if(!r||!r.rewritePattern)throw new w("WebSocket Pipeline Handler must have option 'rewritePattern' specified");let o=t.headers.get("Upgrade");if(!o||o!=="websocket")return D.badRequest(t,e,{detail:"Request must include header 'Upgrade: websocket'"});if(!r||typeof r.__rewriteFunction!="function")throw new w("Invalid options for this route");let i=Wt(e),a=r.__rewriteFunction(t,i),c=r.policies?.inbound?Tc(r.policies.inbound,"inbound"):[],u=r.policies?.outbound?Tc(r.policies.outbound,"outbound"):[],l,d,p,m;if(P.instance.isDeno){if(!t.originalRequest)throw new Error("Original websocket request is not available");let f=await EP(t.originalRequest,a,n);p=f.clientSocket,l=p,d=f.outgoingSocket,m=f.response}else{a=a.replace(/^(ws)/,"http");let f=await _P(t,a,n);l=f.serverSocket,d=f.outgoingSocket,p=f.clientSocket,m=f.response}return Hh(l,d,t,e,c,"inbound"),Hh(d,l,t,e,u,"outbound"),m}s(OP,"webSocketPipelineHandler");Ze();Yt();Yt();function Ir({id:t,method:e,params:r}){return{jsonrpc:dt,id:t,method:e,params:r}}s(Ir,"newJSONRPCRequest");function Ct({id:t,result:e}){return{jsonrpc:dt,id:t,result:e}}s(Ct,"newJSONRPCReponse");function Se({id:t,code:e,message:r,data:n}){return{jsonrpc:dt,id:t,error:{code:e,message:r,data:n}}}s(Se,"newJSONRPCError");Ze();Yt();js();var _w=y.object({jsonrpc:y.literal(dt),id:Ew,error:y.object({code:y.number().int(),message:y.string(),data:y.optional(y.unknown())})}).strict();No();Sr();kr();var Lo=s(t=>$w.safeParse(t).success,"isJSONRPCRequest"),Nw=s(t=>Ow.safeParse(t).success,"isJSONRPCNotification"),nn=s(t=>Aw.safeParse(t).success,"isJSONRPCResponse"),tr=s(t=>_w.safeParse(t).success,"isJSONRPCError");var Mo=class{static{s(this,"NoOpLogger")}debug(){}info(){}warn(){}error(){}};function rr(){return new Mo}s(rr,"createDefaultLogger");Ze();Sr();kr();Ze();var Lw=y.object({experimental:y.optional(y.object({}).loose()),roots:y.optional(y.object({listChanged:y.optional(y.boolean())}).loose()),sampling:y.optional(y.object({}).loose()),elicitation:y.optional(y.object({}).loose())}).loose(),Mw=y.object({experimental:y.optional(y.object({}).loose()),logging:y.optional(y.object({}).loose()),completions:y.optional(y.object({}).loose()),prompts:y.optional(y.object({listChanged:y.optional(y.boolean())}).loose()),resources:y.optional(y.object({subscribe:y.optional(y.boolean()),listChanged:y.optional(y.boolean())}).loose()),tools:y.optional(y.object({listChanged:y.optional(y.boolean())}).loose())}).loose();Ze();on();var tm=Et.extend({version:y.string()});var Dw=it.extend({method:y.literal("initialize"),params:ot.extend({protocolVersion:y.string(),capabilities:Lw,clientInfo:tm})}),MF=pt.extend({protocolVersion:y.string(),capabilities:Mw,serverInfo:tm,instructions:y.optional(y.string())});Ze();No();Sr();kr();on();Zs();var AC=Et.extend({description:y.optional(y.string()),required:y.optional(y.boolean())}),NC=Et.extend({description:y.optional(y.string()),arguments:y.optional(y.array(AC)),_meta:y.optional(y.object({}).loose())}),LC=y.lazy(()=>{let{TextContentSchema:t,ImageContentSchema:e,AudioContentSchema:r,EmbeddedResourceSchema:n}=(om(),Qo(nm)),{ResourceLinkSchema:o}=(qs(),Qo(lm));return y.object({role:y.enum(["user","assistant"]),content:y.discriminatedUnion("type",[t,e,r,o,n])}).loose()}),Fw=or.extend({method:y.literal("prompts/list")}),aH=ir.extend({prompts:y.array(NC)}),Hw=it.extend({method:y.literal("prompts/get"),params:ot.extend({name:y.string(),arguments:y.optional(y.record(y.string(),y.string()))})}),cH=pt.extend({description:y.optional(y.string()),messages:y.array(LC)}),uH=er.extend({method:y.literal("notifications/prompts/list_changed")});qs();Ze();No();Sr();kr();on();Zs();var MC=y.object({title:y.optional(y.string()),readOnlyHint:y.optional(y.boolean()),destructiveHint:y.optional(y.boolean()),idempotentHint:y.optional(y.boolean()),openWorldHint:y.optional(y.boolean())}).loose(),DC=Et.extend({description:y.optional(y.string()),inputSchema:y.object({type:y.literal("object"),properties:y.optional(y.record(y.string(),y.object({}).loose())),required:y.optional(y.array(y.string()))}).loose(),outputSchema:y.optional(y.object({type:y.literal("object"),properties:y.optional(y.record(y.string(),y.object({}).loose())),required:y.optional(y.array(y.string()))}).loose()),annotations:y.optional(MC),_meta:y.optional(y.object({}).loose())}),yH=or.extend({method:y.literal("tools/list")}),bH=ir.extend({tools:y.array(DC)}),Gw=it.extend({method:y.literal("tools/call"),params:ot.extend({name:y.string(),arguments:y.optional(y.record(y.string(),y.unknown()))})}),wH=y.lazy(()=>{let{TextContentSchema:t,ImageContentSchema:e,AudioContentSchema:r,EmbeddedResourceSchema:n}=(om(),Qo(nm)),{ResourceLinkSchema:o}=(qs(),Qo(lm));return pt.extend({content:y.array(y.discriminatedUnion("type",[t,e,r,o,n])),structuredContent:y.optional(y.record(y.string(),y.unknown())),isError:y.optional(y.boolean())})}),vH=er.extend({method:y.literal("notifications/tools/list_changed")});var Do="2025-06-18",dm="2025-03-26",pm="2024-11-05",mm="2024-10-07",fm=[Do,dm,pm,mm];var UC="MCP Server",zC="0.0.0",Fs=class{static{s(this,"MCPServer")}capabilities;tools=new Map;prompts=new Map;resources=new Map;name;version;instructions;logger;constructor(e){this.name=e.name||UC,this.version=e.version||zC,this.instructions=e.instructions||void 0,this.logger=e.logger||rr(),this.capabilities={tools:{supported:!0,available:[]},prompts:{},resources:{},...e.capabilities}}withTransport(e){e.onMessage(async r=>{try{if(Lo(r)){let n=await this.handleRequest(r);if(n)return await e.send(n),n}else{if(Nw(r))return await this.handleNotification(r),null;if(nn(r))return this.logger.debug("Received response:",r),null}}catch(n){if(this.logger.error("Error processing message:",n),Lo(r)){let o=Se({id:r.id,code:Ie.InternalError,message:n instanceof Error?n.message:"Internal error"});return await e.send(o),o}}return null})}getTool(e){return this.tools.get(e)?.tool}getTools(){let e=new Map;for(let[r,n]of this.tools.entries())e.set(r,n.tool);return e}getCapabilities(){return{...this.capabilities}}addTool(e){let{name:r,validator:n,handler:o,description:i=`Execute the ${r} tool`,outputSchema:a}=e,u={tool:{name:r,description:i,inputSchema:n.jsonSchema,...a&&{outputSchema:a}},validator:n,handler:o};this.tools.set(r,u),this.updateAvailableTools()}removeTool(e){let r=this.tools.delete(e);return r&&this.updateAvailableTools(),r}getToolDefinitions(){return Array.from(this.tools.values()).map(e=>e.tool)}addPrompt(e){let{name:r,validator:n,generator:o,description:i}=e,a=n.jsonSchema,c;if(a.properties&&typeof a.properties=="object"){let d=new Set(a.required||[]);c=Object.entries(a.properties).map(([p,m])=>({name:p,description:m.description??`Prompt for ${p}`,required:d.has(p)}))}let l={prompt:{name:r,description:i,...c&&{arguments:c}},validator:n,generator:o};this.prompts.set(r,l)}removePrompt(e){return this.prompts.delete(e)}getPrompt(e){return this.prompts.get(e)?.prompt}getPromptDefinitions(){return Array.from(this.prompts.values()).map(e=>e.prompt)}addResource(e,r,n,o){if(typeof r=="string"){let a={type:"resource",resource:{name:e,uri:r,...n},reader:o};this.resources.set(e,a)}else{let a={type:"template",template:{name:e,uriTemplate:r.template,...n},reader:o};this.resources.set(e,a)}}removeResource(e){return this.resources.delete(e)}getResource(e){let r=this.resources.get(e);if(r)return r.type==="resource"?r.resource:void 0}getResourceTemplate(e){let r=this.resources.get(e);if(r)return r.type==="template"?r.template:void 0}getResourceDefinitions(){return Array.from(this.resources.values()).filter(e=>e.type==="resource").map(e=>e.resource)}getResourceTemplateDefinitions(){return Array.from(this.resources.values()).filter(e=>e.type==="template").map(e=>e.template)}async handleRequest(e){try{switch(e.method){case"ping":return this.handlePing(e);case"initialize":return this.handleInitialize(e);case"tools/list":return this.handleToolListRequest(e);case"tools/call":return this.handleToolCallRequest(e);case"prompts/list":return this.handlePromptListRequest(e);case"prompts/get":return this.handlePromptGetRequest(e);case"resources/list":return this.handleResourceListRequest(e);case"resources/templates/list":return this.handleResourceTemplateListRequest(e);case"resources/read":return this.handleResourceReadRequest(e);default:return Se({id:e.id,code:Ie.MethodNotFound,message:`Method "${e.method}" not found`})}}catch(r){return this.logger.error("Error handling request:",r),Se({id:e.id,code:Ie.InternalError,message:r instanceof Error?r.message:"Internal error"})}}async handleNotification(e){this.logger.debug("Received notification:",e.method)}handlePing(e){return Ct({id:e.id,result:{}})}handleInitialize(e){let r=Dw.safeParse(e);if(!r.success){let o=y.treeifyError(r.error),i=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${i}`,data:o})}let n=r.data.params.protocolVersion;switch(n){case Do:case dm:case pm:case mm:{let o={protocolVersion:n,capabilities:this.getCapabilities(),serverInfo:{name:this.name,version:this.version},...this.instructions?{instructions:this.instructions}:{}};return Ct({id:e.id,result:o})}default:return Se({id:e.id,code:Ie.InvalidParams,message:`Unsupported protocol version: ${n} - supported versions: ${fm}`,data:{supportedVersions:fm}})}}async handleToolListRequest(e){let n={tools:Array.from(this.tools.entries()).map(([o,i])=>i.tool)};return Ct({id:e.id,result:n})}async handleToolCallRequest(e){let r=Gw.safeParse(e);if(!r.success)return this.logger.warn("Could not validate tool call:",r.error),Se({id:e.id,code:Ie.InvalidRequest,message:`Invalid request ${r.error}`});let n=r.data,o=n.params.name,i=this.tools.get(o);if(!i)return Se({id:e.id,code:Ie.InvalidParams,message:`Tool "${o}" not found`});let a=n.params.arguments??{},c=i.validator.parse(a);if(!c.success)return Se({id:e.id,code:Ie.InvalidParams,message:c.errorMessage?`Invalid arguments for tool '${o}': ${c.errorMessage}`:`Invalid arguments for tool '${o}'`,data:c.errorData});try{let u=c.data,l=await i.handler(u);return Ct({id:e.id,result:l})}catch(u){return this.logger.error(`Error executing tool "${o}":`,u),Se({id:e.id,code:Ie.InternalError,message:u instanceof Error?u.message:"Tool execution error"})}}async handlePromptListRequest(e){let r=Fw.safeParse(e);if(!r.success){let i=y.treeifyError(r.error),a=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${a}`,data:i})}let o={prompts:Array.from(this.prompts.values()).map(i=>i.prompt)};return Ct({id:e.id,result:o})}async handlePromptGetRequest(e){let r=Hw.safeParse(e);if(!r.success){let c=y.treeifyError(r.error),u=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${u}`,data:c})}let n=r.data.params.name,o=this.prompts.get(n);if(!o)return Se({id:e.id,code:Ie.InvalidParams,message:`Prompt "${n}" not found`});let i=r.data.params.arguments??{},a=o.validator.parse(i);if(!a.success)return Se({id:e.id,code:Ie.InvalidParams,message:a.errorMessage?`Invalid arguments for prompt '${n}': ${a.errorMessage}`:`Invalid arguments for prompt '${n}'`,data:a.errorData});try{let c=a.data,u=await o.generator(c),l={...o.prompt.description&&{description:o.prompt.description},messages:u};return Ct({id:e.id,result:l})}catch(c){return this.logger.error(`Error generating prompt "${n}":`,c),Se({id:e.id,code:Ie.InternalError,message:c instanceof Error?c.message:"Prompt generation error"})}}updateAvailableTools(){this.capabilities.tools&&(this.capabilities.tools.available=Array.from(this.tools.keys()))}async handleResourceListRequest(e){let r=am.safeParse(e);if(!r.success){let i=y.treeifyError(r.error),a=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${a}`,data:i})}let o={resources:Array.from(this.resources.values()).filter(i=>i.type==="resource").map(i=>i.resource)};return Ct({id:e.id,result:o})}async handleResourceTemplateListRequest(e){let r=cm.safeParse(e);if(!r.success){let i=y.treeifyError(r.error),a=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${a}`,data:i})}let o={resourceTemplates:Array.from(this.resources.values()).filter(i=>i.type==="template").map(i=>i.template)};return Ct({id:e.id,result:o})}async handleResourceReadRequest(e){let r=um.safeParse(e);if(!r.success){let a=y.treeifyError(r.error),c=y.prettifyError(r.error);return Se({id:e.id,code:Ie.InvalidParams,message:`Invalid request parameters: ${c}`,data:a})}let n=r.data.params.uri;function o(a,c){let u=c.replace(/\{[^}]+\}/g,"([^/]+)");return new RegExp(`^${u}$`).test(a)}s(o,"matchesTemplate");let i=Array.from(this.resources.values()).find(a=>a.type==="resource"&&a.resource.uri===n||a.type==="template"&&o(n,a.template.uriTemplate));if(!i)return Se({id:e.id,code:Ie.ResourceNotFound,message:`Resource not found: ${n}`,data:{uri:n}});try{let a=await i.reader(n);return Ct({id:e.id,result:a})}catch(a){return this.logger.error(`Error reading resource "${n}":`,a),Se({id:e.id,code:Ie.ResourceNotFound,message:a instanceof Error?a.message:"Resource not found",data:{uri:n}})}}};var sr=class{static{s(this,"CustomValidator")}jsonSchema;parseFn;constructor(e,r){this.jsonSchema=e,this.parseFn=r}parse(e){return this.parseFn(e)}};Yt();var Hs=class{static{s(this,"HTTPStreamableTransport")}messageHandler=null;closeCallback=null;headers;options;connected=!1;enableStreaming=!1;sessions=new Map;streams=new Map;logger;setHeaders(e){this.headers={...this.headers,...e}}constructor(e={},r=!1){this.options={timeout:30*60*1e3,enableSessions:!1,...e},this.headers={"Content-Type":"application/json",...e.headers},this.logger=e.logger||rr(),r&&this.startSessionCleanup()}onError(e){throw new Error("Method not implemented.")}getSessionId(){throw new Error("Method not implemented.")}setSessionId(e){throw new Error("Method not implemented.")}async connect(){this.connected=!0}async send(e){if(!this.connected)throw new Error("Transport not connected");if(nn(e)){for(let[r,n]of this.sessions.entries())for(let[o,i]of n.streams.entries())if(i.pendingRequests.has(e.id)){await this.sendToStream(i,e),i.pendingRequests.delete(e.id),i.pendingRequests.size===0&&await this.closeStream(r,o);return}}else for(let r of this.sessions.values()){let n=[...r.streams.values()][0];n&&(await this.sendToStream(n,e),Lo(e)&&n.pendingRequests.add(e.id))}}onMessage(e){this.messageHandler=e}onClose(e){this.closeCallback=e}async close(){this.connected=!1;for(let e of this.sessions.values()){for(let[r,n]of e.streams.entries())try{await n.writer.close()}catch(o){this.logger.warn("Error closing stream:",o)}e.streams.clear()}this.sessions.clear(),this.closeCallback&&this.closeCallback()}async handleRequest(e){if(!this.connected)return new Response(JSON.stringify(Se({code:-32e3,message:"Transport not connected",id:null})),{status:503,headers:this.headers});if(!this.messageHandler)return new Response(JSON.stringify(Se({code:-32e3,message:"No message handler registered",id:null})),{status:500,headers:this.headers});let r=e.method.toUpperCase();try{this.validateOrigin(e);let n=e.headers.get("Mcp-Session-Id"),o;if(n&&(o=this.sessions.get(n),!o&&r!=="DELETE"))return new Response(null,{status:404});switch(r){case"POST":return await this.handlePostRequest(e,o);case"GET":return await this.handleGetRequest(e,o);case"DELETE":return await this.handleDeleteRequest(e,o?.id);default:return new Response(null,{status:405,headers:{Allow:"POST, GET, DELETE"}})}}catch(n){return this.logger.error("Error handling request:",n),new Response(JSON.stringify(Se({code:Ie.InternalError,message:"Internal server error",id:null})),{status:400,headers:this.headers})}}async handlePostRequest(e,r){let n=e.headers.get("Accept")||"";if(!n.includes("application/json")&&!n.includes("text/event-stream"))return new Response(JSON.stringify(Se({code:Ie.InvalidRequest,message:"Not Acceptable: Client must accept application/json and text/event-stream",id:null})),{status:406,headers:this.headers});let o=await this.extractJSONRPC(e);if(!o||Array.isArray(o)&&o.length===0)return new Response(JSON.stringify(Se({code:Ie.ParseError,message:"Parse error: received invalid JSON",id:null})),{status:400,headers:this.headers});let i=Array.isArray(o)?o:[o],a=i.some(u=>this.isRequest(u)),c=r;if(this.options.enableSessions&&!c&&i.some(u=>this.isRequest(u)&&u.method==="initialize")){let u=this.generateFallbackUUID();c=this.createSession(u)}try{if(!a){for(let p of i)await this.messageHandler?.(p);return new Response(null,{status:202,headers:{...this.headers,...c&&{"Mcp-Session-Id":c.id}}})}if(!this.enableStreaming){let p=[];for(let f of i)if(this.isRequest(f)){let g=await this.messageHandler?.(f);g&&p.push(g)}else await this.messageHandler?.(f);let m=p.length===1?p[0]:p;return new Response(JSON.stringify(m),{status:200,headers:{...this.headers,...c&&{"Mcp-Session-Id":c.id}}})}let{stream:u,streamId:l}=this.createStream(c),d=[];for(let p of i)if(this.isRequest(p)){this.streams.get(l)?.pendingRequests.add(p.id);let m=this.messageHandler?.(p);d.push(m)}else await this.messageHandler?.(p);return new Response(u.readable,{headers:{"Cache-Control":"no-cache",Connection:"keep-alive",...this.headers,...c&&{"Mcp-Session-Id":c.id}}})}catch{return new Response(JSON.stringify(Se({code:Ie.InternalError,message:"Internal server error",id:null})),{status:500,headers:this.headers})}}async handleGetRequest(e,r){if(!(e.headers.get("Accept")||"").includes("text/event-stream"))return new Response(null,{status:406,headers:this.headers});if(this.options.enableSessions&&!r)return new Response(JSON.stringify(Se({code:Ie.InvalidRequest,message:"Session ID required",id:null})),{status:400,headers:this.headers});let{stream:o,streamId:i}=this.createStream(r),a=e.headers.get("Last-Event-ID");return a&&r&&await this.replayMessages(r,i,a),new Response(o.readable,{headers:{"Cache-Control":"no-cache",Connection:"keep-alive",...this.headers,...r&&{"Mcp-Session-Id":r.id}}})}async handleDeleteRequest(e,r){if(!r)return new Response(null,{status:400});if(this.options.enableSessions&&r){let n=this.sessions.get(r);if(n){for(let[o,i]of n.streams.entries())await this.closeStream(r,o);return this.sessions.delete(r),new Response(null,{status:204})}}return new Response(null,{status:404})}async sendToStream(e,r){try{let n=String(++e.eventCounter),o=JSON.stringify(r);e.messages.push(r),e.messages.length>100&&e.messages.shift();let i=`id: ${n}
|
|
88
88
|
data: ${o}
|
|
89
89
|
|
|
90
90
|
`;await e.writer.write(new TextEncoder().encode(i))}catch(n){this.logger.warn("Error sending to stream:",n)}}async closeStream(e,r){let n=this.sessions.get(e);if(!n)return;let o=n.streams.get(r);if(o){try{await o.writer.close()}catch(i){this.logger.warn("Error closing stream:",i)}n.streams.delete(r),this.streams.delete(r)}}createSession(e){let r={id:e,createdAt:Date.now(),lastActivity:Date.now(),streams:new Map};return this.sessions.set(e,r),r}createStream(e){let r=new TransformStream,n=r.writable.getWriter(),o=crypto.randomUUID?.()||this.generateFallbackUUID(),i={id:o,writer:n,eventCounter:0,messages:[],pendingRequests:new Set};return this.streams.set(o,i),e&&(e.streams.set(o,i),e.lastActivity=Date.now()),{stream:r,streamId:o}}async replayMessages(e,r,n){for(let o of e.streams.values()){if(o.id===r)continue;let i=Number.parseInt(n,10);if(Number.isNaN(i))continue;let a=o.messages.slice(i),c=this.streams.get(r);if(c&&a.length>0)for(let u of a)await this.sendToStream(c,u)}}startSessionCleanup(){setInterval(()=>{let e=Date.now();for(let[r,n]of this.sessions.entries()){let o=this.options.timeout??6e4;if(e-n.lastActivity>o){for(let[i,a]of n.streams.entries()){try{a.writer.close().catch(c=>this.logger.warn("Error closing stream:",c))}catch(c){this.logger.warn("Error closing stream:",c)}this.streams.delete(i)}this.sessions.delete(r)}}},6e4)}async extractJSONRPC(e){try{let n=await e.clone().text();if(!n)throw new Error("Empty request body");return JSON.parse(n)}catch(r){throw new Error(`Failed to parse JSON-RPC message: ${r}`)}}validateOrigin(e){let r=e.headers.get("Origin");if(r&&!this.isValidOrigin(r))throw new Error("Invalid origin")}isValidOrigin(e){return!0}isRequest(e){return e!==null&&typeof e=="object"&&"jsonrpc"in e&&e.jsonrpc==="2.0"&&"method"in e&&"id"in e&&e.id!==null&&e.id!==void 0}generateFallbackUUID(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let r=Math.random()*16|0;return(e==="x"?r:r&3|8).toString(16)})}};function Gs(t){let e={descriptions:!0,specifiedByUrl:!1,directiveIsRepeatable:!1,schemaDescription:!1,inputValueDeprecation:!1,oneOf:!1,...t},r=e.descriptions?"description":"",n=e.specifiedByUrl?"specifiedByURL":"",o=e.directiveIsRepeatable?"isRepeatable":"",i=e.schemaDescription?r:"";function a(u){return e.inputValueDeprecation?u:""}s(a,"inputDeprecation");let c=e.oneOf?"isOneOf":"";return`
|