stacks-ai 0.2.8 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,76 @@
1
+ var Qa="vercel.ai.error",$l=Symbol.for(Qa),mo,ho,T=class es extends(ho=Error,mo=$l,ho){constructor({name:t,message:r,cause:n}){super(r),this[mo]=!0,this.name=t,this.cause=n}static isInstance(t){return es.hasMarker(t,Qa)}static hasMarker(t,r){const n=Symbol.for(r);return t!=null&&typeof t=="object"&&n in t&&typeof t[n]=="boolean"&&t[n]===!0}},ts="AI_APICallError",rs=`vercel.ai.error.${ts}`,Cl=Symbol.for(rs),vo,go,ue=class extends(go=T,vo=Cl,go){constructor({message:e,url:t,requestBodyValues:r,statusCode:n,responseHeaders:o,responseBody:a,cause:s,isRetryable:i=n!=null&&(n===408||n===409||n===429||n>=500),data:u}){super({name:ts,message:e,cause:s}),this[vo]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=n,this.responseHeaders=o,this.responseBody=a,this.isRetryable=i,this.data=u}static isInstance(e){return T.hasMarker(e,rs)}},ns="AI_EmptyResponseBodyError",os=`vercel.ai.error.${ns}`,Nl=Symbol.for(os),yo,_o,as=class extends(_o=T,yo=Nl,_o){constructor({message:e="Empty response body"}={}){super({name:ns,message:e}),this[yo]=!0}static isInstance(e){return T.hasMarker(e,os)}};function wt(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var ss="AI_InvalidArgumentError",is=`vercel.ai.error.${ss}`,Ml=Symbol.for(is),bo,wo,us=class extends(wo=T,bo=Ml,wo){constructor({message:t,cause:r,argument:n}){super({name:ss,message:t,cause:r}),this[bo]=!0,this.argument=n}static isInstance(t){return T.hasMarker(t,is)}},ls="AI_InvalidPromptError",cs=`vercel.ai.error.${ls}`,Pl=Symbol.for(cs),Io,To,vt=class extends(To=T,Io=Pl,To){constructor({prompt:e,message:t,cause:r}){super({name:ls,message:`Invalid prompt: ${t}`,cause:r}),this[Io]=!0,this.prompt=e}static isInstance(e){return T.hasMarker(e,cs)}},ds="AI_InvalidResponseDataError",ps=`vercel.ai.error.${ds}`,zl=Symbol.for(ps),So,Eo,Zl=class extends(Eo=T,So=zl,Eo){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:ds,message:t}),this[So]=!0,this.data=e}static isInstance(e){return T.hasMarker(e,ps)}},fs="AI_JSONParseError",ms=`vercel.ai.error.${fs}`,Dl=Symbol.for(ms),ko,xo,or=class extends(xo=T,ko=Dl,xo){constructor({text:e,cause:t}){super({name:fs,message:`JSON parsing failed: Text: ${e}.
2
+ Error message: ${wt(t)}`,cause:t}),this[ko]=!0,this.text=e}static isInstance(e){return T.hasMarker(e,ms)}},hs="AI_LoadAPIKeyError",vs=`vercel.ai.error.${hs}`,jl=Symbol.for(vs),Oo,Ao,er=class extends(Ao=T,Oo=jl,Ao){constructor({message:e}){super({name:hs,message:e}),this[Oo]=!0}static isInstance(e){return T.hasMarker(e,vs)}},gs="AI_NoSuchModelError",ys=`vercel.ai.error.${gs}`,Ul=Symbol.for(ys),Ro,$o,Fl=class extends($o=T,Ro=Ul,$o){constructor({errorName:e=gs,modelId:t,modelType:r,message:n=`No such ${r}: ${t}`}){super({name:e,message:n}),this[Ro]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return T.hasMarker(e,ys)}},_s="AI_TooManyEmbeddingValuesForCallError",bs=`vercel.ai.error.${_s}`,ql=Symbol.for(bs),Co,No,Ll=class extends(No=T,Co=ql,No){constructor(e){super({name:_s,message:`Too many values for a single embedding call. The ${e.provider} model "${e.modelId}" can only embed up to ${e.maxEmbeddingsPerCall} values per call, but ${e.values.length} values were provided.`}),this[Co]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return T.hasMarker(e,bs)}},ws="AI_TypeValidationError",Is=`vercel.ai.error.${ws}`,Vl=Symbol.for(Is),Mo,Po,et=class Sn extends(Po=T,Mo=Vl,Po){constructor({value:t,cause:r}){super({name:ws,message:`Type validation failed: Value: ${JSON.stringify(t)}.
3
+ Error message: ${wt(r)}`,cause:r}),this[Mo]=!0,this.value=t}static isInstance(t){return T.hasMarker(t,Is)}static wrap({value:t,cause:r}){return Sn.isInstance(r)&&r.value===t?r:new Sn({value:t,cause:r})}},Ts="AI_UnsupportedFunctionalityError",Ss=`vercel.ai.error.${Ts}`,Jl=Symbol.for(Ss),zo,Zo,Es=class extends(Zo=T,zo=Jl,Zo){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:Ts,message:t}),this[zo]=!0,this.functionality=e}static isInstance(e){return T.hasMarker(e,Ss)}};function h(e,t,r){function n(i,u){if(i._zod||Object.defineProperty(i,"_zod",{value:{def:u,constr:s,traits:new Set},enumerable:!1}),i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,u);const l=s.prototype,c=Object.keys(l);for(let p=0;p<c.length;p++){const d=c[p];d in i||(i[d]=l[d].bind(i))}}const o=(r==null?void 0:r.Parent)??Object;class a extends o{}Object.defineProperty(a,"name",{value:e});function s(i){var u;const l=r!=null&&r.Parent?new a:this;n(l,i),(u=l._zod).deferred??(u.deferred=[]);for(const c of l._zod.deferred)c();return l}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:i=>{var u,l;return r!=null&&r.Parent&&i instanceof r.Parent?!0:(l=(u=i==null?void 0:i._zod)==null?void 0:u.traits)==null?void 0:l.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}class Mt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class ks extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const xs={};function tt(e){return xs}function Os(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function En(e,t){return typeof t=="bigint"?t.toString():t}function Yr(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Zn(e){return e==null}function Dn(e){const t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Bl(e,t){const r=(e.toString().split(".")[1]||"").length,n=t.toString();let o=(n.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(n)){const u=n.match(/\d?e-(\d?)/);u!=null&&u[1]&&(o=Number.parseInt(u[1]))}const a=r>o?r:o,s=Number.parseInt(e.toFixed(a).replace(".","")),i=Number.parseInt(t.toFixed(a).replace(".",""));return s%i/10**a}const Do=Symbol("evaluating");function P(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==Do)return n===void 0&&(n=Do,n=r()),n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Tt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function st(...e){const t={};for(const r of e){const n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function jo(e){return JSON.stringify(e)}function Gl(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const As="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ar(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Wl=Yr(()=>{var e;if(typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)!=null&&e.includes("Cloudflare")))return!1;try{const t=Function;return new t(""),!0}catch{return!1}});function Pt(e){if(ar(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const r=t.prototype;return!(ar(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Rs(e){return Pt(e)?{...e}:Array.isArray(e)?[...e]:e}const Hl=new Set(["string","number","symbol"]);function zt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function it(e,t,r){const n=new e._zod.constr(t??e._zod.def);return(!t||r!=null&&r.parent)&&(n._zod.parent=e),n}function I(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if((t==null?void 0:t.message)!==void 0){if((t==null?void 0:t.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Yl(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Kl={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Xl(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const a=st(e._zod.def,{get shape(){const s={};for(const i in t){if(!(i in r.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(s[i]=r.shape[i])}return Tt(this,"shape",s),s},checks:[]});return it(e,a)}function Ql(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const a=st(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const i in t){if(!(i in r.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete s[i]}return Tt(this,"shape",s),s},checks:[]});return it(e,a)}function ec(e,t){if(!Pt(t))throw new Error("Invalid input to extend: expected a plain object");const r=e._zod.def.checks;if(r&&r.length>0){const a=e._zod.def.shape;for(const s in t)if(Object.getOwnPropertyDescriptor(a,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const o=st(e._zod.def,{get shape(){const a={...e._zod.def.shape,...t};return Tt(this,"shape",a),a}});return it(e,o)}function tc(e,t){if(!Pt(t))throw new Error("Invalid input to safeExtend: expected a plain object");const r=st(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return Tt(this,"shape",n),n}});return it(e,r)}function rc(e,t){const r=st(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return Tt(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return it(e,r)}function nc(e,t,r){const o=t._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=st(t._zod.def,{get shape(){const i=t._zod.def.shape,u={...i};if(r)for(const l in r){if(!(l in i))throw new Error(`Unrecognized key: "${l}"`);r[l]&&(u[l]=e?new e({type:"optional",innerType:i[l]}):i[l])}else for(const l in i)u[l]=e?new e({type:"optional",innerType:i[l]}):i[l];return Tt(this,"shape",u),u},checks:[]});return it(t,s)}function oc(e,t,r){const n=st(t._zod.def,{get shape(){const o=t._zod.def.shape,a={...o};if(r)for(const s in r){if(!(s in a))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(a[s]=new e({type:"nonoptional",innerType:o[s]}))}else for(const s in o)a[s]=new e({type:"nonoptional",innerType:o[s]});return Tt(this,"shape",a),a}});return it(t,n)}function Nt(e,t=0){var r;if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(((r=e.issues[n])==null?void 0:r.continue)!==!0)return!0;return!1}function yt(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Or(e){return typeof e=="string"?e:e==null?void 0:e.message}function rt(e,t,r){var o,a,s,i,u,l;const n={...e,path:e.path??[]};if(!e.message){const c=Or((s=(a=(o=e.inst)==null?void 0:o._zod.def)==null?void 0:a.error)==null?void 0:s.call(a,e))??Or((i=t==null?void 0:t.error)==null?void 0:i.call(t,e))??Or((u=r.customError)==null?void 0:u.call(r,e))??Or((l=r.localeError)==null?void 0:l.call(r,e))??"Invalid input";n.message=c}return delete n.inst,delete n.continue,t!=null&&t.reportInput||delete n.input,n}function jn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function sr(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const $s=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,En,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Cs=h("$ZodError",$s),Ns=h("$ZodError",$s,{Parent:Error});function ac(e,t=r=>r.message){const r={},n=[];for(const o of e.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o))):n.push(t(o));return{formErrors:n,fieldErrors:r}}function sc(e,t=r=>r.message){const r={_errors:[]},n=o=>{for(const a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>n({issues:s}));else if(a.code==="invalid_key")n({issues:a.issues});else if(a.code==="invalid_element")n({issues:a.issues});else if(a.path.length===0)r._errors.push(t(a));else{let s=r,i=0;for(;i<a.path.length;){const u=a.path[i];i===a.path.length-1?(s[u]=s[u]||{_errors:[]},s[u]._errors.push(t(a))):s[u]=s[u]||{_errors:[]},s=s[u],i++}}};return n(e),r}const Un=e=>(t,r,n,o)=>{const a=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)throw new Mt;if(s.issues.length){const i=new((o==null?void 0:o.Err)??e)(s.issues.map(u=>rt(u,a,tt())));throw As(i,o==null?void 0:o.callee),i}return s.value},Fn=e=>async(t,r,n,o)=>{const a=n?Object.assign(n,{async:!0}):{async:!0};let s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise&&(s=await s),s.issues.length){const i=new((o==null?void 0:o.Err)??e)(s.issues.map(u=>rt(u,a,tt())));throw As(i,o==null?void 0:o.callee),i}return s.value},Kr=e=>(t,r,n)=>{const o=n?{...n,async:!1}:{async:!1},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new Mt;return a.issues.length?{success:!1,error:new(e??Cs)(a.issues.map(s=>rt(s,o,tt())))}:{success:!0,data:a.value}},ic=Kr(Ns),Xr=e=>async(t,r,n)=>{const o=n?Object.assign(n,{async:!0}):{async:!0};let a=t._zod.run({value:r,issues:[]},o);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(s=>rt(s,o,tt())))}:{success:!0,data:a.value}},uc=Xr(Ns),lc=e=>(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Un(e)(t,r,o)},cc=e=>(t,r,n)=>Un(e)(t,r,n),dc=e=>async(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Fn(e)(t,r,o)},pc=e=>async(t,r,n)=>Fn(e)(t,r,n),fc=e=>(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Kr(e)(t,r,o)},mc=e=>(t,r,n)=>Kr(e)(t,r,n),hc=e=>async(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Xr(e)(t,r,o)},vc=e=>async(t,r,n)=>Xr(e)(t,r,n),gc=/^[cC][^\s-]{8,}$/,yc=/^[0-9a-z]+$/,_c=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,bc=/^[0-9a-vA-V]{20}$/,wc=/^[A-Za-z0-9]{27}$/,Ic=/^[a-zA-Z0-9_-]{21}$/,Tc=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Sc=/^([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})$/,Uo=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Ec=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,kc="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function xc(){return new RegExp(kc,"u")}const Oc=/^(?:(?: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])$/,Ac=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Rc=/^((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])$/,$c=/^(([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])$/,Cc=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ms=/^[A-Za-z0-9_-]*$/,Nc=/^\+[1-9]\d{6,14}$/,Ps="(?:(?:\\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])))",Mc=new RegExp(`^${Ps}$`);function zs(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Pc(e){return new RegExp(`^${zs(e)}$`)}function zc(e){const t=zs({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const n=`${t}(?:${r.join("|")})`;return new RegExp(`^${Ps}T(?:${n})$`)}const Zc=e=>{const t=e?`[\\s\\S]{${(e==null?void 0:e.minimum)??0},${(e==null?void 0:e.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Dc=/^-?\d+$/,Zs=/^-?\d+(?:\.\d+)?$/,jc=/^(?:true|false)$/i,Uc=/^null$/i,Fc=/^[^A-Z]*$/,qc=/^[^a-z]*$/,_e=h("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Ds={number:"number",bigint:"bigint",object:"date"},js=h("$ZodCheckLessThan",(e,t)=>{_e.init(e,t);const r=Ds[typeof t.value];e._zod.onattach.push(n=>{const o=n._zod.bag,a=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<a&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Us=h("$ZodCheckGreaterThan",(e,t)=>{_e.init(e,t);const r=Ds[typeof t.value];e._zod.onattach.push(n=>{const o=n._zod.bag,a=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>a&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Lc=h("$ZodCheckMultipleOf",(e,t)=>{_e.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Bl(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Vc=h("$ZodCheckNumberFormat",(e,t)=>{var s;_e.init(e,t),t.format=t.format||"float64";const r=(s=t.format)==null?void 0:s.includes("int"),n=r?"int":"number",[o,a]=Kl[t.format];e._zod.onattach.push(i=>{const u=i._zod.bag;u.format=t.format,u.minimum=o,u.maximum=a,r&&(u.pattern=Dc)}),e._zod.check=i=>{const u=i.value;if(r){if(!Number.isInteger(u)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:u,inst:e});return}if(!Number.isSafeInteger(u)){u>0?i.issues.push({input:u,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort}):i.issues.push({input:u,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}u<o&&i.issues.push({origin:"number",input:u,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),u>a&&i.issues.push({origin:"number",input:u,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Jc=h("$ZodCheckMaxLength",(e,t)=>{var r;_e.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Zn(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const o=n.value;if(o.length<=t.maximum)return;const s=jn(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Bc=h("$ZodCheckMinLength",(e,t)=>{var r;_e.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Zn(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const o=n.value;if(o.length>=t.minimum)return;const s=jn(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Gc=h("$ZodCheckLengthEquals",(e,t)=>{var r;_e.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Zn(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=n=>{const o=n.value,a=o.length;if(a===t.length)return;const s=jn(o),i=a>t.length;n.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Qr=h("$ZodCheckStringFormat",(e,t)=>{var r,n;_e.init(e,t),e._zod.onattach.push(o=>{const a=o._zod.bag;a.format=t.format,t.pattern&&(a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Wc=h("$ZodCheckRegex",(e,t)=>{Qr.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Hc=h("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Fc),Qr.init(e,t)}),Yc=h("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=qc),Qr.init(e,t)}),Kc=h("$ZodCheckIncludes",(e,t)=>{_e.init(e,t);const r=zt(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(o=>{const a=o._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(n)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Xc=h("$ZodCheckStartsWith",(e,t)=>{_e.init(e,t);const r=new RegExp(`^${zt(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Qc=h("$ZodCheckEndsWith",(e,t)=>{_e.init(e,t);const r=new RegExp(`.*${zt(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),ed=h("$ZodCheckOverwrite",(e,t)=>{_e.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});class td{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const n=t.split(`
4
+ `).filter(s=>s),o=Math.min(...n.map(s=>s.length-s.trimStart().length)),a=n.map(s=>s.slice(o)).map(s=>" ".repeat(this.indent*2)+s);for(const s of a)this.content.push(s)}compile(){const t=Function,r=this==null?void 0:this.args,o=[...((this==null?void 0:this.content)??[""]).map(a=>` ${a}`)];return new t(...r,o.join(`
5
+ `))}}const rd={major:4,minor:3,patch:6},F=h("$ZodType",(e,t)=>{var o;var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=rd;const n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(const a of n)for(const s of a._zod.onattach)s(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),(o=e._zod.deferred)==null||o.push(()=>{e._zod.run=e._zod.parse});else{const a=(i,u,l)=>{let c=Nt(i),p;for(const d of u){if(d._zod.def.when){if(!d._zod.def.when(i))continue}else if(c)continue;const m=i.issues.length,_=d._zod.check(i);if(_ instanceof Promise&&(l==null?void 0:l.async)===!1)throw new Mt;if(p||_ instanceof Promise)p=(p??Promise.resolve()).then(async()=>{await _,i.issues.length!==m&&(c||(c=Nt(i,m)))});else{if(i.issues.length===m)continue;c||(c=Nt(i,m))}}return p?p.then(()=>i):i},s=(i,u,l)=>{if(Nt(i))return i.aborted=!0,i;const c=a(u,n,l);if(c instanceof Promise){if(l.async===!1)throw new Mt;return c.then(p=>e._zod.parse(p,l))}return e._zod.parse(c,l)};e._zod.run=(i,u)=>{if(u.skipChecks)return e._zod.parse(i,u);if(u.direction==="backward"){const c=e._zod.parse({value:i.value,issues:[]},{...u,skipChecks:!0});return c instanceof Promise?c.then(p=>s(p,i,u)):s(c,i,u)}const l=e._zod.parse(i,u);if(l instanceof Promise){if(u.async===!1)throw new Mt;return l.then(c=>a(c,n,u))}return a(l,n,u)}}P(e,"~standard",()=>({validate:a=>{var s;try{const i=ic(e,a);return i.success?{value:i.data}:{issues:(s=i.error)==null?void 0:s.issues}}catch{return uc(e,a).then(u=>{var l;return u.success?{value:u.data}:{issues:(l=u.error)==null?void 0:l.issues}})}},vendor:"zod",version:1}))}),qn=h("$ZodString",(e,t)=>{var r;F.init(e,t),e._zod.pattern=[...((r=e==null?void 0:e._zod.bag)==null?void 0:r.patterns)??[]].pop()??Zc(e._zod.bag),e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Y=h("$ZodStringFormat",(e,t)=>{Qr.init(e,t),qn.init(e,t)}),nd=h("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Sc),Y.init(e,t)}),od=h("$ZodUUID",(e,t)=>{if(t.version){const n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Uo(n))}else t.pattern??(t.pattern=Uo());Y.init(e,t)}),ad=h("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ec),Y.init(e,t)}),sd=h("$ZodURL",(e,t)=>{Y.init(e,t),e._zod.check=r=>{try{const n=r.value.trim(),o=new URL(n);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),t.normalize?r.value=o.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),id=h("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=xc()),Y.init(e,t)}),ud=h("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Ic),Y.init(e,t)}),ld=h("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=gc),Y.init(e,t)}),cd=h("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=yc),Y.init(e,t)}),dd=h("$ZodULID",(e,t)=>{t.pattern??(t.pattern=_c),Y.init(e,t)}),pd=h("$ZodXID",(e,t)=>{t.pattern??(t.pattern=bc),Y.init(e,t)}),fd=h("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=wc),Y.init(e,t)}),md=h("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=zc(t)),Y.init(e,t)}),hd=h("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Mc),Y.init(e,t)}),vd=h("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Pc(t)),Y.init(e,t)}),gd=h("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Tc),Y.init(e,t)}),yd=h("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Oc),Y.init(e,t),e._zod.bag.format="ipv4"}),_d=h("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Ac),Y.init(e,t),e._zod.bag.format="ipv6",e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),bd=h("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Rc),Y.init(e,t)}),wd=h("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=$c),Y.init(e,t),e._zod.check=r=>{const n=r.value.split("/");try{if(n.length!==2)throw new Error;const[o,a]=n;if(!a)throw new Error;const s=Number(a);if(`${s}`!==a)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function Fs(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const Id=h("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Cc),Y.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{Fs(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function Td(e){if(!Ms.test(e))return!1;const t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Fs(r)}const Sd=h("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ms),Y.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=r=>{Td(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Ed=h("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Nc),Y.init(e,t)});function kd(e,t=null){try{const r=e.split(".");if(r.length!==3)return!1;const[n]=r;if(!n)return!1;const o=JSON.parse(atob(n));return!("typ"in o&&(o==null?void 0:o.typ)!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const xd=h("$ZodJWT",(e,t)=>{Y.init(e,t),e._zod.check=r=>{kd(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}}),qs=h("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Zs,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch{}const o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;const a=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:e,...a?{received:a}:{}}),r}}),Od=h("$ZodNumberFormat",(e,t)=>{Vc.init(e,t),qs.init(e,t)}),Ad=h("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=jc,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=!!r.value}catch{}const o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}}),Rd=h("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=Uc,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{const o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}}),$d=h("$ZodAny",(e,t)=>{F.init(e,t),e._zod.parse=r=>r}),Cd=h("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=r=>r}),Nd=h("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Fo(e,t,r){e.issues.length&&t.issues.push(...yt(r,e.issues)),t.value[r]=e.value}const Md=h("$ZodArray",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{const o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);const a=[];for(let s=0;s<o.length;s++){const i=o[s],u=t.element._zod.run({value:i,issues:[]},n);u instanceof Promise?a.push(u.then(l=>Fo(l,r,s))):Fo(u,r,s)}return a.length?Promise.all(a).then(()=>r):r}});function Mr(e,t,r,n,o){if(e.issues.length){if(o&&!(r in n))return;t.issues.push(...yt(r,e.issues))}e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}function Ls(e){var n,o,a,s;const t=Object.keys(e.shape);for(const i of t)if(!((s=(a=(o=(n=e.shape)==null?void 0:n[i])==null?void 0:o._zod)==null?void 0:a.traits)!=null&&s.has("$ZodType")))throw new Error(`Invalid element at key "${i}": expected a Zod schema`);const r=Yl(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function Vs(e,t,r,n,o,a){const s=[],i=o.keySet,u=o.catchall._zod,l=u.def.type,c=u.optout==="optional";for(const p in t){if(i.has(p))continue;if(l==="never"){s.push(p);continue}const d=u.run({value:t[p],issues:[]},n);d instanceof Promise?e.push(d.then(m=>Mr(m,r,p,t,c))):Mr(d,r,p,t,c)}return s.length&&r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:a}),e.length?Promise.all(e).then(()=>r):r}const Pd=h("$ZodObject",(e,t)=>{F.init(e,t);const r=Object.getOwnPropertyDescriptor(t,"shape");if(!(r!=null&&r.get)){const i=t.shape;Object.defineProperty(t,"shape",{get:()=>{const u={...i};return Object.defineProperty(t,"shape",{value:u}),u}})}const n=Yr(()=>Ls(t));P(e._zod,"propValues",()=>{const i=t.shape,u={};for(const l in i){const c=i[l]._zod;if(c.values){u[l]??(u[l]=new Set);for(const p of c.values)u[l].add(p)}}return u});const o=ar,a=t.catchall;let s;e._zod.parse=(i,u)=>{s??(s=n.value);const l=i.value;if(!o(l))return i.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),i;i.value={};const c=[],p=s.shape;for(const d of s.keys){const m=p[d],_=m._zod.optout==="optional",v=m._zod.run({value:l[d],issues:[]},u);v instanceof Promise?c.push(v.then(y=>Mr(y,i,d,l,_))):Mr(v,i,d,l,_)}return a?Vs(c,l,i,u,n.value,e):c.length?Promise.all(c).then(()=>i):i}}),zd=h("$ZodObjectJIT",(e,t)=>{Pd.init(e,t);const r=e._zod.parse,n=Yr(()=>Ls(t)),o=d=>{var f;const m=new td(["shape","payload","ctx"]),_=n.value,v=A=>{const E=jo(A);return`shape[${E}]._zod.run({ value: input[${E}], issues: [] }, ctx)`};m.write("const input = payload.value;");const y=Object.create(null);let z=0;for(const A of _.keys)y[A]=`key_${z++}`;m.write("const newResult = {};");for(const A of _.keys){const E=y[A],b=jo(A),R=d[A],B=((f=R==null?void 0:R._zod)==null?void 0:f.optout)==="optional";m.write(`const ${E} = ${v(A)};`),B?m.write(`
6
+ if (${E}.issues.length) {
7
+ if (${b} in input) {
8
+ payload.issues = payload.issues.concat(${E}.issues.map(iss => ({
9
+ ...iss,
10
+ path: iss.path ? [${b}, ...iss.path] : [${b}]
11
+ })));
12
+ }
13
+ }
14
+
15
+ if (${E}.value === undefined) {
16
+ if (${b} in input) {
17
+ newResult[${b}] = undefined;
18
+ }
19
+ } else {
20
+ newResult[${b}] = ${E}.value;
21
+ }
22
+
23
+ `):m.write(`
24
+ if (${E}.issues.length) {
25
+ payload.issues = payload.issues.concat(${E}.issues.map(iss => ({
26
+ ...iss,
27
+ path: iss.path ? [${b}, ...iss.path] : [${b}]
28
+ })));
29
+ }
30
+
31
+ if (${E}.value === undefined) {
32
+ if (${b} in input) {
33
+ newResult[${b}] = undefined;
34
+ }
35
+ } else {
36
+ newResult[${b}] = ${E}.value;
37
+ }
38
+
39
+ `)}m.write("payload.value = newResult;"),m.write("return payload;");const $=m.compile();return(A,E)=>$(d,A,E)};let a;const s=ar,i=!xs.jitless,l=i&&Wl.value,c=t.catchall;let p;e._zod.parse=(d,m)=>{p??(p=n.value);const _=d.value;return s(_)?i&&l&&(m==null?void 0:m.async)===!1&&m.jitless!==!0?(a||(a=o(t.shape)),d=a(d,m),c?Vs([],_,d,m,p,e):d):r(d,m):(d.issues.push({expected:"object",code:"invalid_type",input:_,inst:e}),d)}});function qo(e,t,r,n){for(const a of e)if(a.issues.length===0)return t.value=a.value,t;const o=e.filter(a=>!Nt(a));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(a=>a.issues.map(s=>rt(s,n,tt())))}),t)}const Js=h("$ZodUnion",(e,t)=>{F.init(e,t),P(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),P(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),P(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),P(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(a=>a._zod.pattern);return new RegExp(`^(${o.map(a=>Dn(a.source)).join("|")})$`)}});const r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(o,a)=>{if(r)return n(o,a);let s=!1;const i=[];for(const u of t.options){const l=u._zod.run({value:o.value,issues:[]},a);if(l instanceof Promise)i.push(l),s=!0;else{if(l.issues.length===0)return l;i.push(l)}}return s?Promise.all(i).then(u=>qo(u,o,e,a)):qo(i,o,e,a)}}),Zd=h("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Js.init(e,t);const r=e._zod.parse;P(e._zod,"propValues",()=>{const o={};for(const a of t.options){const s=a._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(const[i,u]of Object.entries(s)){o[i]||(o[i]=new Set);for(const l of u)o[i].add(l)}}return o});const n=Yr(()=>{var s;const o=t.options,a=new Map;for(const i of o){const u=(s=i._zod.propValues)==null?void 0:s[t.discriminator];if(!u||u.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const l of u){if(a.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);a.set(l,i)}}return a});e._zod.parse=(o,a)=>{const s=o.value;if(!ar(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;const i=n.value.get(s==null?void 0:s[t.discriminator]);return i?i._zod.run(o,a):t.unionFallback?r(o,a):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:s,path:[t.discriminator],inst:e}),o)}}),Dd=h("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{const o=r.value,a=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);return a instanceof Promise||s instanceof Promise?Promise.all([a,s]).then(([u,l])=>Lo(r,u,l)):Lo(r,a,s)}});function kn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Pt(e)&&Pt(t)){const r=Object.keys(t),n=Object.keys(e).filter(a=>r.indexOf(a)!==-1),o={...e,...t};for(const a of n){const s=kn(e[a],t[a]);if(!s.valid)return{valid:!1,mergeErrorPath:[a,...s.mergeErrorPath]};o[a]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const r=[];for(let n=0;n<e.length;n++){const o=e[n],a=t[n],s=kn(o,a);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Lo(e,t,r){const n=new Map;let o;for(const i of t.issues)if(i.code==="unrecognized_keys"){o??(o=i);for(const u of i.keys)n.has(u)||n.set(u,{}),n.get(u).l=!0}else e.issues.push(i);for(const i of r.issues)if(i.code==="unrecognized_keys")for(const u of i.keys)n.has(u)||n.set(u,{}),n.get(u).r=!0;else e.issues.push(i);const a=[...n].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(a.length&&o&&e.issues.push({...o,keys:a}),Nt(e))return e;const s=kn(t.value,r.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const jd=h("$ZodTuple",(e,t)=>{F.init(e,t);const r=t.items;e._zod.parse=(n,o)=>{const a=n.value;if(!Array.isArray(a))return n.issues.push({input:a,inst:e,expected:"tuple",code:"invalid_type"}),n;n.value=[];const s=[],i=[...r].reverse().findIndex(c=>c._zod.optin!=="optional"),u=i===-1?0:r.length-i;if(!t.rest){const c=a.length>r.length,p=a.length<u-1;if(c||p)return n.issues.push({...c?{code:"too_big",maximum:r.length,inclusive:!0}:{code:"too_small",minimum:r.length},input:a,inst:e,origin:"array"}),n}let l=-1;for(const c of r){if(l++,l>=a.length&&l>=u)continue;const p=c._zod.run({value:a[l],issues:[]},o);p instanceof Promise?s.push(p.then(d=>Ar(d,n,l))):Ar(p,n,l)}if(t.rest){const c=a.slice(r.length);for(const p of c){l++;const d=t.rest._zod.run({value:p,issues:[]},o);d instanceof Promise?s.push(d.then(m=>Ar(m,n,l))):Ar(d,n,l)}}return s.length?Promise.all(s).then(()=>n):n}});function Ar(e,t,r){e.issues.length&&t.issues.push(...yt(r,e.issues)),t.value[r]=e.value}const Ud=h("$ZodRecord",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{const o=r.value;if(!Pt(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),r;const a=[],s=t.keyType._zod.values;if(s){r.value={};const i=new Set;for(const l of s)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){i.add(typeof l=="number"?l.toString():l);const c=t.valueType._zod.run({value:o[l],issues:[]},n);c instanceof Promise?a.push(c.then(p=>{p.issues.length&&r.issues.push(...yt(l,p.issues)),r.value[l]=p.value})):(c.issues.length&&r.issues.push(...yt(l,c.issues)),r.value[l]=c.value)}let u;for(const l in o)i.has(l)||(u=u??[],u.push(l));u&&u.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:u})}else{r.value={};for(const i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let u=t.keyType._zod.run({value:i,issues:[]},n);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof i=="string"&&Zs.test(i)&&u.issues.length){const p=t.keyType._zod.run({value:Number(i),issues:[]},n);if(p instanceof Promise)throw new Error("Async schemas not supported in object keys currently");p.issues.length===0&&(u=p)}if(u.issues.length){t.mode==="loose"?r.value[i]=o[i]:r.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(p=>rt(p,n,tt())),input:i,path:[i],inst:e});continue}const c=t.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?a.push(c.then(p=>{p.issues.length&&r.issues.push(...yt(i,p.issues)),r.value[u.value]=p.value})):(c.issues.length&&r.issues.push(...yt(i,c.issues)),r.value[u.value]=c.value)}}return a.length?Promise.all(a).then(()=>r):r}}),Fd=h("$ZodEnum",(e,t)=>{F.init(e,t);const r=Os(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter(o=>Hl.has(typeof o)).map(o=>typeof o=="string"?zt(o):o.toString()).join("|")})$`),e._zod.parse=(o,a)=>{const s=o.value;return n.has(s)||o.issues.push({code:"invalid_value",values:r,input:s,inst:e}),o}}),qd=h("$ZodLiteral",(e,t)=>{if(F.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map(n=>typeof n=="string"?zt(n):n?zt(n.toString()):String(n)).join("|")})$`),e._zod.parse=(n,o)=>{const a=n.value;return r.has(a)||n.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),n}}),Ld=h("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new ks(e.constructor.name);const o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(r.value=s,r));if(o instanceof Promise)throw new Mt;return r.value=o,r}});function Vo(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Bs=h("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",P(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),P(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Dn(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(a=>Vo(a,r.value)):Vo(o,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),Vd=h("$ZodExactOptional",(e,t)=>{Bs.init(e,t),P(e._zod,"values",()=>t.innerType._zod.values),P(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),Jd=h("$ZodNullable",(e,t)=>{F.init(e,t),P(e._zod,"optin",()=>t.innerType._zod.optin),P(e._zod,"optout",()=>t.innerType._zod.optout),P(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Dn(r.source)}|null)$`):void 0}),P(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Bd=h("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",P(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(a=>Jo(a,t)):Jo(o,t)}});function Jo(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Gd=h("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",P(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Wd=h("$ZodNonOptional",(e,t)=>{F.init(e,t),P(e._zod,"values",()=>{const r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(a=>Bo(a,e)):Bo(o,e)}});function Bo(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Hd=h("$ZodCatch",(e,t)=>{F.init(e,t),P(e._zod,"optin",()=>t.innerType._zod.optin),P(e._zod,"optout",()=>t.innerType._zod.optout),P(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(a=>(r.value=a.value,a.issues.length&&(r.value=t.catchValue({...r,error:{issues:a.issues.map(s=>rt(s,n,tt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(a=>rt(a,n,tt()))},input:r.value}),r.issues=[]),r)}}),Yd=h("$ZodPipe",(e,t)=>{F.init(e,t),P(e._zod,"values",()=>t.in._zod.values),P(e._zod,"optin",()=>t.in._zod.optin),P(e._zod,"optout",()=>t.out._zod.optout),P(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){const a=t.out._zod.run(r,n);return a instanceof Promise?a.then(s=>Rr(s,t.in,n)):Rr(a,t.in,n)}const o=t.in._zod.run(r,n);return o instanceof Promise?o.then(a=>Rr(a,t.out,n)):Rr(o,t.out,n)}});function Rr(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const Kd=h("$ZodReadonly",(e,t)=>{F.init(e,t),P(e._zod,"propValues",()=>t.innerType._zod.propValues),P(e._zod,"values",()=>t.innerType._zod.values),P(e._zod,"optin",()=>{var r,n;return(n=(r=t.innerType)==null?void 0:r._zod)==null?void 0:n.optin}),P(e._zod,"optout",()=>{var r,n;return(n=(r=t.innerType)==null?void 0:r._zod)==null?void 0:n.optout}),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(Go):Go(o)}});function Go(e){return e.value=Object.freeze(e.value),e}const Xd=h("$ZodLazy",(e,t)=>{F.init(e,t),P(e._zod,"innerType",()=>t.getter()),P(e._zod,"pattern",()=>{var r,n;return(n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.pattern}),P(e._zod,"propValues",()=>{var r,n;return(n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.propValues}),P(e._zod,"optin",()=>{var r,n;return((n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.optin)??void 0}),P(e._zod,"optout",()=>{var r,n;return((n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.optout)??void 0}),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Qd=h("$ZodCustom",(e,t)=>{_e.init(e,t),F.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{const n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then(a=>Wo(a,r,n,e));Wo(o,r,n,e)}});function Wo(e,t,r,n){if(!e){const 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),t.issues.push(sr(o))}}var Ho;class ep{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...r){const n=r[0];return this._map.set(t,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){const r=t._zod.parent;if(r){const n={...this.get(r)??{}};delete n.id;const o={...n,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function tp(){return new ep}(Ho=globalThis).__zod_globalRegistry??(Ho.__zod_globalRegistry=tp());const tr=globalThis.__zod_globalRegistry;function rp(e,t){return new e({type:"string",...I(t)})}function np(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...I(t)})}function Yo(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...I(t)})}function op(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...I(t)})}function ap(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(t)})}function sp(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(t)})}function ip(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(t)})}function up(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...I(t)})}function lp(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...I(t)})}function cp(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(t)})}function dp(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...I(t)})}function pp(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(t)})}function fp(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...I(t)})}function mp(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...I(t)})}function hp(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(t)})}function vp(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(t)})}function gp(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(t)})}function yp(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(t)})}function _p(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(t)})}function bp(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...I(t)})}function wp(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...I(t)})}function Ip(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...I(t)})}function Tp(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...I(t)})}function Sp(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(t)})}function Ep(e,t){return new e({type:"string",format:"date",check:"string_format",...I(t)})}function kp(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...I(t)})}function xp(e,t){return new e({type:"string",format:"duration",check:"string_format",...I(t)})}function Op(e,t){return new e({type:"number",checks:[],...I(t)})}function Ty(e,t){return new e({type:"number",coerce:!0,checks:[],...I(t)})}function Ap(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...I(t)})}function Rp(e,t){return new e({type:"boolean",...I(t)})}function $p(e,t){return new e({type:"null",...I(t)})}function Cp(e){return new e({type:"any"})}function Np(e){return new e({type:"unknown"})}function Mp(e,t){return new e({type:"never",...I(t)})}function Ko(e,t){return new js({check:"less_than",...I(t),value:e,inclusive:!1})}function pn(e,t){return new js({check:"less_than",...I(t),value:e,inclusive:!0})}function Xo(e,t){return new Us({check:"greater_than",...I(t),value:e,inclusive:!1})}function fn(e,t){return new Us({check:"greater_than",...I(t),value:e,inclusive:!0})}function Qo(e,t){return new Lc({check:"multiple_of",...I(t),value:e})}function Gs(e,t){return new Jc({check:"max_length",...I(t),maximum:e})}function Pr(e,t){return new Bc({check:"min_length",...I(t),minimum:e})}function Ws(e,t){return new Gc({check:"length_equals",...I(t),length:e})}function Pp(e,t){return new Wc({check:"string_format",format:"regex",...I(t),pattern:e})}function zp(e){return new Hc({check:"string_format",format:"lowercase",...I(e)})}function Zp(e){return new Yc({check:"string_format",format:"uppercase",...I(e)})}function Dp(e,t){return new Kc({check:"string_format",format:"includes",...I(t),includes:e})}function jp(e,t){return new Xc({check:"string_format",format:"starts_with",...I(t),prefix:e})}function Up(e,t){return new Qc({check:"string_format",format:"ends_with",...I(t),suffix:e})}function jt(e){return new ed({check:"overwrite",tx:e})}function Fp(e){return jt(t=>t.normalize(e))}function qp(){return jt(e=>e.trim())}function Lp(){return jt(e=>e.toLowerCase())}function Vp(){return jt(e=>e.toUpperCase())}function Jp(){return jt(e=>Gl(e))}function Bp(e,t,r){return new e({type:"array",element:t,...I(r)})}function Gp(e,t,r){const n=I(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Wp(e,t,r){return new e({type:"custom",check:"custom",fn:t,...I(r)})}function Hp(e){const t=Yp(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(sr(n,r.value,t._zod.def));else{const o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),r.issues.push(sr(o))}},e(r.value,r)));return t}function Yp(e,t){const r=new _e({check:"custom",...I(t)});return r._zod.check=e,r}function zr(e){let t=(e==null?void 0:e.target)??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:(e==null?void 0:e.metadata)??tr,target:t,unrepresentable:(e==null?void 0:e.unrepresentable)??"throw",override:(e==null?void 0:e.override)??(()=>{}),io:(e==null?void 0:e.io)??"output",counter:0,seen:new Map,cycles:(e==null?void 0:e.cycles)??"ref",reused:(e==null?void 0:e.reused)??"inline",external:(e==null?void 0:e.external)??void 0}}function J(e,t,r={path:[],schemaPath:[]}){var c,p;var n;const o=e._zod.def,a=t.seen.get(e);if(a)return a.count++,r.schemaPath.includes(e)&&(a.cycle=r.path),a.schema;const s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);const i=(p=(c=e._zod).toJSONSchema)==null?void 0:p.call(c);if(i)s.schema=i;else{const d={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,d);else{const _=s.schema,v=t.processors[o.type];if(!v)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);v(e,t,_,d)}const m=e._zod.parent;m&&(s.ref||(s.ref=m),J(m,t,d),t.seen.get(m).isParent=!0)}const u=t.metadataRegistry.get(e);return u&&Object.assign(s.schema,u),t.io==="input"&&ge(e)&&(delete s.schema.examples,delete s.schema.default),t.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function Zr(e,t){var s,i,u,l;const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=new Map;for(const c of e.seen.entries()){const p=(s=e.metadataRegistry.get(c[0]))==null?void 0:s.id;if(p){const d=n.get(p);if(d&&d!==c[0])throw new Error(`Duplicate schema id "${p}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(p,c[0])}}const o=c=>{var v;const p=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const y=(v=e.external.registry.get(c[0]))==null?void 0:v.id,z=e.external.uri??(f=>f);if(y)return{ref:z(y)};const $=c[1].defId??c[1].schema.id??`schema${e.counter++}`;return c[1].defId=$,{defId:$,ref:`${z("__shared")}#/${p}/${$}`}}if(c[1]===r)return{ref:"#"};const m=`#/${p}/`,_=c[1].schema.id??`__schema${e.counter++}`;return{defId:_,ref:m+_}},a=c=>{if(c[1].schema.$ref)return;const p=c[1],{ref:d,defId:m}=o(c);p.def={...p.schema},m&&(p.defId=m);const _=p.schema;for(const v in _)delete _[v];_.$ref=d};if(e.cycles==="throw")for(const c of e.seen.entries()){const p=c[1];if(p.cycle)throw new Error(`Cycle detected: #/${(i=p.cycle)==null?void 0:i.join("/")}/<root>
40
+
41
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const c of e.seen.entries()){const p=c[1];if(t===c[0]){a(c);continue}if(e.external){const m=(u=e.external.registry.get(c[0]))==null?void 0:u.id;if(t!==c[0]&&m){a(c);continue}}if((l=e.metadataRegistry.get(c[0]))==null?void 0:l.id){a(c);continue}if(p.cycle){a(c);continue}if(p.count>1&&e.reused==="ref"){a(c);continue}}}function Dr(e,t){var s,i,u;const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=l=>{const c=e.seen.get(l);if(c.ref===null)return;const p=c.def??c.schema,d={...p},m=c.ref;if(c.ref=null,m){n(m);const v=e.seen.get(m),y=v.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(p.allOf=p.allOf??[],p.allOf.push(y)):Object.assign(p,y),Object.assign(p,d),l._zod.parent===m)for(const $ in p)$==="$ref"||$==="allOf"||$ in d||delete p[$];if(y.$ref&&v.def)for(const $ in p)$==="$ref"||$==="allOf"||$ in v.def&&JSON.stringify(p[$])===JSON.stringify(v.def[$])&&delete p[$]}const _=l._zod.parent;if(_&&_!==m){n(_);const v=e.seen.get(_);if(v!=null&&v.schema.$ref&&(p.$ref=v.schema.$ref,v.def))for(const y in p)y==="$ref"||y==="allOf"||y in v.def&&JSON.stringify(p[y])===JSON.stringify(v.def[y])&&delete p[y]}e.override({zodSchema:l,jsonSchema:p,path:c.path??[]})};for(const l of[...e.seen.entries()].reverse())n(l[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,(s=e.external)!=null&&s.uri){const l=(i=e.external.registry.get(t))==null?void 0:i.id;if(!l)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(l)}Object.assign(o,r.def??r.schema);const a=((u=e.external)==null?void 0:u.defs)??{};for(const l of e.seen.entries()){const c=l[1];c.def&&c.defId&&(a[c.defId]=c.def)}e.external||Object.keys(a).length>0&&(e.target==="draft-2020-12"?o.$defs=a:o.definitions=a);try{const l=JSON.parse(JSON.stringify(o));return Object.defineProperty(l,"~standard",{value:{...t["~standard"],jsonSchema:{input:jr(t,"input",e.processors),output:jr(t,"output",e.processors)}},enumerable:!1,writable:!1}),l}catch{throw new Error("Error converting schema to JSON.")}}function ge(e,t){const r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);const n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return ge(n.element,r);if(n.type==="set")return ge(n.valueType,r);if(n.type==="lazy")return ge(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return ge(n.innerType,r);if(n.type==="intersection")return ge(n.left,r)||ge(n.right,r);if(n.type==="record"||n.type==="map")return ge(n.keyType,r)||ge(n.valueType,r);if(n.type==="pipe")return ge(n.in,r)||ge(n.out,r);if(n.type==="object"){for(const o in n.shape)if(ge(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(const o of n.options)if(ge(o,r))return!0;return!1}if(n.type==="tuple"){for(const o of n.items)if(ge(o,r))return!0;return!!(n.rest&&ge(n.rest,r))}return!1}const Kp=(e,t={})=>r=>{const n=zr({...r,processors:t});return J(e,n),Zr(n,e),Dr(n,e)},jr=(e,t,r={})=>n=>{const{libraryOptions:o,target:a}=n??{},s=zr({...o??{},target:a,io:t,processors:r});return J(e,s),Zr(s,e),Dr(s,e)},Xp={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Hs=(e,t,r,n)=>{const o=r;o.type="string";const{minimum:a,maximum:s,format:i,patterns:u,contentEncoding:l}=e._zod.bag;if(typeof a=="number"&&(o.minLength=a),typeof s=="number"&&(o.maxLength=s),i&&(o.format=Xp[i]??i,o.format===""&&delete o.format,i==="time"&&delete o.format),l&&(o.contentEncoding=l),u&&u.size>0){const c=[...u];c.length===1?o.pattern=c[0].source:c.length>1&&(o.allOf=[...c.map(p=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))])}},Ys=(e,t,r,n)=>{const o=r,{minimum:a,maximum:s,format:i,multipleOf:u,exclusiveMaximum:l,exclusiveMinimum:c}=e._zod.bag;typeof i=="string"&&i.includes("int")?o.type="integer":o.type="number",typeof c=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.minimum=c,o.exclusiveMinimum=!0):o.exclusiveMinimum=c),typeof a=="number"&&(o.minimum=a,typeof c=="number"&&t.target!=="draft-04"&&(c>=a?delete o.minimum:delete o.exclusiveMinimum)),typeof l=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.maximum=l,o.exclusiveMaximum=!0):o.exclusiveMaximum=l),typeof s=="number"&&(o.maximum=s,typeof l=="number"&&t.target!=="draft-04"&&(l<=s?delete o.maximum:delete o.exclusiveMaximum)),typeof u=="number"&&(o.multipleOf=u)},Ks=(e,t,r,n)=>{r.type="boolean"},Qp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},ef=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},Xs=(e,t,r,n)=>{t.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},tf=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},rf=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Qs=(e,t,r,n)=>{r.not={}},ei=(e,t,r,n)=>{},ti=(e,t,r,n)=>{},nf=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},ri=(e,t,r,n)=>{const o=e._zod.def,a=Os(o.entries);a.every(s=>typeof s=="number")&&(r.type="number"),a.every(s=>typeof s=="string")&&(r.type="string"),r.enum=a},ni=(e,t,r,n)=>{const o=e._zod.def,a=[];for(const s of o.values)if(s===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");a.push(Number(s))}else a.push(s);if(a.length!==0)if(a.length===1){const s=a[0];r.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0"?r.enum=[s]:r.const=s}else a.every(s=>typeof s=="number")&&(r.type="number"),a.every(s=>typeof s=="string")&&(r.type="string"),a.every(s=>typeof s=="boolean")&&(r.type="boolean"),a.every(s=>s===null)&&(r.type="null"),r.enum=a},of=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},af=(e,t,r,n)=>{const o=r,a=e._zod.pattern;if(!a)throw new Error("Pattern not found in template literal");o.type="string",o.pattern=a.source},sf=(e,t,r,n)=>{const o=r,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:u}=e._zod.bag;s!==void 0&&(a.minLength=s),i!==void 0&&(a.maxLength=i),u?u.length===1?(a.contentMediaType=u[0],Object.assign(o,a)):(Object.assign(o,a),o.anyOf=u.map(l=>({contentMediaType:l}))):Object.assign(o,a)},uf=(e,t,r,n)=>{r.type="boolean"},oi=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},lf=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},ai=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},cf=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},df=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},si=(e,t,r,n)=>{const o=r,a=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;typeof s=="number"&&(o.minItems=s),typeof i=="number"&&(o.maxItems=i),o.type="array",o.items=J(a.element,t,{...n,path:[...n.path,"items"]})},ii=(e,t,r,n)=>{var l;const o=r,a=e._zod.def;o.type="object",o.properties={};const s=a.shape;for(const c in s)o.properties[c]=J(s[c],t,{...n,path:[...n.path,"properties",c]});const i=new Set(Object.keys(s)),u=new Set([...i].filter(c=>{const p=a.shape[c]._zod;return t.io==="input"?p.optin===void 0:p.optout===void 0}));u.size>0&&(o.required=Array.from(u)),((l=a.catchall)==null?void 0:l._zod.def.type)==="never"?o.additionalProperties=!1:a.catchall?a.catchall&&(o.additionalProperties=J(a.catchall,t,{...n,path:[...n.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},ui=(e,t,r,n)=>{const o=e._zod.def,a=o.inclusive===!1,s=o.options.map((i,u)=>J(i,t,{...n,path:[...n.path,a?"oneOf":"anyOf",u]}));a?r.oneOf=s:r.anyOf=s},li=(e,t,r,n)=>{const o=e._zod.def,a=J(o.left,t,{...n,path:[...n.path,"allOf",0]}),s=J(o.right,t,{...n,path:[...n.path,"allOf",1]}),i=l=>"allOf"in l&&Object.keys(l).length===1,u=[...i(a)?a.allOf:[a],...i(s)?s.allOf:[s]];r.allOf=u},ci=(e,t,r,n)=>{const o=r,a=e._zod.def;o.type="array";const s=t.target==="draft-2020-12"?"prefixItems":"items",i=t.target==="draft-2020-12"||t.target==="openapi-3.0"?"items":"additionalItems",u=a.items.map((d,m)=>J(d,t,{...n,path:[...n.path,s,m]})),l=a.rest?J(a.rest,t,{...n,path:[...n.path,i,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;t.target==="draft-2020-12"?(o.prefixItems=u,l&&(o.items=l)):t.target==="openapi-3.0"?(o.items={anyOf:u},l&&o.items.anyOf.push(l),o.minItems=u.length,l||(o.maxItems=u.length)):(o.items=u,l&&(o.additionalItems=l));const{minimum:c,maximum:p}=e._zod.bag;typeof c=="number"&&(o.minItems=c),typeof p=="number"&&(o.maxItems=p)},di=(e,t,r,n)=>{const o=r,a=e._zod.def;o.type="object";const s=a.keyType,i=s._zod.bag,u=i==null?void 0:i.patterns;if(a.mode==="loose"&&u&&u.size>0){const c=J(a.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(const p of u)o.patternProperties[p.source]=c}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(o.propertyNames=J(a.keyType,t,{...n,path:[...n.path,"propertyNames"]})),o.additionalProperties=J(a.valueType,t,{...n,path:[...n.path,"additionalProperties"]});const l=s._zod.values;if(l){const c=[...l].filter(p=>typeof p=="string"||typeof p=="number");c.length>0&&(o.required=c)}},pi=(e,t,r,n)=>{const o=e._zod.def,a=J(o.innerType,t,n),s=t.seen.get(e);t.target==="openapi-3.0"?(s.ref=o.innerType,r.nullable=!0):r.anyOf=[a,{type:"null"}]},fi=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType},mi=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},hi=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},vi=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},gi=(e,t,r,n)=>{const o=e._zod.def,a=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;J(a,t,n);const s=t.seen.get(e);s.ref=a},yi=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType,r.readOnly=!0},pf=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType},Ln=(e,t,r,n)=>{const o=e._zod.def;J(o.innerType,t,n);const a=t.seen.get(e);a.ref=o.innerType},_i=(e,t,r,n)=>{const o=e._zod.innerType;J(o,t,n);const a=t.seen.get(e);a.ref=o},ea={string:Hs,number:Ys,boolean:Ks,bigint:Qp,symbol:ef,null:Xs,undefined:tf,void:rf,never:Qs,any:ei,unknown:ti,date:nf,enum:ri,literal:ni,nan:of,template_literal:af,file:sf,success:uf,custom:oi,function:lf,transform:ai,map:cf,set:df,array:si,object:ii,union:ui,intersection:li,tuple:ci,record:di,nullable:pi,nonoptional:fi,default:mi,prefault:hi,catch:vi,pipe:gi,readonly:yi,promise:pf,optional:Ln,lazy:_i};function ff(e,t){if("_idmap"in e){const n=e,o=zr({...t,processors:ea}),a={};for(const u of n._idmap.entries()){const[l,c]=u;J(c,o)}const s={},i={registry:n,uri:t==null?void 0:t.uri,defs:a};o.external=i;for(const u of n._idmap.entries()){const[l,c]=u;Zr(o,c),s[l]=Dr(o,c)}if(Object.keys(a).length>0){const u=o.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[u]:a}}return{schemas:s}}const r=zr({...t,processors:ea});return J(e,r),Zr(r,e),Dr(r,e)}const mf=h("ZodISODateTime",(e,t)=>{md.init(e,t),Q.init(e,t)});function hf(e){return Sp(mf,e)}const vf=h("ZodISODate",(e,t)=>{hd.init(e,t),Q.init(e,t)});function gf(e){return Ep(vf,e)}const yf=h("ZodISOTime",(e,t)=>{vd.init(e,t),Q.init(e,t)});function _f(e){return kp(yf,e)}const bf=h("ZodISODuration",(e,t)=>{gd.init(e,t),Q.init(e,t)});function wf(e){return xp(bf,e)}const If=(e,t)=>{Cs.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>sc(e,r)},flatten:{value:r=>ac(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,En,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,En,2)}},isEmpty:{get(){return e.issues.length===0}}})},xe=h("ZodError",If,{Parent:Error}),Tf=Un(xe),Sf=Fn(xe),Ef=Kr(xe),bi=Xr(xe),kf=lc(xe),xf=cc(xe),Of=dc(xe),Af=pc(xe),Rf=fc(xe),$f=mc(xe),Cf=hc(xe),Nf=vc(xe),L=h("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:jr(e,"input"),output:jr(e,"output")}}),e.toJSONSchema=Kp(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone(st(t,{checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),e.with=e.check,e.clone=(r,n)=>it(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>Tf(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>Ef(e,r,n),e.parseAsync=async(r,n)=>Sf(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>bi(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>kf(e,r,n),e.decode=(r,n)=>xf(e,r,n),e.encodeAsync=async(r,n)=>Of(e,r,n),e.decodeAsync=async(r,n)=>Af(e,r,n),e.safeEncode=(r,n)=>Rf(e,r,n),e.safeDecode=(r,n)=>$f(e,r,n),e.safeEncodeAsync=async(r,n)=>Cf(e,r,n),e.safeDecodeAsync=async(r,n)=>Nf(e,r,n),e.refine=(r,n)=>e.check(Cm(r,n)),e.superRefine=r=>e.check(Nm(r)),e.overwrite=r=>e.check(jt(r)),e.optional=()=>na(e),e.exactOptional=()=>gm(e),e.nullable=()=>oa(e),e.nullish=()=>na(oa(e)),e.nonoptional=r=>Tm(e,r),e.array=()=>pe(e),e.or=r=>le([e,r]),e.and=r=>cm(e,r),e.transform=r=>aa(e,hm(r)),e.default=r=>bm(e,r),e.prefault=r=>Im(e,r),e.catch=r=>Em(e,r),e.pipe=r=>aa(e,r),e.readonly=()=>Om(e),e.describe=r=>{const n=e.clone();return tr.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){var r;return(r=tr.get(e))==null?void 0:r.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return tr.get(e);const n=e.clone();return tr.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=r=>r(e),e)),wi=h("_ZodString",(e,t)=>{qn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,o,a)=>Hs(e,n,o);const r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(Pp(...n)),e.includes=(...n)=>e.check(Dp(...n)),e.startsWith=(...n)=>e.check(jp(...n)),e.endsWith=(...n)=>e.check(Up(...n)),e.min=(...n)=>e.check(Pr(...n)),e.max=(...n)=>e.check(Gs(...n)),e.length=(...n)=>e.check(Ws(...n)),e.nonempty=(...n)=>e.check(Pr(1,...n)),e.lowercase=n=>e.check(zp(n)),e.uppercase=n=>e.check(Zp(n)),e.trim=()=>e.check(qp()),e.normalize=(...n)=>e.check(Fp(...n)),e.toLowerCase=()=>e.check(Lp()),e.toUpperCase=()=>e.check(Vp()),e.slugify=()=>e.check(Jp())}),Mf=h("ZodString",(e,t)=>{qn.init(e,t),wi.init(e,t),e.email=r=>e.check(np(Pf,r)),e.url=r=>e.check(up(zf,r)),e.jwt=r=>e.check(Tp(Kf,r)),e.emoji=r=>e.check(lp(Zf,r)),e.guid=r=>e.check(Yo(ta,r)),e.uuid=r=>e.check(op($r,r)),e.uuidv4=r=>e.check(ap($r,r)),e.uuidv6=r=>e.check(sp($r,r)),e.uuidv7=r=>e.check(ip($r,r)),e.nanoid=r=>e.check(cp(Df,r)),e.guid=r=>e.check(Yo(ta,r)),e.cuid=r=>e.check(dp(jf,r)),e.cuid2=r=>e.check(pp(Uf,r)),e.ulid=r=>e.check(fp(Ff,r)),e.base64=r=>e.check(bp(Wf,r)),e.base64url=r=>e.check(wp(Hf,r)),e.xid=r=>e.check(mp(qf,r)),e.ksuid=r=>e.check(hp(Lf,r)),e.ipv4=r=>e.check(vp(Vf,r)),e.ipv6=r=>e.check(gp(Jf,r)),e.cidrv4=r=>e.check(yp(Bf,r)),e.cidrv6=r=>e.check(_p(Gf,r)),e.e164=r=>e.check(Ip(Yf,r)),e.datetime=r=>e.check(hf(r)),e.date=r=>e.check(gf(r)),e.time=r=>e.check(_f(r)),e.duration=r=>e.check(wf(r))});function g(e){return rp(Mf,e)}const Q=h("ZodStringFormat",(e,t)=>{Y.init(e,t),wi.init(e,t)}),Pf=h("ZodEmail",(e,t)=>{ad.init(e,t),Q.init(e,t)}),ta=h("ZodGUID",(e,t)=>{nd.init(e,t),Q.init(e,t)}),$r=h("ZodUUID",(e,t)=>{od.init(e,t),Q.init(e,t)}),zf=h("ZodURL",(e,t)=>{sd.init(e,t),Q.init(e,t)}),Zf=h("ZodEmoji",(e,t)=>{id.init(e,t),Q.init(e,t)}),Df=h("ZodNanoID",(e,t)=>{ud.init(e,t),Q.init(e,t)}),jf=h("ZodCUID",(e,t)=>{ld.init(e,t),Q.init(e,t)}),Uf=h("ZodCUID2",(e,t)=>{cd.init(e,t),Q.init(e,t)}),Ff=h("ZodULID",(e,t)=>{dd.init(e,t),Q.init(e,t)}),qf=h("ZodXID",(e,t)=>{pd.init(e,t),Q.init(e,t)}),Lf=h("ZodKSUID",(e,t)=>{fd.init(e,t),Q.init(e,t)}),Vf=h("ZodIPv4",(e,t)=>{yd.init(e,t),Q.init(e,t)}),Jf=h("ZodIPv6",(e,t)=>{_d.init(e,t),Q.init(e,t)}),Bf=h("ZodCIDRv4",(e,t)=>{bd.init(e,t),Q.init(e,t)}),Gf=h("ZodCIDRv6",(e,t)=>{wd.init(e,t),Q.init(e,t)}),Wf=h("ZodBase64",(e,t)=>{Id.init(e,t),Q.init(e,t)}),Hf=h("ZodBase64URL",(e,t)=>{Sd.init(e,t),Q.init(e,t)}),Yf=h("ZodE164",(e,t)=>{Ed.init(e,t),Q.init(e,t)}),Kf=h("ZodJWT",(e,t)=>{xd.init(e,t),Q.init(e,t)}),Ii=h("ZodNumber",(e,t)=>{qs.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,o,a)=>Ys(e,n,o),e.gt=(n,o)=>e.check(Xo(n,o)),e.gte=(n,o)=>e.check(fn(n,o)),e.min=(n,o)=>e.check(fn(n,o)),e.lt=(n,o)=>e.check(Ko(n,o)),e.lte=(n,o)=>e.check(pn(n,o)),e.max=(n,o)=>e.check(pn(n,o)),e.int=n=>e.check(ra(n)),e.safe=n=>e.check(ra(n)),e.positive=n=>e.check(Xo(0,n)),e.nonnegative=n=>e.check(fn(0,n)),e.negative=n=>e.check(Ko(0,n)),e.nonpositive=n=>e.check(pn(0,n)),e.multipleOf=(n,o)=>e.check(Qo(n,o)),e.step=(n,o)=>e.check(Qo(n,o)),e.finite=()=>e;const r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function Qe(e){return Op(Ii,e)}const Xf=h("ZodNumberFormat",(e,t)=>{Od.init(e,t),Ii.init(e,t)});function ra(e){return Ap(Xf,e)}const Qf=h("ZodBoolean",(e,t)=>{Ad.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ks(e,r,n)});function Vn(e){return Rp(Qf,e)}const em=h("ZodNull",(e,t)=>{Rd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Xs(e,r,n)});function tm(e){return $p(em,e)}const rm=h("ZodAny",(e,t)=>{$d.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ei()});function Xe(){return Cp(rm)}const nm=h("ZodUnknown",(e,t)=>{Cd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ti()});function nt(){return Np(nm)}const om=h("ZodNever",(e,t)=>{Nd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Qs(e,r,n)});function am(e){return Mp(om,e)}const sm=h("ZodArray",(e,t)=>{Md.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>si(e,r,n,o),e.element=t.element,e.min=(r,n)=>e.check(Pr(r,n)),e.nonempty=r=>e.check(Pr(1,r)),e.max=(r,n)=>e.check(Gs(r,n)),e.length=(r,n)=>e.check(Ws(r,n)),e.unwrap=()=>e.element});function pe(e,t){return Bp(sm,e,t)}const Ti=h("ZodObject",(e,t)=>{zd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ii(e,r,n,o),P(e,"shape",()=>t.shape),e.keyof=()=>en(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:nt()}),e.loose=()=>e.clone({...e._zod.def,catchall:nt()}),e.strict=()=>e.clone({...e._zod.def,catchall:am()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>ec(e,r),e.safeExtend=r=>tc(e,r),e.merge=r=>rc(e,r),e.pick=r=>Xl(e,r),e.omit=r=>Ql(e,r),e.partial=(...r)=>nc(Ei,e,r[0]),e.required=(...r)=>oc(ki,e,r[0])});function k(e,t){const r={type:"object",shape:e??{},...I(t)};return new Ti(r)}function Sy(e,t){return new Ti({type:"object",shape:e,catchall:nt(),...I(t)})}const Si=h("ZodUnion",(e,t)=>{Js.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ui(e,r,n,o),e.options=t.options});function le(e,t){return new Si({type:"union",options:e,...I(t)})}const im=h("ZodDiscriminatedUnion",(e,t)=>{Si.init(e,t),Zd.init(e,t)});function um(e,t,r){return new im({type:"union",options:t,discriminator:e,...I(r)})}const lm=h("ZodIntersection",(e,t)=>{Dd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>li(e,r,n,o)});function cm(e,t){return new lm({type:"intersection",left:e,right:t})}const dm=h("ZodTuple",(e,t)=>{jd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ci(e,r,n,o),e.rest=r=>e.clone({...e._zod.def,rest:r})});function Ey(e,t,r){const n=t instanceof F,o=n?r:t,a=n?t:null;return new dm({type:"tuple",items:e,rest:a,...I(o)})}const pm=h("ZodRecord",(e,t)=>{Ud.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>di(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function ot(e,t,r){return new pm({type:"record",keyType:e,valueType:t,...I(r)})}const xn=h("ZodEnum",(e,t)=>{Fd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,o,a)=>ri(e,n,o),e.enum=t.entries,e.options=Object.values(t.entries);const r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{const a={};for(const s of n)if(r.has(s))a[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new xn({...t,checks:[],...I(o),entries:a})},e.exclude=(n,o)=>{const a={...t.entries};for(const s of n)if(r.has(s))delete a[s];else throw new Error(`Key ${s} not found in enum`);return new xn({...t,checks:[],...I(o),entries:a})}});function en(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new xn({type:"enum",entries:r,...I(t)})}const fm=h("ZodLiteral",(e,t)=>{qd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ni(e,r,n),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function D(e,t){return new fm({type:"literal",values:Array.isArray(e)?e:[e],...I(t)})}const mm=h("ZodTransform",(e,t)=>{Ld.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ai(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new ks(e.constructor.name);r.addIssue=a=>{if(typeof a=="string")r.issues.push(sr(a,r.value,t));else{const s=a;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(sr(s))}};const o=t.transform(r.value,r);return o instanceof Promise?o.then(a=>(r.value=a,r)):(r.value=o,r)}});function hm(e){return new mm({type:"transform",transform:e})}const Ei=h("ZodOptional",(e,t)=>{Bs.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ln(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function na(e){return new Ei({type:"optional",innerType:e})}const vm=h("ZodExactOptional",(e,t)=>{Vd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ln(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function gm(e){return new vm({type:"optional",innerType:e})}const ym=h("ZodNullable",(e,t)=>{Jd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>pi(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function oa(e){return new ym({type:"nullable",innerType:e})}const _m=h("ZodDefault",(e,t)=>{Bd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>mi(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function bm(e,t){return new _m({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Rs(t)}})}const wm=h("ZodPrefault",(e,t)=>{Gd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hi(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Im(e,t){return new wm({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Rs(t)}})}const ki=h("ZodNonOptional",(e,t)=>{Wd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>fi(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Tm(e,t){return new ki({type:"nonoptional",innerType:e,...I(t)})}const Sm=h("ZodCatch",(e,t)=>{Hd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>vi(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Em(e,t){return new Sm({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const km=h("ZodPipe",(e,t)=>{Yd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gi(e,r,n,o),e.in=t.in,e.out=t.out});function aa(e,t){return new km({type:"pipe",in:e,out:t})}const xm=h("ZodReadonly",(e,t)=>{Kd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>yi(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Om(e){return new xm({type:"readonly",innerType:e})}const Am=h("ZodLazy",(e,t)=>{Xd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_i(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function Rm(e){return new Am({type:"lazy",getter:e})}const Jn=h("ZodCustom",(e,t)=>{Qd.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,n,o)=>oi(e,r)});function $m(e,t){return Gp(Jn,e??(()=>!0),t)}function Cm(e,t={}){return Wp(Jn,e,t)}function Nm(e){return Hp(e)}function Ur(e,t={}){const r=new Jn({type:"custom",check:"custom",fn:n=>n instanceof e,abort:!0,...I(t)});return r._zod.bag.Class=e,r._zod.check=n=>{n.value instanceof e||n.issues.push({code:"invalid_type",expected:e.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var ir;(function(e){e.assertEqual=o=>{};function t(o){}e.assertIs=t;function r(o){throw new Error}e.assertNever=r,e.arrayToEnum=o=>{const a={};for(const s of o)a[s]=s;return a},e.getValidEnumValues=o=>{const a=e.objectKeys(o).filter(i=>typeof o[o[i]]!="number"),s={};for(const i of a)s[i]=o[i];return e.objectValues(s)},e.objectValues=o=>e.objectKeys(o).map(function(a){return o[a]}),e.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{const a=[];for(const s in o)Object.prototype.hasOwnProperty.call(o,s)&&a.push(s);return a},e.find=(o,a)=>{for(const s of o)if(a(s))return s},e.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,a=" | "){return o.map(s=>typeof s=="string"?`'${s}'`:s).join(a)}e.joinValues=n,e.jsonStringifyReplacer=(o,a)=>typeof a=="bigint"?a.toString():a})(ir||(ir={}));var sa;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(sa||(sa={}));ir.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);ir.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Fr extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){const r=t||function(a){return a.message},n={_errors:[]},o=a=>{for(const s of a.issues)if(s.code==="invalid_union")s.unionErrors.map(o);else if(s.code==="invalid_return_type")o(s.returnTypeError);else if(s.code==="invalid_arguments")o(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let i=n,u=0;for(;u<s.path.length;){const l=s.path[u];u===s.path.length-1?(i[l]=i[l]||{_errors:[]},i[l]._errors.push(r(s))):i[l]=i[l]||{_errors:[]},i=i[l],u++}}};return o(this),n}static assert(t){if(!(t instanceof Fr))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ir.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){const r=Object.create(null),n=[];for(const o of this.issues)if(o.path.length>0){const a=o.path[0];r[a]=r[a]||[],r[a].push(t(o))}else n.push(t(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}}Fr.create=e=>new Fr(e);var ia;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(ia||(ia={}));var O;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(O||(O={}));class ua extends Error{constructor(t,r){super(t),this.name="ParseError",this.type=r.type,this.field=r.field,this.value=r.value,this.line=r.line}}function mn(e){}function Mm(e){if(typeof e=="function")throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");const{onEvent:t=mn,onError:r=mn,onRetry:n=mn,onComment:o}=e;let a="",s=!0,i,u="",l="";function c(v){const y=s?v.replace(/^\xEF\xBB\xBF/,""):v,[z,$]=Pm(`${a}${y}`);for(const f of z)p(f);a=$,s=!1}function p(v){if(v===""){m();return}if(v.startsWith(":")){o&&o(v.slice(v.startsWith(": ")?2:1));return}const y=v.indexOf(":");if(y!==-1){const z=v.slice(0,y),$=v[y+1]===" "?2:1,f=v.slice(y+$);d(z,f,v);return}d(v,"",v)}function d(v,y,z){switch(v){case"event":l=y;break;case"data":u=`${u}${y}
42
+ `;break;case"id":i=y.includes("\0")?void 0:y;break;case"retry":/^\d+$/.test(y)?n(parseInt(y,10)):r(new ua(`Invalid \`retry\` value: "${y}"`,{type:"invalid-retry",value:y,line:z}));break;default:r(new ua(`Unknown field "${v.length>20?`${v.slice(0,20)}…`:v}"`,{type:"unknown-field",field:v,value:y,line:z}));break}}function m(){u.length>0&&t({id:i,event:l||void 0,data:u.endsWith(`
43
+ `)?u.slice(0,-1):u}),i=void 0,u="",l=""}function _(v={}){a&&v.consume&&p(a),s=!0,i=void 0,u="",l="",a=""}return{feed:c,reset:_}}function Pm(e){const t=[];let r="",n=0;for(;n<e.length;){const o=e.indexOf("\r",n),a=e.indexOf(`
44
+ `,n);let s=-1;if(o!==-1&&a!==-1?s=Math.min(o,a):o!==-1?o===e.length-1?s=-1:s=o:a!==-1&&(s=a),s===-1){r=e.slice(n);break}else{const i=e.slice(n,s);t.push(i),n=s+1,e[n-1]==="\r"&&e[n]===`
45
+ `&&n++}}return[t,r]}class zm extends TransformStream{constructor({onError:t,onRetry:r,onComment:n}={}){let o;super({start(a){o=Mm({onEvent:s=>{a.enqueue(s)},onError(s){t==="terminate"?a.error(s):typeof t=="function"&&t(s)},onRetry:r,onComment:n})},transform(a){o.feed(a)}})}}var xi={};function qr(...e){return e.reduce((t,r)=>({...t,...r??{}}),{})}function ky({tools:e=[],providerToolNames:t}){const r={},n={};for(const o of e)if(o.type==="provider"&&o.id in t){const a=t[o.id];r[o.name]=a,n[a]=o.name}return{toProviderToolName:o=>{var a;return(a=r[o])!=null?a:o},toCustomToolName:o=>{var a;return(a=n[o])!=null?a:o}}}async function Zm(e,t){if(e==null)return Promise.resolve();const r=t==null?void 0:t.abortSignal;return new Promise((n,o)=>{if(r!=null&&r.aborted){o(la());return}const a=setTimeout(()=>{s(),n()},e),s=()=>{clearTimeout(a),r==null||r.removeEventListener("abort",i)},i=()=>{s(),o(la())};r==null||r.addEventListener("abort",i)})}function la(){return new DOMException("Delay was aborted","AbortError")}var Kt=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this.status.type==="resolved"?e(this.status.value):this.status.type==="rejected"&&t(this.status.error),this._resolve=e,this._reject=t}),this._promise)}resolve(e){var t;this.status={type:"resolved",value:e},this._promise&&((t=this._resolve)==null||t.call(this,e))}reject(e){var t;this.status={type:"rejected",error:e},this._promise&&((t=this._reject)==null||t.call(this,e))}isResolved(){return this.status.type==="resolved"}isRejected(){return this.status.type==="rejected"}isPending(){return this.status.type==="pending"}};function Ut(e){return Object.fromEntries([...e.headers])}var{btoa:Dm,atob:jm}=globalThis;function Bn(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),r=jm(t);return Uint8Array.from(r,n=>n.codePointAt(0))}function ur(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return Dm(t)}function xy(e){return e instanceof Uint8Array?ur(e):e}function Oy(e,t={}){const{useArrayBrackets:r=!0}=t,n=new FormData;for(const[o,a]of Object.entries(e))if(a!=null){if(Array.isArray(a)){if(a.length===1){n.append(o,a[0]);continue}const s=r?`${o}[]`:o;for(const i of a)n.append(s,i);continue}n.append(o,a)}return n}var Oi="AI_DownloadError",Ai=`vercel.ai.error.${Oi}`,Um=Symbol.for(Ai),ca,da,bt=class extends(da=T,ca=Um,da){constructor({url:e,statusCode:t,statusText:r,cause:n,message:o=n==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${n}`}){super({name:Oi,message:o,cause:n}),this[ca]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return T.hasMarker(e,Ai)}};async function Ay(e){try{const t=await fetch(e);if(!t.ok)throw new bt({url:e,statusCode:t.status,statusText:t.statusText});return await t.blob()}catch(t){throw bt.isInstance(t)?t:new bt({url:e,cause:t})}}var Ft=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:n="-"}={})=>{const o=()=>{const a=r.length,s=new Array(t);for(let i=0;i<t;i++)s[i]=r[Math.random()*a|0];return s.join("")};if(e==null)return o;if(r.includes(n))throw new us({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${o()}`},Fm=Ft();function Gn(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}function It(e){return(e instanceof Error||e instanceof DOMException)&&(e.name==="AbortError"||e.name==="ResponseAborted"||e.name==="TimeoutError")}var qm=["fetch failed","failed to fetch"];function Ri({error:e,url:t,requestBodyValues:r}){if(It(e))return e;if(e instanceof TypeError&&qm.includes(e.message.toLowerCase())){const n=e.cause;if(n!=null)return new ue({message:`Cannot connect to API: ${n.message}`,cause:n,url:t,requestBodyValues:r,isRetryable:!0})}return e}function Wn(e=globalThis){var t,r,n;return e.window?"runtime/browser":(t=e.navigator)!=null&&t.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:(n=(r=e.process)==null?void 0:r.versions)!=null&&n.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function Lm(e){if(e==null)return{};const t={};if(e instanceof Headers)e.forEach((r,n)=>{t[n.toLowerCase()]=r});else{Array.isArray(e)||(e=Object.entries(e));for(const[r,n]of e)n!=null&&(t[r.toLowerCase()]=n)}return t}function gr(e,...t){const r=new Headers(Lm(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}var $i="4.0.9",Vm=()=>globalThis.fetch,pa=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:n,abortSignal:o,fetch:a=Vm()})=>{try{const s=await a(e,{method:"GET",headers:gr(t,`ai-sdk/provider-utils/${$i}`,Wn()),signal:o}),i=Ut(s);if(!s.ok){let u;try{u=await n({response:s,url:e,requestBodyValues:{}})}catch(l){throw It(l)||ue.isInstance(l)?l:new ue({message:"Failed to process error response",cause:l,statusCode:s.status,url:e,responseHeaders:i,requestBodyValues:{}})}throw u.value}try{return await r({response:s,url:e,requestBodyValues:{}})}catch(u){throw u instanceof Error&&(It(u)||ue.isInstance(u))?u:new ue({message:"Failed to process successful response",cause:u,statusCode:s.status,url:e,responseHeaders:i,requestBodyValues:{}})}}catch(s){throw Ri({error:s,url:e,requestBodyValues:{}})}};function Ry(e){return e!=null}function Jm({mediaType:e,url:t,supportedUrls:r}){return t=t.toLowerCase(),e=e.toLowerCase(),Object.entries(r).map(([n,o])=>{const a=n.toLowerCase();return a==="*"||a==="*/*"?{mediaTypePrefix:"",regexes:o}:{mediaTypePrefix:a.replace(/\*/,""),regexes:o}}).filter(({mediaTypePrefix:n})=>e.startsWith(n)).flatMap(({regexes:n})=>n).some(n=>n.test(t))}function $y({apiKey:e,environmentVariableName:t,apiKeyParameterName:r="apiKey",description:n}){if(typeof e=="string")return e;if(e!=null)throw new er({message:`${n} API key must be a string.`});if(typeof process>"u")throw new er({message:`${n} API key is missing. Pass it using the '${r}' parameter. Environment variables is not supported in this environment.`});if(e=xi[t],e==null)throw new er({message:`${n} API key is missing. Pass it using the '${r}' parameter or the ${t} environment variable.`});if(typeof e!="string")throw new er({message:`${n} API key must be a string. The value of the ${t} environment variable is not a string.`});return e}function Nr({settingValue:e,environmentVariableName:t}){if(typeof e=="string")return e;if(!(e!=null||typeof process>"u")&&(e=xi[t],!(e==null||typeof e!="string")))return e}function Cy(e){var t;const[r,n=""]=e.toLowerCase().split("/");return(t={mpeg:"mp3","x-wav":"wav",opus:"ogg",mp4:"m4a","x-m4a":"m4a"}[n])!=null?t:n}var Bm=/"__proto__"\s*:/,Gm=/"constructor"\s*:/;function fa(e){const t=JSON.parse(e);return t===null||typeof t!="object"||Bm.test(e)===!1&&Gm.test(e)===!1?t:Wm(t)}function Wm(e){let t=[e];for(;t.length;){const r=t;t=[];for(const n of r){if(Object.prototype.hasOwnProperty.call(n,"__proto__"))throw new SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(n,"constructor")&&Object.prototype.hasOwnProperty.call(n.constructor,"prototype"))throw new SyntaxError("Object contains forbidden prototype property");for(const o in n){const a=n[o];a&&typeof a=="object"&&t.push(a)}}}return e}function Hn(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return fa(e)}try{return fa(e)}finally{Error.stackTraceLimit=t}}function Yn(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;const{properties:r}=e;if(r!=null)for(const n of Object.keys(r))r[n]=ht(r[n])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(ht):ht(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(ht)),e.allOf!=null&&(e.allOf=e.allOf.map(ht)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(ht));const{definitions:t}=e;if(t!=null)for(const r of Object.keys(t))t[r]=ht(t[r]);return e}function ht(e){return typeof e=="boolean"?e:Yn(e)}var Hm=Symbol("Let zodToJsonSchema decide on which parser to use"),ma={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Ym=e=>typeof e=="string"?{...ma,name:e}:{...ma,...e};function Ie(){return{}}function Km(e,t){var r,n,o;const a={type:"array"};return(r=e.type)!=null&&r._def&&((o=(n=e.type)==null?void 0:n._def)==null?void 0:o.typeName)!==O.ZodAny&&(a.items=j(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&(a.minItems=e.minLength.value),e.maxLength&&(a.maxItems=e.maxLength.value),e.exactLength&&(a.minItems=e.exactLength.value,a.maxItems=e.exactLength.value),a}function Xm(e){const t={type:"integer",format:"int64"};if(!e.checks)return t;for(const r of e.checks)switch(r.kind){case"min":r.inclusive?t.minimum=r.value:t.exclusiveMinimum=r.value;break;case"max":r.inclusive?t.maximum=r.value:t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function Qm(){return{type:"boolean"}}function Ci(e,t){return j(e.type._def,t)}var eh=(e,t)=>j(e.innerType._def,t);function Ni(e,t,r){const n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,a)=>Ni(e,t,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return th(e)}}var th=e=>{const t={type:"integer",format:"unix-time"};for(const r of e.checks)switch(r.kind){case"min":t.minimum=r.value;break;case"max":t.maximum=r.value;break}return t};function rh(e,t){return{...j(e.innerType._def,t),default:e.defaultValue()}}function nh(e,t){return t.effectStrategy==="input"?j(e.schema._def,t):Ie()}function oh(e){return{type:"string",enum:Array.from(e.values)}}var ah=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function sh(e,t){const r=[j(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),j(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(o=>!!o),n=[];return r.forEach(o=>{if(ah(o))n.push(...o.allOf);else{let a=o;if("additionalProperties"in o&&o.additionalProperties===!1){const{additionalProperties:s,...i}=o;a=i}n.push(a)}}),n.length?{allOf:n}:void 0}function ih(e){const t=typeof e.value;return t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string"?{type:Array.isArray(e.value)?"array":"object"}:{type:t==="bigint"?"integer":t,const:e.value}}var hn=void 0,Ae={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(hn===void 0&&(hn=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),hn),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Mi(e,t){const r={type:"string"};if(e.checks)for(const n of e.checks)switch(n.kind){case"min":r.minLength=typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value;break;case"max":r.maxLength=typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value;break;case"email":switch(t.emailStrategy){case"format:email":Re(r,"email",n.message,t);break;case"format:idn-email":Re(r,"idn-email",n.message,t);break;case"pattern:zod":ve(r,Ae.email,n.message,t);break}break;case"url":Re(r,"uri",n.message,t);break;case"uuid":Re(r,"uuid",n.message,t);break;case"regex":ve(r,n.regex,n.message,t);break;case"cuid":ve(r,Ae.cuid,n.message,t);break;case"cuid2":ve(r,Ae.cuid2,n.message,t);break;case"startsWith":ve(r,RegExp(`^${vn(n.value,t)}`),n.message,t);break;case"endsWith":ve(r,RegExp(`${vn(n.value,t)}$`),n.message,t);break;case"datetime":Re(r,"date-time",n.message,t);break;case"date":Re(r,"date",n.message,t);break;case"time":Re(r,"time",n.message,t);break;case"duration":Re(r,"duration",n.message,t);break;case"length":r.minLength=typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,r.maxLength=typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value;break;case"includes":{ve(r,RegExp(vn(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&Re(r,"ipv4",n.message,t),n.version!=="v4"&&Re(r,"ipv6",n.message,t);break}case"base64url":ve(r,Ae.base64url,n.message,t);break;case"jwt":ve(r,Ae.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&ve(r,Ae.ipv4Cidr,n.message,t),n.version!=="v4"&&ve(r,Ae.ipv6Cidr,n.message,t);break}case"emoji":ve(r,Ae.emoji(),n.message,t);break;case"ulid":{ve(r,Ae.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Re(r,"binary",n.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{ve(r,Ae.base64,n.message,t);break}}break}case"nanoid":ve(r,Ae.nanoid,n.message,t)}return r}function vn(e,t){return t.patternStrategy==="escape"?lh(e):e}var uh=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function lh(e){let t="";for(let r=0;r<e.length;r++)uh.has(e[r])||(t+="\\"),t+=e[r];return t}function Re(e,t,r,n){var o;e.format||(o=e.anyOf)!=null&&o.some(a=>a.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):e.format=t}function ve(e,t,r,n){var o;e.pattern||(o=e.allOf)!=null&&o.some(a=>a.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:ha(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=ha(t,n)}function ha(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;const n={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},o=n.i?e.source.toLowerCase():e.source;let a="",s=!1,i=!1,u=!1;for(let l=0;l<o.length;l++){if(s){a+=o[l],s=!1;continue}if(n.i){if(i){if(o[l].match(/[a-z]/)){u?(a+=o[l],a+=`${o[l-2]}-${o[l]}`.toUpperCase(),u=!1):o[l+1]==="-"&&((r=o[l+2])!=null&&r.match(/[a-z]/))?(a+=o[l],u=!0):a+=`${o[l]}${o[l].toUpperCase()}`;continue}}else if(o[l].match(/[a-z]/)){a+=`[${o[l]}${o[l].toUpperCase()}]`;continue}}if(n.m){if(o[l]==="^"){a+=`(^|(?<=[\r
46
+ ]))`;continue}else if(o[l]==="$"){a+=`($|(?=[\r
47
+ ]))`;continue}}if(n.s&&o[l]==="."){a+=i?`${o[l]}\r
48
+ `:`[${o[l]}\r
49
+ ]`;continue}a+=o[l],o[l]==="\\"?s=!0:i&&o[l]==="]"?i=!1:!i&&o[l]==="["&&(i=!0)}try{new RegExp(a)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return a}function Pi(e,t){var r,n,o,a,s,i;const u={type:"object",additionalProperties:(r=j(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((n=e.keyType)==null?void 0:n._def.typeName)===O.ZodString&&((o=e.keyType._def.checks)!=null&&o.length)){const{type:l,...c}=Mi(e.keyType._def,t);return{...u,propertyNames:c}}else{if(((a=e.keyType)==null?void 0:a._def.typeName)===O.ZodEnum)return{...u,propertyNames:{enum:e.keyType._def.values}};if(((s=e.keyType)==null?void 0:s._def.typeName)===O.ZodBranded&&e.keyType._def.type._def.typeName===O.ZodString&&((i=e.keyType._def.type._def.checks)!=null&&i.length)){const{type:l,...c}=Ci(e.keyType._def,t);return{...u,propertyNames:c}}}return u}function ch(e,t){if(t.mapStrategy==="record")return Pi(e,t);const r=j(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||Ie(),n=j(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||Ie();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function dh(e){const t=e.values,n=Object.keys(e.values).filter(a=>typeof t[t[a]]!="number").map(a=>t[a]),o=Array.from(new Set(n.map(a=>typeof a)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function ph(){return{not:Ie()}}function fh(){return{type:"null"}}var On={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function mh(e,t){const r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in On&&(!n._def.checks||!n._def.checks.length))){const n=r.reduce((o,a)=>{const s=On[a._def.typeName];return s&&!o.includes(s)?[...o,s]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){const n=r.reduce((o,a)=>{const s=typeof a._def.value;switch(s){case"string":case"number":case"boolean":return[...o,s];case"bigint":return[...o,"integer"];case"object":if(a._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){const o=n.filter((a,s,i)=>i.indexOf(a)===s);return{type:o.length>1?o:o[0],enum:r.reduce((a,s)=>a.includes(s._def.value)?a:[...a,s._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(a=>!n.includes(a))],[])};return hh(e,t)}var hh=(e,t)=>{const r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,o)=>j(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!t.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function vh(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[On[e.innerType._def.typeName],"null"]};const r=j(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function gh(e){const t={type:"number"};if(!e.checks)return t;for(const r of e.checks)switch(r.kind){case"int":t.type="integer";break;case"min":r.inclusive?t.minimum=r.value:t.exclusiveMinimum=r.value;break;case"max":r.inclusive?t.maximum=r.value:t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function yh(e,t){const r={type:"object",properties:{}},n=[],o=e.shape();for(const s in o){let i=o[s];if(i===void 0||i._def===void 0)continue;const u=bh(i),l=j(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});l!==void 0&&(r.properties[s]=l,u||n.push(s))}n.length&&(r.required=n);const a=_h(e,t);return a!==void 0&&(r.additionalProperties=a),r}function _h(e,t){if(e.catchall._def.typeName!=="ZodNever")return j(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function bh(e){try{return e.isOptional()}catch{return!0}}var wh=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return j(e.innerType._def,t);const n=j(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:Ie()},n]}:Ie()},Ih=(e,t)=>{if(t.pipeStrategy==="input")return j(e.in._def,t);if(t.pipeStrategy==="output")return j(e.out._def,t);const r=j(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=j(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function Th(e,t){return j(e.type._def,t)}function Sh(e,t){const n={type:"array",uniqueItems:!0,items:j(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}function Eh(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>j(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:j(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>j(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function kh(){return{not:Ie()}}function xh(){return Ie()}var Oh=(e,t)=>j(e.innerType._def,t),Ah=(e,t,r)=>{switch(t){case O.ZodString:return Mi(e,r);case O.ZodNumber:return gh(e);case O.ZodObject:return yh(e,r);case O.ZodBigInt:return Xm(e);case O.ZodBoolean:return Qm();case O.ZodDate:return Ni(e,r);case O.ZodUndefined:return kh();case O.ZodNull:return fh();case O.ZodArray:return Km(e,r);case O.ZodUnion:case O.ZodDiscriminatedUnion:return mh(e,r);case O.ZodIntersection:return sh(e,r);case O.ZodTuple:return Eh(e,r);case O.ZodRecord:return Pi(e,r);case O.ZodLiteral:return ih(e);case O.ZodEnum:return oh(e);case O.ZodNativeEnum:return dh(e);case O.ZodNullable:return vh(e,r);case O.ZodOptional:return wh(e,r);case O.ZodMap:return ch(e,r);case O.ZodSet:return Sh(e,r);case O.ZodLazy:return()=>e.getter()._def;case O.ZodPromise:return Th(e,r);case O.ZodNaN:case O.ZodNever:return ph();case O.ZodEffects:return nh(e,r);case O.ZodAny:return Ie();case O.ZodUnknown:return xh();case O.ZodDefault:return rh(e,r);case O.ZodBranded:return Ci(e,r);case O.ZodReadonly:return Oh(e,r);case O.ZodCatch:return eh(e,r);case O.ZodPipeline:return Ih(e,r);case O.ZodFunction:case O.ZodVoid:case O.ZodSymbol:return;default:return(n=>{})()}},Rh=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};function j(e,t,r=!1){var n;const o=t.seen.get(e);if(t.override){const u=(n=t.override)==null?void 0:n.call(t,e,t,o,r);if(u!==Hm)return u}if(o&&!r){const u=$h(o,t);if(u!==void 0)return u}const a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);const s=Ah(e,e.typeName,t),i=typeof s=="function"?j(s(),t):s;if(i&&Ch(e,t,i),t.postProcess){const u=t.postProcess(i,e,t);return a.jsonSchema=i,u}return a.jsonSchema=i,i}var $h=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Rh(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),Ie()):t.$refStrategy==="seen"?Ie():void 0}},Ch=(e,t,r)=>(e.description&&(r.description=e.description),r),Nh=e=>{const t=Ym(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}},Mh=(e,t)=>{var r;const n=Nh(t);let o=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((l,[c,p])=>{var d;return{...l,[c]:(d=j(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,c]},!0))!=null?d:Ie()}},{}):void 0;const a=typeof t=="string"?t:(t==null?void 0:t.nameStrategy)==="title"||t==null?void 0:t.name,s=(r=j(e._def,a===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,a]},!1))!=null?r:Ie(),i=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;i!==void 0&&(s.title=i);const u=a===void 0?o?{...s,[n.definitionPath]:o}:s:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,a].join("/"),[n.definitionPath]:{...o,[a]:s}};return u.$schema="http://json-schema.org/draft-07/schema#",u},An=Symbol.for("vercel.ai.schema");function ut(e){let t;return()=>(t==null&&(t=e()),t)}function yr(e,{validate:t}={}){return{[An]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function Ph(e){return typeof e=="object"&&e!==null&&An in e&&e[An]===!0&&"jsonSchema"in e&&"validate"in e}function St(e){return e==null?yr({properties:{},additionalProperties:!1}):Ph(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?De(e):zh(e):e()}function zh(e){return yr(()=>Yn(e["~standard"].jsonSchema.input({target:"draft-07"})),{validate:async t=>{const r=await e["~standard"].validate(t);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new et({value:t,cause:r.issues})}}})}function Zh(e,t){var r;const n=(r=void 0)!=null?r:!1;return yr(()=>Mh(e,{$refStrategy:n?"root":"none"}),{validate:async o=>{const a=await e.safeParseAsync(o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Dh(e,t){var r;const n=(r=void 0)!=null?r:!1;return yr(()=>Yn(ff(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async o=>{const a=await bi(e,o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function jh(e){return"_zod"in e}function De(e,t){return jh(e)?Dh(e):Zh(e)}async function Rn({value:e,schema:t}){const r=await Ne({value:e,schema:t});if(!r.success)throw et.wrap({value:e,cause:r.error});return r.value}async function Ne({value:e,schema:t}){const r=St(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};const n=await r.validate(e);return n.success?{success:!0,value:n.value,rawValue:e}:{success:!1,error:et.wrap({value:e,cause:n.error}),rawValue:e}}catch(n){return{success:!1,error:et.wrap({value:e,cause:n}),rawValue:e}}}async function Uh({text:e,schema:t}){try{const r=Hn(e);return t==null?r:Rn({value:r,schema:t})}catch(r){throw or.isInstance(r)||et.isInstance(r)?r:new or({text:e,cause:r})}}async function Me({text:e,schema:t}){try{const r=Hn(e);return t==null?{success:!0,value:r,rawValue:r}:await Ne({value:r,schema:t})}catch(r){return{success:!1,error:or.isInstance(r)?r:new or({text:e,cause:r}),rawValue:void 0}}}function Ny(e){try{return Hn(e),!0}catch{return!1}}function zi({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new zm).pipeThrough(new TransformStream({async transform({data:r},n){r!=="[DONE]"&&n.enqueue(await Me({text:r,schema:t}))}}))}async function My({provider:e,providerOptions:t,schema:r}){if((t==null?void 0:t[e])==null)return;const n=await Ne({value:t[e],schema:r});if(!n.success)throw new us({argument:"providerOptions",message:`invalid ${e} provider options`,cause:n.error});return n.value}var Fh=()=>globalThis.fetch,Lr=async({url:e,headers:t,body:r,failedResponseHandler:n,successfulResponseHandler:o,abortSignal:a,fetch:s})=>Zi({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:n,successfulResponseHandler:o,abortSignal:a,fetch:s}),Py=async({url:e,headers:t,formData:r,failedResponseHandler:n,successfulResponseHandler:o,abortSignal:a,fetch:s})=>Zi({url:e,headers:t,body:{content:r,values:Object.fromEntries(r.entries())},failedResponseHandler:n,successfulResponseHandler:o,abortSignal:a,fetch:s}),Zi=async({url:e,headers:t={},body:r,successfulResponseHandler:n,failedResponseHandler:o,abortSignal:a,fetch:s=Fh()})=>{try{const i=await s(e,{method:"POST",headers:gr(t,`ai-sdk/provider-utils/${$i}`,Wn()),body:r.content,signal:a}),u=Ut(i);if(!i.ok){let l;try{l=await o({response:i,url:e,requestBodyValues:r.values})}catch(c){throw It(c)||ue.isInstance(c)?c:new ue({message:"Failed to process error response",cause:c,statusCode:i.status,url:e,responseHeaders:u,requestBodyValues:r.values})}throw l.value}try{return await n({response:i,url:e,requestBodyValues:r.values})}catch(l){throw l instanceof Error&&(It(l)||ue.isInstance(l))?l:new ue({message:"Failed to process successful response",cause:l,statusCode:i.status,url:e,responseHeaders:u,requestBodyValues:r.values})}}catch(i){throw Ri({error:i,url:e,requestBodyValues:r.values})}};function qh(e){return e}function zy({id:e,inputSchema:t}){return({execute:r,outputSchema:n,needsApproval:o,toModelOutput:a,onInputStart:s,onInputDelta:i,onInputAvailable:u,...l})=>({type:"provider",id:e,args:l,inputSchema:t,outputSchema:n,execute:r,needsApproval:o,toModelOutput:a,onInputStart:s,onInputDelta:i,onInputAvailable:u})}function Lh({id:e,inputSchema:t,outputSchema:r,supportsDeferredResults:n}){return({execute:o,needsApproval:a,toModelOutput:s,onInputStart:i,onInputDelta:u,onInputAvailable:l,...c})=>({type:"provider",id:e,args:c,inputSchema:t,outputSchema:r,execute:o,needsApproval:a,toModelOutput:s,onInputStart:i,onInputDelta:u,onInputAvailable:l,supportsDeferredResults:n})}async function ke(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var Zt=({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:n,url:o,requestBodyValues:a})=>{const s=await n.text(),i=Ut(n);if(s.trim()==="")return{responseHeaders:i,value:new ue({message:n.statusText,url:o,requestBodyValues:a,statusCode:n.status,responseHeaders:i,responseBody:s,isRetryable:r==null?void 0:r(n)})};try{const u=await Uh({text:s,schema:e});return{responseHeaders:i,value:new ue({message:t(u),url:o,requestBodyValues:a,statusCode:n.status,responseHeaders:i,responseBody:s,data:u,isRetryable:r==null?void 0:r(n,u)})}}catch{return{responseHeaders:i,value:new ue({message:n.statusText,url:o,requestBodyValues:a,statusCode:n.status,responseHeaders:i,responseBody:s,isRetryable:r==null?void 0:r(n)})}}},Vh=e=>async({response:t})=>{const r=Ut(t);if(t.body==null)throw new as({});return{responseHeaders:r,value:zi({stream:t.body,schema:e})}},lr=e=>async({response:t,url:r,requestBodyValues:n})=>{const o=await t.text(),a=await Me({text:o,schema:e}),s=Ut(t);if(!a.success)throw new ue({message:"Invalid JSON response",cause:a.error,statusCode:t.status,responseHeaders:s,responseBody:o,url:r,requestBodyValues:n});return{responseHeaders:s,value:a.value,rawValue:a.rawValue}},Zy=()=>async({response:e,url:t,requestBodyValues:r})=>{const n=Ut(e);if(!e.body)throw new ue({message:"Response body is empty",url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:n,responseBody:void 0});try{const o=await e.arrayBuffer();return{responseHeaders:n,value:new Uint8Array(o)}}catch(o){throw new ue({message:"Failed to read response as array buffer",url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:n,responseBody:void 0,cause:o})}};function Jh(e){return e==null?void 0:e.replace(/\/$/,"")}function Bh(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}async function*Gh({execute:e,input:t,options:r}){const n=e(t,r);if(Bh(n)){let o;for await(const a of n)o=a,yield{type:"preliminary",output:a};yield{type:"final",output:o}}else yield{type:"final",output:await n}}var gn,va;function Wh(){if(va)return gn;va=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,o=(c,p)=>{for(var d in p)e(c,d,{get:p[d],enumerable:!0})},a=(c,p,d,m)=>{if(p&&typeof p=="object"||typeof p=="function")for(let _ of r(p))!n.call(c,_)&&_!==d&&e(c,_,{get:()=>p[_],enumerable:!(m=t(p,_))||m.enumerable});return c},s=c=>a(e({},"__esModule",{value:!0}),c),i={};o(i,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>l}),gn=s(i);const u=Symbol.for("@vercel/request-context");function l(){var p,d;return((d=(p=globalThis[u])==null?void 0:p.get)==null?void 0:d.call(p))??{}}return gn}var yn,ga;function Hh(){if(ga)return yn;ga=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,o=(p,d)=>{for(var m in d)e(p,m,{get:d[m],enumerable:!0})},a=(p,d,m,_)=>{if(d&&typeof d=="object"||typeof d=="function")for(let v of r(d))!n.call(p,v)&&v!==m&&e(p,v,{get:()=>d[v],enumerable:!(_=t(d,v))||_.enumerable});return p},s=p=>a(e({},"__esModule",{value:!0}),p),i={};o(i,{getContext:()=>u.getContext,getVercelOidcToken:()=>l,getVercelOidcTokenSync:()=>c}),yn=s(i);var u=Wh();async function l(){return""}function c(){return""}return yn}var Di=Hh(),Yh="vercel.ai.gateway.error",_n=Symbol.for(Yh),ya,_a,Te=class ji extends(_a=Error,ya=_n,_a){constructor({message:t,statusCode:r=500,cause:n,generationId:o}){super(o?`${t} [${o}]`:t),this[ya]=!0,this.statusCode=r,this.cause=n,this.generationId=o}static isInstance(t){return ji.hasMarker(t)}static hasMarker(t){return typeof t=="object"&&t!==null&&_n in t&&t[_n]===!0}},Ui="GatewayAuthenticationError",Kh=`vercel.ai.gateway.error.${Ui}`,ba=Symbol.for(Kh),wa,Ia,Kn=class Fi extends(Ia=Te,wa=ba,Ia){constructor({message:t="Authentication failed",statusCode:r=401,cause:n,generationId:o}={}){super({message:t,statusCode:r,cause:n,generationId:o}),this[wa]=!0,this.name=Ui,this.type="authentication_error"}static isInstance(t){return Te.hasMarker(t)&&ba in t}static createContextualError({apiKeyProvided:t,oidcTokenProvided:r,message:n="Authentication failed",statusCode:o=401,cause:a,generationId:s}){let i;return t?i=`AI Gateway authentication failed: Invalid API key.
50
+
51
+ Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
52
+
53
+ Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`:r?i=`AI Gateway authentication failed: Invalid OIDC token.
54
+
55
+ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.
56
+
57
+ Alternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys`:i=`AI Gateway authentication failed: No authentication provided.
58
+
59
+ Option 1 - API key:
60
+ Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
61
+ Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.
62
+
63
+ Option 2 - OIDC token:
64
+ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,new Fi({message:i,statusCode:o,cause:a,generationId:s})}},qi="GatewayInvalidRequestError",Xh=`vercel.ai.gateway.error.${qi}`,Ta=Symbol.for(Xh),Sa,Ea,Qh=class extends(Ea=Te,Sa=Ta,Ea){constructor({message:e="Invalid request",statusCode:t=400,cause:r,generationId:n}={}){super({message:e,statusCode:t,cause:r,generationId:n}),this[Sa]=!0,this.name=qi,this.type="invalid_request_error"}static isInstance(e){return Te.hasMarker(e)&&Ta in e}},Li="GatewayRateLimitError",ev=`vercel.ai.gateway.error.${Li}`,ka=Symbol.for(ev),xa,Oa,tv=class extends(Oa=Te,xa=ka,Oa){constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r,generationId:n}={}){super({message:e,statusCode:t,cause:r,generationId:n}),this[xa]=!0,this.name=Li,this.type="rate_limit_exceeded"}static isInstance(e){return Te.hasMarker(e)&&ka in e}},Vi="GatewayModelNotFoundError",rv=`vercel.ai.gateway.error.${Vi}`,Aa=Symbol.for(rv),nv=ut(()=>De(k({modelId:g()}))),Ra,$a,ov=class extends($a=Te,Ra=Aa,$a){constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:n,generationId:o}={}){super({message:e,statusCode:t,cause:n,generationId:o}),this[Ra]=!0,this.name=Vi,this.type="model_not_found",this.modelId=r}static isInstance(e){return Te.hasMarker(e)&&Aa in e}},Ji="GatewayInternalServerError",av=`vercel.ai.gateway.error.${Ji}`,Ca=Symbol.for(av),Na,Ma,Pa=class extends(Ma=Te,Na=Ca,Ma){constructor({message:e="Internal server error",statusCode:t=500,cause:r,generationId:n}={}){super({message:e,statusCode:t,cause:r,generationId:n}),this[Na]=!0,this.name=Ji,this.type="internal_server_error"}static isInstance(e){return Te.hasMarker(e)&&Ca in e}},Bi="GatewayResponseError",sv=`vercel.ai.gateway.error.${Bi}`,za=Symbol.for(sv),Za,Da,iv=class extends(Da=Te,Za=za,Da){constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:n,cause:o,generationId:a}={}){super({message:e,statusCode:t,cause:o,generationId:a}),this[Za]=!0,this.name=Bi,this.type="response_error",this.response=r,this.validationError=n}static isInstance(e){return Te.hasMarker(e)&&za in e}};async function ja({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:n,authMethod:o}){var a;const s=await Ne({value:e,schema:uv});if(!s.success){const p=typeof e=="object"&&e!==null&&"generationId"in e?e.generationId:void 0;return new iv({message:`Invalid error response format: ${r}`,statusCode:t,response:e,validationError:s.error,cause:n,generationId:p})}const i=s.value,u=i.error.type,l=i.error.message,c=(a=i.generationId)!=null?a:void 0;switch(u){case"authentication_error":return Kn.createContextualError({apiKeyProvided:o==="api-key",oidcTokenProvided:o==="oidc",statusCode:t,cause:n,generationId:c});case"invalid_request_error":return new Qh({message:l,statusCode:t,cause:n,generationId:c});case"rate_limit_exceeded":return new tv({message:l,statusCode:t,cause:n,generationId:c});case"model_not_found":{const p=await Ne({value:i.error.param,schema:nv});return new ov({message:l,statusCode:t,modelId:p.success?p.value.modelId:void 0,cause:n,generationId:c})}case"internal_server_error":return new Pa({message:l,statusCode:t,cause:n,generationId:c});default:return new Pa({message:l,statusCode:t,cause:n,generationId:c})}}var uv=ut(()=>De(k({error:k({message:g(),type:g().nullish(),param:nt().nullish(),code:le([g(),Qe()]).nullish()}),generationId:g().nullish()})));function at(e,t){var r;return Te.isInstance(e)?e:ue.isInstance(e)?ja({response:lv(e),statusCode:(r=e.statusCode)!=null?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t}):ja({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}function lv(e){if(e.data!==void 0)return e.data;if(e.responseBody!=null)try{return JSON.parse(e.responseBody)}catch{return e.responseBody}return{}}var Gi="ai-gateway-auth-method";async function Dt(e){const t=await Ne({value:e[Gi],schema:cv});return t.success?t.value:void 0}var cv=ut(()=>De(le([D("api-key"),D("oidc")]))),Ua=class{constructor(e){this.config=e}async getAvailableModels(){try{const{value:e}=await pa({url:`${this.config.baseURL}/config`,headers:await ke(this.config.headers()),successfulResponseHandler:lr(dv),failedResponseHandler:Zt({errorSchema:Xe(),errorToMessage:t=>t}),fetch:this.config.fetch});return e}catch(e){throw await at(e)}}async getCredits(){try{const e=new URL(this.config.baseURL),{value:t}=await pa({url:`${e.origin}/v1/credits`,headers:await ke(this.config.headers()),successfulResponseHandler:lr(pv),failedResponseHandler:Zt({errorSchema:Xe(),errorToMessage:r=>r}),fetch:this.config.fetch});return t}catch(e){throw await at(e)}}},dv=ut(()=>De(k({models:pe(k({id:g(),name:g(),description:g().nullish(),pricing:k({input:g(),output:g(),input_cache_read:g().nullish(),input_cache_write:g().nullish()}).transform(({input:e,output:t,input_cache_read:r,input_cache_write:n})=>({input:e,output:t,...r?{cachedInputTokens:r}:{},...n?{cacheCreationInputTokens:n}:{}})).nullish(),specification:k({specificationVersion:D("v3"),provider:g(),modelId:g()}),modelType:en(["language","embedding","image"]).nullish()}))}))),pv=ut(()=>De(k({balance:g(),total_used:g()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),fv=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(e){const{abortSignal:t,...r}=e;return{args:this.maybeEncodeFileParts(r),warnings:[]}}async doGenerate(e){const{args:t,warnings:r}=await this.getArgs(e),{abortSignal:n}=e,o=await ke(this.config.headers());try{const{responseHeaders:a,value:s,rawValue:i}=await Lr({url:this.getUrl(),headers:qr(o,e.headers,this.getModelConfigHeaders(this.modelId,!1),await ke(this.config.o11yHeaders)),body:t,successfulResponseHandler:lr(Xe()),failedResponseHandler:Zt({errorSchema:Xe(),errorToMessage:u=>u}),...n&&{abortSignal:n},fetch:this.config.fetch});return{...s,request:{body:t},response:{headers:a,body:i},warnings:r}}catch(a){throw await at(a,await Dt(o))}}async doStream(e){const{args:t,warnings:r}=await this.getArgs(e),{abortSignal:n}=e,o=await ke(this.config.headers());try{const{value:a,responseHeaders:s}=await Lr({url:this.getUrl(),headers:qr(o,e.headers,this.getModelConfigHeaders(this.modelId,!0),await ke(this.config.o11yHeaders)),body:t,successfulResponseHandler:Vh(Xe()),failedResponseHandler:Zt({errorSchema:Xe(),errorToMessage:i=>i}),...n&&{abortSignal:n},fetch:this.config.fetch});return{stream:a.pipeThrough(new TransformStream({start(i){r.length>0&&i.enqueue({type:"stream-start",warnings:r})},transform(i,u){if(i.success){const l=i.value;if(l.type==="raw"&&!e.includeRawChunks)return;l.type==="response-metadata"&&l.timestamp&&typeof l.timestamp=="string"&&(l.timestamp=new Date(l.timestamp)),u.enqueue(l)}else u.error(i.error)}})),request:{body:t},response:{headers:s}}}catch(a){throw await at(a,await Dt(o))}}isFilePart(e){return e&&typeof e=="object"&&"type"in e&&e.type==="file"}maybeEncodeFileParts(e){for(const t of e.prompt)for(const r of t.content)if(this.isFilePart(r)){const n=r;if(n.data instanceof Uint8Array){const o=Uint8Array.from(n.data),a=Buffer.from(o).toString("base64");n.data=new URL(`data:${n.mediaType||"application/octet-stream"};base64,${a}`)}}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"3","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}},mv=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:n}){var o;const a=await ke(this.config.headers());try{const{responseHeaders:s,value:i,rawValue:u}=await Lr({url:this.getUrl(),headers:qr(a,t??{},this.getModelConfigHeaders(),await ke(this.config.o11yHeaders)),body:{values:e,...n?{providerOptions:n}:{}},successfulResponseHandler:lr(hv),failedResponseHandler:Zt({errorSchema:Xe(),errorToMessage:l=>l}),...r&&{abortSignal:r},fetch:this.config.fetch});return{embeddings:i.embeddings,usage:(o=i.usage)!=null?o:void 0,providerMetadata:i.providerMetadata,response:{headers:s,body:u},warnings:[]}}catch(s){throw await at(s,await Dt(a))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"3","ai-model-id":this.modelId}}},hv=ut(()=>De(k({embeddings:pe(pe(Qe())),usage:k({tokens:Qe()}).nullish(),providerMetadata:ot(g(),ot(g(),nt())).optional()}))),vv=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:r,aspectRatio:n,seed:o,files:a,mask:s,providerOptions:i,headers:u,abortSignal:l}){var c;const p=await ke(this.config.headers());try{const{responseHeaders:d,value:m,rawValue:_}=await Lr({url:this.getUrl(),headers:qr(p,u??{},this.getModelConfigHeaders(),await ke(this.config.o11yHeaders)),body:{prompt:e,n:t,...r&&{size:r},...n&&{aspectRatio:n},...o&&{seed:o},...i&&{providerOptions:i},...a&&{files:a.map(v=>Fa(v))},...s&&{mask:Fa(s)}},successfulResponseHandler:lr(yv),failedResponseHandler:Zt({errorSchema:Xe(),errorToMessage:v=>v}),...l&&{abortSignal:l},fetch:this.config.fetch});return{images:m.images,warnings:(c=m.warnings)!=null?c:[],providerMetadata:m.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d}}}catch(d){throw at(d,await Dt(p))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"3","ai-model-id":this.modelId}}};function Fa(e){return e.type==="file"&&e.data instanceof Uint8Array?{...e,data:ur(e.data)}:e}var gv=k({images:pe(nt()).optional()}).catchall(nt()),yv=k({images:pe(g()),warnings:pe(k({type:D("other"),message:g()})).optional(),providerMetadata:ot(g(),gv).optional()}),_v=ut(()=>De(k({query:le([g(),pe(g())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:Qe().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:Qe().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:Qe().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:g().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:pe(g()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:pe(g()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:g().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:g().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:g().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:g().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:en(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),bv=ut(()=>De(le([k({results:pe(k({title:g(),url:g(),snippet:g(),date:g().optional(),lastUpdated:g().optional()})),id:g()}),k({error:en(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:Qe().optional(),message:g()})]))),wv=Lh({id:"gateway.perplexity_search",inputSchema:_v,outputSchema:bv}),Iv=(e={})=>wv(e),Tv={perplexitySearch:Iv};async function Sv(){var e;return(e=Di.getContext().headers)==null?void 0:e["x-vercel-id"]}var Ev="3.0.22",kv="0.0.1";function Wi(e={}){var t,r;let n=null,o=null;const a=(t=e.metadataCacheRefreshMillis)!=null?t:1e3*60*5;let s=0;const i=(r=Jh(e.baseURL))!=null?r:"https://ai-gateway.vercel.sh/v3/ai",u=async()=>{try{const v=await xv(e);return gr({Authorization:`Bearer ${v.token}`,"ai-gateway-protocol-version":kv,[Gi]:v.authMethod,...e.headers},`ai-sdk/gateway/${Ev}`)}catch(v){throw Kn.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:v})}},l=()=>{const v=Nr({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),y=Nr({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),z=Nr({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{const $=await Sv();return{...v&&{"ai-o11y-deployment-id":v},...y&&{"ai-o11y-environment":y},...z&&{"ai-o11y-region":z},...$&&{"ai-o11y-request-id":$}}}},c=v=>new fv(v,{provider:"gateway",baseURL:i,headers:u,fetch:e.fetch,o11yHeaders:l()}),p=async()=>{var v,y,z;const $=(z=(y=(v=e._internal)==null?void 0:v.currentDate)==null?void 0:y.call(v).getTime())!=null?z:Date.now();return(!n||$-s>a)&&(s=$,n=new Ua({baseURL:i,headers:u,fetch:e.fetch}).getAvailableModels().then(f=>(o=f,f)).catch(async f=>{throw await at(f,await Dt(await u()))})),o?Promise.resolve(o):n},d=async()=>new Ua({baseURL:i,headers:u,fetch:e.fetch}).getCredits().catch(async v=>{throw await at(v,await Dt(await u()))}),m=function(v){if(new.target)throw new Error("The Gateway Provider model function cannot be called with the new keyword.");return c(v)};m.specificationVersion="v3",m.getAvailableModels=p,m.getCredits=d,m.imageModel=v=>new vv(v,{provider:"gateway",baseURL:i,headers:u,fetch:e.fetch,o11yHeaders:l()}),m.languageModel=c;const _=v=>new mv(v,{provider:"gateway",baseURL:i,headers:u,fetch:e.fetch,o11yHeaders:l()});return m.embeddingModel=_,m.textEmbeddingModel=_,m.tools=Tv,m}var Hi=Wi();async function xv(e){const t=Nr({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await Di.getVercelOidcToken(),authMethod:"oidc"}}var Ov=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{},_t="1.9.0",qa=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function Av(e){var t=new Set([e]),r=new Set,n=e.match(qa);if(!n)return function(){return!1};var o={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(o.prerelease!=null)return function(u){return u===e};function a(i){return r.add(i),!1}function s(i){return t.add(i),!0}return function(u){if(t.has(u))return!0;if(r.has(u))return!1;var l=u.match(qa);if(!l)return a(u);var c={major:+l[1],minor:+l[2],patch:+l[3],prerelease:l[4]};return c.prerelease!=null||o.major!==c.major?a(u):o.major===0?o.minor===c.minor&&o.patch<=c.patch?s(u):a(u):o.minor<=c.minor?s(u):a(u)}}var Rv=Av(_t),$v=_t.split(".")[0],cr=Symbol.for("opentelemetry.js.api."+$v),dr=Ov;function Xn(e,t,r,n){var o;n===void 0&&(n=!1);var a=dr[cr]=(o=dr[cr])!==null&&o!==void 0?o:{version:_t};if(!n&&a[e]){var s=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(s.stack||s.message),!1}if(a.version!==_t){var s=new Error("@opentelemetry/api: Registration of version v"+a.version+" for "+e+" does not match previously registered API v"+_t);return r.error(s.stack||s.message),!1}return a[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+_t+"."),!0}function pr(e){var t,r,n=(t=dr[cr])===null||t===void 0?void 0:t.version;if(!(!n||!Rv(n)))return(r=dr[cr])===null||r===void 0?void 0:r[e]}function Qn(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+_t+".");var r=dr[cr];r&&delete r[e]}var Cv=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,a=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)a.push(o.value)}catch(i){s={error:i}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return a},Nv=function(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,a;n<o;n++)(a||!(n in t))&&(a||(a=Array.prototype.slice.call(t,0,n)),a[n]=t[n]);return e.concat(a||Array.prototype.slice.call(t))},Mv=(function(){function e(t){this._namespace=t.namespace||"DiagComponentLogger"}return e.prototype.debug=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return Xt("debug",this._namespace,t)},e.prototype.error=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return Xt("error",this._namespace,t)},e.prototype.info=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return Xt("info",this._namespace,t)},e.prototype.warn=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return Xt("warn",this._namespace,t)},e.prototype.verbose=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return Xt("verbose",this._namespace,t)},e})();function Xt(e,t,r){var n=pr("diag");if(n)return r.unshift(t),n[e].apply(n,Nv([],Cv(r),!1))}var we;(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(we||(we={}));function Pv(e,t){e<we.NONE?e=we.NONE:e>we.ALL&&(e=we.ALL),t=t||{};function r(n,o){var a=t[n];return typeof a=="function"&&e>=o?a.bind(t):function(){}}return{error:r("error",we.ERROR),warn:r("warn",we.WARN),info:r("info",we.INFO),debug:r("debug",we.DEBUG),verbose:r("verbose",we.VERBOSE)}}var zv=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,a=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)a.push(o.value)}catch(i){s={error:i}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return a},Zv=function(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,a;n<o;n++)(a||!(n in t))&&(a||(a=Array.prototype.slice.call(t,0,n)),a[n]=t[n]);return e.concat(a||Array.prototype.slice.call(t))},Dv="diag",Vr=(function(){function e(){function t(o){return function(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];var i=pr("diag");if(i)return i[o].apply(i,Zv([],zv(a),!1))}}var r=this,n=function(o,a){var s,i,u;if(a===void 0&&(a={logLevel:we.INFO}),o===r){var l=new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return r.error((s=l.stack)!==null&&s!==void 0?s:l.message),!1}typeof a=="number"&&(a={logLevel:a});var c=pr("diag"),p=Pv((i=a.logLevel)!==null&&i!==void 0?i:we.INFO,o);if(c&&!a.suppressOverrideMessage){var d=(u=new Error().stack)!==null&&u!==void 0?u:"<failed to generate stacktrace>";c.warn("Current logger will be overwritten from "+d),p.warn("Current logger will overwrite one already registered from "+d)}return Xn("diag",p,r,!0)};r.setLogger=n,r.disable=function(){Qn(Dv,r)},r.createComponentLogger=function(o){return new Mv(o)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e})();function jv(e){return Symbol.for(e)}var Uv=(function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,o){var a=new e(r._currentContext);return a._currentContext.set(n,o),a},r.deleteValue=function(n){var o=new e(r._currentContext);return o._currentContext.delete(n),o}}return e})(),Fv=new Uv,qv=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,a=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)a.push(o.value)}catch(i){s={error:i}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return a},Lv=function(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,a;n<o;n++)(a||!(n in t))&&(a||(a=Array.prototype.slice.call(t,0,n)),a[n]=t[n]);return e.concat(a||Array.prototype.slice.call(t))},Vv=(function(){function e(){}return e.prototype.active=function(){return Fv},e.prototype.with=function(t,r,n){for(var o=[],a=3;a<arguments.length;a++)o[a-3]=arguments[a];return r.call.apply(r,Lv([n],qv(o),!1))},e.prototype.bind=function(t,r){return r},e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e})(),Jv=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,a=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)a.push(o.value)}catch(i){s={error:i}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return a},Bv=function(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,a;n<o;n++)(a||!(n in t))&&(a||(a=Array.prototype.slice.call(t,0,n)),a[n]=t[n]);return e.concat(a||Array.prototype.slice.call(t))},bn="context",Gv=new Vv,eo=(function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=function(t){return Xn(bn,t,Vr.instance())},e.prototype.active=function(){return this._getContextManager().active()},e.prototype.with=function(t,r,n){for(var o,a=[],s=3;s<arguments.length;s++)a[s-3]=arguments[s];return(o=this._getContextManager()).with.apply(o,Bv([t,r,n],Jv(a),!1))},e.prototype.bind=function(t,r){return this._getContextManager().bind(t,r)},e.prototype._getContextManager=function(){return pr(bn)||Gv},e.prototype.disable=function(){this._getContextManager().disable(),Qn(bn,Vr.instance())},e})(),$n;(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})($n||($n={}));var Yi="0000000000000000",Ki="00000000000000000000000000000000",Wv={traceId:Ki,spanId:Yi,traceFlags:$n.NONE},rr=(function(){function e(t){t===void 0&&(t=Wv),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e})(),to=jv("OpenTelemetry Context Key SPAN");function ro(e){return e.getValue(to)||void 0}function Hv(){return ro(eo.getInstance().active())}function no(e,t){return e.setValue(to,t)}function Yv(e){return e.deleteValue(to)}function Kv(e,t){return no(e,new rr(t))}function Xi(e){var t;return(t=ro(e))===null||t===void 0?void 0:t.spanContext()}var Xv=/^([0-9a-f]{32})$/i,Qv=/^[0-9a-f]{16}$/i;function eg(e){return Xv.test(e)&&e!==Ki}function tg(e){return Qv.test(e)&&e!==Yi}function Qi(e){return eg(e.traceId)&&tg(e.spanId)}function rg(e){return new rr(e)}var wn=eo.getInstance(),eu=(function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=wn.active());var o=!!(r!=null&&r.root);if(o)return new rr;var a=n&&Xi(n);return ng(a)&&Qi(a)?new rr(a):new rr},e.prototype.startActiveSpan=function(t,r,n,o){var a,s,i;if(!(arguments.length<2)){arguments.length===2?i=r:arguments.length===3?(a=r,i=n):(a=r,s=n,i=o);var u=s??wn.active(),l=this.startSpan(t,a,u),c=no(u,l);return wn.with(c,i,void 0,l)}},e})();function ng(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var og=new eu,ag=(function(){function e(t,r,n,o){this._provider=t,this.name=r,this.version=n,this.options=o}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,o){var a=this._getTracer();return Reflect.apply(a.startActiveSpan,a,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):og},e})(),sg=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new eu},e})(),ig=new sg,La=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){var o;return(o=this.getDelegateTracer(t,r,n))!==null&&o!==void 0?o:new ag(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:ig},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var o;return(o=this._delegate)===null||o===void 0?void 0:o.getTracer(t,r,n)},e})(),Jr;(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(Jr||(Jr={}));var Va=eo.getInstance(),In="trace",ug=(function(){function e(){this._proxyTracerProvider=new La,this.wrapSpanContext=rg,this.isSpanContextValid=Qi,this.deleteSpan=Yv,this.getSpan=ro,this.getActiveSpan=Hv,this.getSpanContext=Xi,this.setSpan=no,this.setSpanContext=Kv}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=Xn(In,this._proxyTracerProvider,Vr.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return pr(In)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){Qn(In,Vr.instance()),this._proxyTracerProvider=new La},e})(),lg=ug.getInstance(),cg=Object.defineProperty,dg=(e,t)=>{for(var r in t)cg(e,r,{get:t[r],enumerable:!0})},tu="AI_InvalidArgumentError",ru=`vercel.ai.error.${tu}`,pg=Symbol.for(ru),nu,Ce=class extends T{constructor({parameter:e,value:t,message:r}){super({name:tu,message:`Invalid argument for parameter ${e}: ${r}`}),this[nu]=!0,this.parameter=e,this.value=t}static isInstance(e){return T.hasMarker(e,ru)}};nu=pg;var ou="AI_InvalidToolApprovalError",au=`vercel.ai.error.${ou}`,fg=Symbol.for(au),su,iu=class extends T{constructor({approvalId:e}){super({name:ou,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[su]=!0,this.approvalId=e}static isInstance(e){return T.hasMarker(e,au)}};su=fg;var uu="AI_InvalidToolInputError",lu=`vercel.ai.error.${uu}`,mg=Symbol.for(lu),cu,tn=class extends T{constructor({toolInput:e,toolName:t,cause:r,message:n=`Invalid input for tool ${t}: ${wt(r)}`}){super({name:uu,message:n,cause:r}),this[cu]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return T.hasMarker(e,lu)}};cu=mg;var du="AI_ToolCallNotFoundForApprovalError",pu=`vercel.ai.error.${du}`,hg=Symbol.for(pu),fu,rn=class extends T{constructor({toolCallId:e,approvalId:t}){super({name:du,message:`Tool call "${e}" not found for approval request "${t}".`}),this[fu]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return T.hasMarker(e,pu)}};fu=hg;var mu="AI_MissingToolResultsError",hu=`vercel.ai.error.${mu}`,vg=Symbol.for(hu),vu,Cn=class extends T{constructor({toolCallIds:e}){super({name:mu,message:`Tool result${e.length>1?"s are":" is"} missing for tool call${e.length>1?"s":""} ${e.join(", ")}.`}),this[vu]=!0,this.toolCallIds=e}static isInstance(e){return T.hasMarker(e,hu)}};vu=vg;var gu="AI_NoObjectGeneratedError",yu=`vercel.ai.error.${gu}`,gg=Symbol.for(yu),_u,Be=class extends T{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:o,finishReason:a}){super({name:gu,message:e,cause:t}),this[_u]=!0,this.text=r,this.response=n,this.usage=o,this.finishReason=a}static isInstance(e){return T.hasMarker(e,yu)}};_u=gg;var bu="AI_NoOutputGeneratedError",wu=`vercel.ai.error.${bu}`,yg=Symbol.for(wu),Iu,oo=class extends T{constructor({message:e="No output generated.",cause:t}={}){super({name:bu,message:e,cause:t}),this[Iu]=!0}static isInstance(e){return T.hasMarker(e,wu)}};Iu=yg;var Tu="AI_NoSuchToolError",Su=`vercel.ai.error.${Tu}`,_g=Symbol.for(Su),Eu,Br=class extends T{constructor({toolName:e,availableTools:t=void 0,message:r=`Model tried to call unavailable tool '${e}'. ${t===void 0?"No tools are available.":`Available tools: ${t.join(", ")}.`}`}){super({name:Tu,message:r}),this[Eu]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return T.hasMarker(e,Su)}};Eu=_g;var ku="AI_ToolCallRepairError",xu=`vercel.ai.error.${ku}`,bg=Symbol.for(xu),Ou,Au=class extends T{constructor({cause:e,originalError:t,message:r=`Error repairing tool call: ${wt(e)}`}){super({name:ku,message:r,cause:e}),this[Ou]=!0,this.originalError=t}static isInstance(e){return T.hasMarker(e,xu)}};Ou=bg;var Ru=class extends T{constructor(e){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${e.version} for provider "${e.provider}" and model "${e.modelId}". AI SDK 5 only supports models that implement specification version "v2".`}),this.version=e.version,this.provider=e.provider,this.modelId=e.modelId}},$u="AI_UIMessageStreamError",Cu=`vercel.ai.error.${$u}`,wg=Symbol.for(Cu),Nu,gt=class extends T{constructor({chunkType:e,chunkId:t,message:r}){super({name:$u,message:r}),this[Nu]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return T.hasMarker(e,Cu)}};Nu=wg;var Mu="AI_InvalidMessageRoleError",Pu=`vercel.ai.error.${Mu}`,Ig=Symbol.for(Pu),zu,Zu=class extends T{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:Mu,message:t}),this[zu]=!0,this.role=e}static isInstance(e){return T.hasMarker(e,Pu)}};zu=Ig;var Du="AI_RetryError",ju=`vercel.ai.error.${Du}`,Tg=Symbol.for(ju),Uu,Nn=class extends T{constructor({message:e,reason:t,errors:r}){super({name:Du,message:e}),this[Uu]=!0,this.reason=t,this.errors=r,this.lastError=r[r.length-1]}static isInstance(e){return T.hasMarker(e,ju)}};Uu=Tg;function Sg({warning:e,provider:t,model:r}){const n=`AI SDK Warning (${t} / ${r}):`;switch(e.type){case"unsupported":{let o=`${n} The feature "${e.feature}" is not supported.`;return e.details&&(o+=` ${e.details}`),o}case"compatibility":{let o=`${n} The feature "${e.feature}" is used in a compatibility mode.`;return e.details&&(o+=` ${e.details}`),o}case"other":return`${n} ${e.message}`;default:return`${n} ${JSON.stringify(e,null,2)}`}}var Eg="AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",Ja=!1,ao=e=>{if(e.warnings.length===0)return;const t=globalThis.AI_SDK_LOG_WARNINGS;if(t!==!1){if(typeof t=="function"){t(e);return}Ja||(Ja=!0,console.info(Eg));for(const r of e.warnings)console.warn(Sg({warning:r,provider:e.provider,model:e.model}))}};function kg({provider:e,modelId:t}){ao({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:e,model:t})}function xg(e){return e.specificationVersion==="v3"?e:(kg({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(t,r){switch(r){case"specificationVersion":return"v3";case"doGenerate":return async(...n)=>{const o=await t.doGenerate(...n);return{...o,finishReason:Fu(o.finishReason),usage:qu(o.usage)}};case"doStream":return async(...n)=>{const o=await t.doStream(...n);return{...o,stream:Og(o.stream)}};default:return t[r]}}}))}function Og(e){return e.pipeThrough(new TransformStream({transform(t,r){switch(t.type){case"finish":r.enqueue({...t,finishReason:Fu(t.finishReason),usage:qu(t.usage)});break;default:r.enqueue(t);break}}}))}function Fu(e){return{unified:e==="unknown"?"other":e,raw:void 0}}function qu(e){return{inputTokens:{total:e.inputTokens,noCache:void 0,cacheRead:e.cachedInputTokens,cacheWrite:void 0},outputTokens:{total:e.outputTokens,text:void 0,reasoning:e.reasoningTokens}}}function Gr(e){if(typeof e!="string"){if(e.specificationVersion!=="v3"&&e.specificationVersion!=="v2"){const t=e;throw new Ru({version:t.specificationVersion,provider:t.provider,modelId:t.modelId})}return xg(e)}return Ag().languageModel(e)}function Ag(){var e;return(e=globalThis.AI_SDK_DEFAULT_PROVIDER)!=null?e:Hi}function so(e){if(e!=null)return typeof e=="number"?e:e.totalMs}function Lu(e){if(!(e==null||typeof e=="number"))return e.stepMs}function Rg(e){if(!(e==null||typeof e=="number"))return e.chunkMs}var $g=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],Cg=e=>{const t=typeof e=="string"?Bn(e):e,r=(t[6]&127)<<21|(t[7]&127)<<14|(t[8]&127)<<7|t[9]&127;return t.slice(r+10)};function Ng(e){return typeof e=="string"&&e.startsWith("SUQz")||typeof e!="string"&&e.length>10&&e[0]===73&&e[1]===68&&e[2]===51?Cg(e):e}function Mg({data:e,signatures:t}){const r=Ng(e),n=typeof r=="string"?Bn(r.substring(0,Math.min(r.length,24))):r;for(const o of t)if(n.length>=o.bytesPrefix.length&&o.bytesPrefix.every((a,s)=>a===null||n[s]===a))return o.mediaType}var Vu="6.0.49",Pg=async({url:e})=>{var t;const r=e.toString();try{const n=await fetch(r,{headers:gr({},`ai-sdk/${Vu}`,Wn())});if(!n.ok)throw new bt({url:r,statusCode:n.status,statusText:n.statusText});return{data:new Uint8Array(await n.arrayBuffer()),mediaType:(t=n.headers.get("content-type"))!=null?t:void 0}}catch(n){throw bt.isInstance(n)?n:new bt({url:r,cause:n})}},zg=(e=Pg)=>t=>Promise.all(t.map(async r=>r.isUrlSupportedByModel?null:e(r)));function Zg(e){try{const[t,r]=e.split(",");return{mediaType:t.split(";")[0].split(":")[1],base64Content:r}}catch{return{mediaType:void 0,base64Content:void 0}}}var Ju=le([g(),Ur(Uint8Array),Ur(ArrayBuffer),$m(e=>{var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1},{message:"Must be a Buffer"})]);function Bu(e){if(e instanceof Uint8Array)return{data:e,mediaType:void 0};if(e instanceof ArrayBuffer)return{data:new Uint8Array(e),mediaType:void 0};if(typeof e=="string")try{e=new URL(e)}catch{}if(e instanceof URL&&e.protocol==="data:"){const{mediaType:t,base64Content:r}=Zg(e.toString());if(t==null||r==null)throw new T({name:"InvalidDataContentError",message:`Invalid data URL format in content ${e.toString()}`});return{data:r,mediaType:t}}return{data:e,mediaType:void 0}}function Dg(e){return typeof e=="string"?e:e instanceof ArrayBuffer?ur(new Uint8Array(e)):ur(e)}function fr(e){return e===void 0?[]:Array.isArray(e)?e:[e]}async function Gu({prompt:e,supportedUrls:t,download:r=zg()}){const n=await Ug(e.messages,r,t),o=new Map;for(const l of e.messages)if(l.role==="assistant"&&Array.isArray(l.content))for(const c of l.content)c.type==="tool-approval-request"&&"approvalId"in c&&"toolCallId"in c&&o.set(c.approvalId,c.toolCallId);const a=new Set;for(const l of e.messages)if(l.role==="tool"){for(const c of l.content)if(c.type==="tool-approval-response"){const p=o.get(c.approvalId);p&&a.add(p)}}const s=[...e.system!=null?typeof e.system=="string"?[{role:"system",content:e.system}]:fr(e.system).map(l=>({role:"system",content:l.content,providerOptions:l.providerOptions})):[],...e.messages.map(l=>jg({message:l,downloadedAssets:n}))],i=[];for(const l of s){if(l.role!=="tool"){i.push(l);continue}const c=i.at(-1);(c==null?void 0:c.role)==="tool"?c.content.push(...l.content):i.push(l)}const u=new Set;for(const l of i)switch(l.role){case"assistant":{for(const c of l.content)c.type==="tool-call"&&!c.providerExecuted&&u.add(c.toolCallId);break}case"tool":{for(const c of l.content)c.type==="tool-result"&&u.delete(c.toolCallId);break}case"user":case"system":for(const c of a)u.delete(c);if(u.size>0)throw new Cn({toolCallIds:Array.from(u)});break}for(const l of a)u.delete(l);if(u.size>0)throw new Cn({toolCallIds:Array.from(u)});return i.filter(l=>l.role!=="tool"||l.content.length>0)}function jg({message:e,downloadedAssets:t}){const r=e.role;switch(r){case"system":return{role:"system",content:e.content,providerOptions:e.providerOptions};case"user":return typeof e.content=="string"?{role:"user",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions}:{role:"user",content:e.content.map(n=>Fg(n,t)).filter(n=>n.type!=="text"||n.text!==""),providerOptions:e.providerOptions};case"assistant":return typeof e.content=="string"?{role:"assistant",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions}:{role:"assistant",content:e.content.filter(n=>n.type!=="text"||n.text!==""||n.providerOptions!=null).filter(n=>n.type!=="tool-approval-request").map(n=>{const o=n.providerOptions;switch(n.type){case"file":{const{data:a,mediaType:s}=Bu(n.data);return{type:"file",data:a,filename:n.filename,mediaType:s??n.mediaType,providerOptions:o}}case"reasoning":return{type:"reasoning",text:n.text,providerOptions:o};case"text":return{type:"text",text:n.text,providerOptions:o};case"tool-call":return{type:"tool-call",toolCallId:n.toolCallId,toolName:n.toolName,input:n.input,providerExecuted:n.providerExecuted,providerOptions:o};case"tool-result":return{type:"tool-result",toolCallId:n.toolCallId,toolName:n.toolName,output:Ba(n.output),providerOptions:o}}}),providerOptions:e.providerOptions};case"tool":return{role:"tool",content:e.content.filter(n=>n.type!=="tool-approval-response"||n.providerExecuted).map(n=>{switch(n.type){case"tool-result":return{type:"tool-result",toolCallId:n.toolCallId,toolName:n.toolName,output:Ba(n.output),providerOptions:n.providerOptions};case"tool-approval-response":return{type:"tool-approval-response",approvalId:n.approvalId,approved:n.approved,reason:n.reason}}}),providerOptions:e.providerOptions};default:{const n=r;throw new Zu({role:n})}}}async function Ug(e,t,r){const n=e.filter(a=>a.role==="user").map(a=>a.content).filter(a=>Array.isArray(a)).flat().filter(a=>a.type==="image"||a.type==="file").map(a=>{var s;const i=(s=a.mediaType)!=null?s:a.type==="image"?"image/*":void 0;let u=a.type==="image"?a.image:a.data;if(typeof u=="string")try{u=new URL(u)}catch{}return{mediaType:i,data:u}}).filter(a=>a.data instanceof URL).map(a=>({url:a.data,isUrlSupportedByModel:a.mediaType!=null&&Jm({url:a.data.toString(),mediaType:a.mediaType,supportedUrls:r})})),o=await t(n);return Object.fromEntries(o.map((a,s)=>a==null?null:[n[s].url.toString(),{data:a.data,mediaType:a.mediaType}]).filter(a=>a!=null))}function Fg(e,t){var r;if(e.type==="text")return{type:"text",text:e.text,providerOptions:e.providerOptions};let n;const o=e.type;switch(o){case"image":n=e.image;break;case"file":n=e.data;break;default:throw new Error(`Unsupported part type: ${o}`)}const{data:a,mediaType:s}=Bu(n);let i=s??e.mediaType,u=a;if(u instanceof URL){const l=t[u.toString()];l&&(u=l.data,i??(i=l.mediaType))}switch(o){case"image":return(u instanceof Uint8Array||typeof u=="string")&&(i=(r=Mg({data:u,signatures:$g}))!=null?r:i),{type:"file",mediaType:i??"image/*",filename:void 0,data:u,providerOptions:e.providerOptions};case"file":{if(i==null)throw new Error("Media type is missing for file part");return{type:"file",mediaType:i,filename:e.filename,data:u,providerOptions:e.providerOptions}}}}function Ba(e){return e.type!=="content"?e:{type:"content",value:e.value.map(t=>t.type!=="media"?t:t.mediaType.startsWith("image/")?{type:"image-data",data:t.data,mediaType:t.mediaType}:{type:"file-data",data:t.data,mediaType:t.mediaType})}}async function nr({toolCallId:e,input:t,output:r,tool:n,errorMode:o}){return o==="text"?{type:"error-text",value:wt(r)}:o==="json"?{type:"error-json",value:Ga(r)}:n!=null&&n.toModelOutput?await n.toModelOutput({toolCallId:e,input:t,output:r}):typeof r=="string"?{type:"text",value:r}:{type:"json",value:Ga(r)}}function Ga(e){return e===void 0?null:e}function Mn({maxOutputTokens:e,temperature:t,topP:r,topK:n,presencePenalty:o,frequencyPenalty:a,seed:s,stopSequences:i}){if(e!=null){if(!Number.isInteger(e))throw new Ce({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be an integer"});if(e<1)throw new Ce({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be >= 1"})}if(t!=null&&typeof t!="number")throw new Ce({parameter:"temperature",value:t,message:"temperature must be a number"});if(r!=null&&typeof r!="number")throw new Ce({parameter:"topP",value:r,message:"topP must be a number"});if(n!=null&&typeof n!="number")throw new Ce({parameter:"topK",value:n,message:"topK must be a number"});if(o!=null&&typeof o!="number")throw new Ce({parameter:"presencePenalty",value:o,message:"presencePenalty must be a number"});if(a!=null&&typeof a!="number")throw new Ce({parameter:"frequencyPenalty",value:a,message:"frequencyPenalty must be a number"});if(s!=null&&!Number.isInteger(s))throw new Ce({parameter:"seed",value:s,message:"seed must be an integer"});return{maxOutputTokens:e,temperature:t,topP:r,topK:n,presencePenalty:o,frequencyPenalty:a,stopSequences:i,seed:s}}function qg(e){return e!=null&&Object.keys(e).length>0}async function Wu({tools:e,toolChoice:t,activeTools:r}){if(!qg(e))return{tools:void 0,toolChoice:void 0};const n=r!=null?Object.entries(e).filter(([a])=>r.includes(a)):Object.entries(e),o=[];for(const[a,s]of n){const i=s.type;switch(i){case void 0:case"dynamic":case"function":o.push({type:"function",name:a,description:s.description,inputSchema:await St(s.inputSchema).jsonSchema,...s.inputExamples!=null?{inputExamples:s.inputExamples}:{},providerOptions:s.providerOptions,...s.strict!=null?{strict:s.strict}:{}});break;case"provider":o.push({type:"provider",name:a,id:s.id,args:s.args});break;default:{const u=i;throw new Error(`Unsupported tool type: ${u}`)}}}return{tools:o,toolChoice:t==null?{type:"auto"}:typeof t=="string"?{type:t}:{type:"tool",toolName:t.toolName}}}var mr=Rm(()=>le([tm(),g(),Qe(),Vn(),ot(g(),mr.optional()),pe(mr)])),X=ot(g(),ot(g(),mr.optional())),Hu=k({type:D("text"),text:g(),providerOptions:X.optional()}),Lg=k({type:D("image"),image:le([Ju,Ur(URL)]),mediaType:g().optional(),providerOptions:X.optional()}),Yu=k({type:D("file"),data:le([Ju,Ur(URL)]),filename:g().optional(),mediaType:g(),providerOptions:X.optional()}),Vg=k({type:D("reasoning"),text:g(),providerOptions:X.optional()}),Jg=k({type:D("tool-call"),toolCallId:g(),toolName:g(),input:nt(),providerOptions:X.optional(),providerExecuted:Vn().optional()}),Bg=um("type",[k({type:D("text"),value:g(),providerOptions:X.optional()}),k({type:D("json"),value:mr,providerOptions:X.optional()}),k({type:D("execution-denied"),reason:g().optional(),providerOptions:X.optional()}),k({type:D("error-text"),value:g(),providerOptions:X.optional()}),k({type:D("error-json"),value:mr,providerOptions:X.optional()}),k({type:D("content"),value:pe(le([k({type:D("text"),text:g(),providerOptions:X.optional()}),k({type:D("media"),data:g(),mediaType:g()}),k({type:D("file-data"),data:g(),mediaType:g(),filename:g().optional(),providerOptions:X.optional()}),k({type:D("file-url"),url:g(),providerOptions:X.optional()}),k({type:D("file-id"),fileId:le([g(),ot(g(),g())]),providerOptions:X.optional()}),k({type:D("image-data"),data:g(),mediaType:g(),providerOptions:X.optional()}),k({type:D("image-url"),url:g(),providerOptions:X.optional()}),k({type:D("image-file-id"),fileId:le([g(),ot(g(),g())]),providerOptions:X.optional()}),k({type:D("custom"),providerOptions:X.optional()})]))})]),Ku=k({type:D("tool-result"),toolCallId:g(),toolName:g(),output:Bg,providerOptions:X.optional()}),Gg=k({type:D("tool-approval-request"),approvalId:g(),toolCallId:g()}),Wg=k({type:D("tool-approval-response"),approvalId:g(),approved:Vn(),reason:g().optional()}),Xu=k({role:D("system"),content:g(),providerOptions:X.optional()}),Qu=k({role:D("user"),content:le([g(),pe(le([Hu,Lg,Yu]))]),providerOptions:X.optional()}),el=k({role:D("assistant"),content:le([g(),pe(le([Hu,Yu,Vg,Jg,Ku,Gg]))]),providerOptions:X.optional()}),tl=k({role:D("tool"),content:pe(le([Ku,Wg])),providerOptions:X.optional()}),rl=le([Xu,Qu,el,tl]);async function nl(e){if(e.prompt==null&&e.messages==null)throw new vt({prompt:e,message:"prompt or messages must be defined"});if(e.prompt!=null&&e.messages!=null)throw new vt({prompt:e,message:"prompt and messages cannot be defined at the same time"});if(e.system!=null&&typeof e.system!="string"&&!fr(e.system).every(n=>typeof n=="object"&&n!==null&&"role"in n&&n.role==="system"))throw new vt({prompt:e,message:"system must be a string, SystemModelMessage, or array of SystemModelMessage"});let t;if(e.prompt!=null&&typeof e.prompt=="string")t=[{role:"user",content:e.prompt}];else if(e.prompt!=null&&Array.isArray(e.prompt))t=e.prompt;else if(e.messages!=null)t=e.messages;else throw new vt({prompt:e,message:"prompt or messages must be defined"});if(t.length===0)throw new vt({prompt:e,message:"messages must not be empty"});const r=await Ne({value:t,schema:pe(rl)});if(!r.success)throw new vt({prompt:e,message:"The messages do not match the ModelMessage[] schema.",cause:r.error});return{messages:t,system:e.system}}function ol(e){if(!Kn.isInstance(e))return e;const t=(process==null?void 0:"production")==="production",r="https://ai-sdk.dev/unauthenticated-ai-gateway";return t?new T({name:"GatewayError",message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${r}`}):Object.assign(new Error(`\x1B[1m\x1B[31mUnauthenticated request to AI Gateway.\x1B[0m
65
+
66
+ To authenticate, set the \x1B[33mAI_GATEWAY_API_KEY\x1B[0m environment variable with your API key.
67
+
68
+ Alternatively, you can use a provider module instead of the AI Gateway.
69
+
70
+ Learn more: \x1B[34m${r}\x1B[0m
71
+
72
+ `),{name:"GatewayAuthenticationError"})}function hr({operationId:e,telemetry:t}){return{"operation.name":`${e}${(t==null?void 0:t.functionId)!=null?` ${t.functionId}`:""}`,"resource.name":t==null?void 0:t.functionId,"ai.operationId":e,"ai.telemetry.functionId":t==null?void 0:t.functionId}}function al({model:e,settings:t,telemetry:r,headers:n}){var o;return{"ai.model.provider":e.provider,"ai.model.id":e.modelId,...Object.entries(t).reduce((a,[s,i])=>{if(s==="timeout"){const u=so(i);u!=null&&(a[`ai.settings.${s}`]=u)}else a[`ai.settings.${s}`]=i;return a},{}),...Object.entries((o=r==null?void 0:r.metadata)!=null?o:{}).reduce((a,[s,i])=>(a[`ai.telemetry.metadata.${s}`]=i,a),{}),...Object.entries(n??{}).reduce((a,[s,i])=>(i!==void 0&&(a[`ai.request.headers.${s}`]=i),a),{})}}var Hg={startSpan(){return Cr},startActiveSpan(e,t,r,n){if(typeof t=="function")return t(Cr);if(typeof r=="function")return r(Cr);if(typeof n=="function")return n(Cr)}},Cr={spanContext(){return Yg},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},addLink(){return this},addLinks(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this}},Yg={traceId:"",spanId:"",traceFlags:0};function sl({isEnabled:e=!1,tracer:t}={}){return e?t||lg.getTracer("ai"):Hg}async function vr({name:e,tracer:t,attributes:r,fn:n,endWhenDone:o=!0}){return t.startActiveSpan(e,{attributes:await r},async a=>{const s=Va.active();try{const i=await Va.with(s,()=>n(a));return o&&a.end(),i}catch(i){try{il(a,i)}finally{a.end()}throw i}})}function il(e,t){t instanceof Error?(e.recordException({name:t.name,message:t.message,stack:t.stack}),e.setStatus({code:Jr.ERROR,message:t.message})):e.setStatus({code:Jr.ERROR})}async function Ze({telemetry:e,attributes:t}){if((e==null?void 0:e.isEnabled)!==!0)return{};const r={};for(const[n,o]of Object.entries(t))if(o!=null){if(typeof o=="object"&&"input"in o&&typeof o.input=="function"){if((e==null?void 0:e.recordInputs)===!1)continue;const a=await o.input();a!=null&&(r[n]=a);continue}if(typeof o=="object"&&"output"in o&&typeof o.output=="function"){if((e==null?void 0:e.recordOutputs)===!1)continue;const a=await o.output();a!=null&&(r[n]=a);continue}r[n]=o}return r}function ul(e){return JSON.stringify(e.map(t=>({...t,content:typeof t.content=="string"?t.content:t.content.map(r=>r.type==="file"?{...r,data:r.data instanceof Uint8Array?Dg(r.data):r.data}:r)})))}function ll(e){return{inputTokens:e.inputTokens.total,inputTokenDetails:{noCacheTokens:e.inputTokens.noCache,cacheReadTokens:e.inputTokens.cacheRead,cacheWriteTokens:e.inputTokens.cacheWrite},outputTokens:e.outputTokens.total,outputTokenDetails:{textTokens:e.outputTokens.text,reasoningTokens:e.outputTokens.reasoning},totalTokens:$e(e.inputTokens.total,e.outputTokens.total),raw:e.raw,reasoningTokens:e.outputTokens.reasoning,cachedInputTokens:e.inputTokens.cacheRead}}function Tn(){return{inputTokens:void 0,inputTokenDetails:{noCacheTokens:void 0,cacheReadTokens:void 0,cacheWriteTokens:void 0},outputTokens:void 0,outputTokenDetails:{textTokens:void 0,reasoningTokens:void 0},totalTokens:void 0,raw:void 0}}function cl(e,t){var r,n,o,a,s,i,u,l,c,p;return{inputTokens:$e(e.inputTokens,t.inputTokens),inputTokenDetails:{noCacheTokens:$e((r=e.inputTokenDetails)==null?void 0:r.noCacheTokens,(n=t.inputTokenDetails)==null?void 0:n.noCacheTokens),cacheReadTokens:$e((o=e.inputTokenDetails)==null?void 0:o.cacheReadTokens,(a=t.inputTokenDetails)==null?void 0:a.cacheReadTokens),cacheWriteTokens:$e((s=e.inputTokenDetails)==null?void 0:s.cacheWriteTokens,(i=t.inputTokenDetails)==null?void 0:i.cacheWriteTokens)},outputTokens:$e(e.outputTokens,t.outputTokens),outputTokenDetails:{textTokens:$e((u=e.outputTokenDetails)==null?void 0:u.textTokens,(l=t.outputTokenDetails)==null?void 0:l.textTokens),reasoningTokens:$e((c=e.outputTokenDetails)==null?void 0:c.reasoningTokens,(p=t.outputTokenDetails)==null?void 0:p.reasoningTokens)},totalTokens:$e(e.totalTokens,t.totalTokens),reasoningTokens:$e(e.reasoningTokens,t.reasoningTokens),cachedInputTokens:$e(e.cachedInputTokens,t.cachedInputTokens)}}function $e(e,t){return e==null&&t==null?void 0:(e??0)+(t??0)}function nn(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const r={...e};for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)){const o=t[n];if(o===void 0)continue;const a=n in e?e[n]:void 0,s=o!==null&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),i=a!=null&&typeof a=="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);s&&i?r[n]=nn(a,o):r[n]=o}return r}function Kg({error:e,exponentialBackoffDelay:t}){const r=e.responseHeaders;if(!r)return t;let n;const o=r["retry-after-ms"];if(o){const s=parseFloat(o);Number.isNaN(s)||(n=s)}const a=r["retry-after"];if(a&&n===void 0){const s=parseFloat(a);Number.isNaN(s)?n=Date.parse(a)-Date.now():n=s*1e3}return n!=null&&!Number.isNaN(n)&&0<=n&&(n<60*1e3||n<t)?n:t}var Xg=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:n}={})=>async o=>dl(o,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:n});async function dl(e,{maxRetries:t,delayInMs:r,backoffFactor:n,abortSignal:o},a=[]){try{return await e()}catch(s){if(It(s)||t===0)throw s;const i=Gn(s),u=[...a,s],l=u.length;if(l>t)throw new Nn({message:`Failed after ${l} attempts. Last error: ${i}`,reason:"maxRetriesExceeded",errors:u});if(s instanceof Error&&ue.isInstance(s)&&s.isRetryable===!0&&l<=t)return await Zm(Kg({error:s,exponentialBackoffDelay:r}),{abortSignal:o}),dl(e,{maxRetries:t,delayInMs:n*r,backoffFactor:n,abortSignal:o},u);throw l===1?s:new Nn({message:`Failed after ${l} attempts with non-retryable error: '${i}'`,reason:"errorNotRetryable",errors:u})}}function pl({maxRetries:e,abortSignal:t}){if(e!=null){if(!Number.isInteger(e))throw new Ce({parameter:"maxRetries",value:e,message:"maxRetries must be an integer"});if(e<0)throw new Ce({parameter:"maxRetries",value:e,message:"maxRetries must be >= 0"})}const r=e??2;return{maxRetries:r,retry:Xg({maxRetries:r,abortSignal:t})}}function fl({messages:e}){const t=e.at(-1);if((t==null?void 0:t.role)!="tool")return{approvedToolApprovals:[],deniedToolApprovals:[]};const r={};for(const u of e)if(u.role==="assistant"&&typeof u.content!="string"){const l=u.content;for(const c of l)c.type==="tool-call"&&(r[c.toolCallId]=c)}const n={};for(const u of e)if(u.role==="assistant"&&typeof u.content!="string"){const l=u.content;for(const c of l)c.type==="tool-approval-request"&&(n[c.approvalId]=c)}const o={};for(const u of t.content)u.type==="tool-result"&&(o[u.toolCallId]=u);const a=[],s=[],i=t.content.filter(u=>u.type==="tool-approval-response");for(const u of i){const l=n[u.approvalId];if(l==null)throw new iu({approvalId:u.approvalId});if(o[l.toolCallId]!=null)continue;const c=r[l.toolCallId];if(c==null)throw new rn({toolCallId:l.toolCallId,approvalId:l.approvalId});const p={approvalRequest:l,approvalResponse:u,toolCall:c};u.approved?a.push(p):s.push(p)}return{approvedToolApprovals:a,deniedToolApprovals:s}}async function io({toolCall:e,tools:t,tracer:r,telemetry:n,messages:o,abortSignal:a,experimental_context:s,onPreliminaryToolResult:i}){const{toolName:u,toolCallId:l,input:c}=e,p=t==null?void 0:t[u];if((p==null?void 0:p.execute)!=null)return vr({name:"ai.toolCall",attributes:Ze({telemetry:n,attributes:{...hr({operationId:"ai.toolCall",telemetry:n}),"ai.toolCall.name":u,"ai.toolCall.id":l,"ai.toolCall.args":{output:()=>JSON.stringify(c)}}}),tracer:r,fn:async d=>{let m;try{const _=Gh({execute:p.execute.bind(p),input:c,options:{toolCallId:l,messages:o,abortSignal:a,experimental_context:s}});for await(const v of _)v.type==="preliminary"?i==null||i({...e,type:"tool-result",output:v.output,preliminary:!0}):m=v.output}catch(_){return il(d,_),{type:"tool-error",toolCallId:l,toolName:u,input:c,error:_,dynamic:p.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}try{d.setAttributes(await Ze({telemetry:n,attributes:{"ai.toolCall.result":{output:()=>JSON.stringify(m)}}}))}catch{}return{type:"tool-result",toolCallId:l,toolName:u,input:c,output:m,dynamic:p.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}})}function Wa(e){const t=e.filter(r=>r.type==="text");if(t.length!==0)return t.map(r=>r.text).join("")}var ml=class{constructor({data:e,mediaType:t}){const r=e instanceof Uint8Array;this.base64Data=r?void 0:e,this.uint8ArrayData=r?e:void 0,this.mediaType=t}get base64(){return this.base64Data==null&&(this.base64Data=ur(this.uint8ArrayData)),this.base64Data}get uint8Array(){return this.uint8ArrayData==null&&(this.uint8ArrayData=Bn(this.base64Data)),this.uint8ArrayData}},Qg=class extends ml{constructor(e){super(e),this.type="file"}};async function hl({tool:e,toolCall:t,messages:r,experimental_context:n}){return e.needsApproval==null?!1:typeof e.needsApproval=="boolean"?e.needsApproval:await e.needsApproval(t.input,{toolCallId:t.toolCallId,messages:r,experimental_context:n})}var vl={};dg(vl,{array:()=>ry,choice:()=>ny,json:()=>oy,object:()=>ty,text:()=>Wr});function ey(e){const t=["ROOT"];let r=-1,n=null;function o(u,l,c){switch(u){case'"':{r=l,t.pop(),t.push(c),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=l,n=l,t.pop(),t.push(c),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(c),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=l,t.pop(),t.push(c),t.push("INSIDE_NUMBER");break}case"{":{r=l,t.pop(),t.push(c),t.push("INSIDE_OBJECT_START");break}case"[":{r=l,t.pop(),t.push(c),t.push("INSIDE_ARRAY_START");break}}}function a(u,l){switch(u){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=l,t.pop();break}}}function s(u,l){switch(u){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=l,t.pop();break}}}for(let u=0;u<e.length;u++){const l=e[u];switch(t[t.length-1]){case"ROOT":o(l,u,"FINISH");break;case"INSIDE_OBJECT_START":{switch(l){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{r=u,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(l){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(l){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(l){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{o(l,u,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{a(l,u);break}case"INSIDE_STRING":{switch(l){case'"':{t.pop(),r=u;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=u}break}case"INSIDE_ARRAY_START":{switch(l){case"]":{r=u,t.pop();break}default:{r=u,o(l,u,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=u,t.pop();break}default:{r=u;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{o(l,u,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),r=u;break}case"INSIDE_NUMBER":{switch(l){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=u;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(l,u),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&a(l,u);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&a(l,u);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(l,u);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const p=e.substring(n,u+1);!"false".startsWith(p)&&!"true".startsWith(p)&&!"null".startsWith(p)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?a(l,u):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(l,u)):r=u;break}}}let i=e.slice(0,r+1);for(let u=t.length-1;u>=0;u--)switch(t[u]){case"INSIDE_STRING":{i+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{i+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{i+="]";break}case"INSIDE_LITERAL":{const c=e.substring(n,e.length);"true".startsWith(c)?i+="true".slice(c.length):"false".startsWith(c)?i+="false".slice(c.length):"null".startsWith(c)&&(i+="null".slice(c.length))}}return i}async function qt(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Me({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Me({text:ey(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var Wr=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),ty=({schema:e,name:t,description:r})=>{const n=St(e);return{name:"object",responseFormat:ke(n.jsonSchema).then(o=>({type:"json",schema:o,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:o},a){const s=await Me({text:o});if(!s.success)throw new Be({message:"No object generated: could not parse the response.",cause:s.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});const i=await Ne({value:s.value,schema:n});if(!i.success)throw new Be({message:"No object generated: response did not match schema.",cause:i.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});return i.value},async parsePartialOutput({text:o}){const a=await qt(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){}}},ry=({element:e,name:t,description:r})=>{const n=St(e);return{name:"array",responseFormat:ke(n.jsonSchema).then(o=>{const{$schema:a,...s}=o;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:s}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:o},a){const s=await Me({text:o});if(!s.success)throw new Be({message:"No object generated: could not parse the response.",cause:s.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});const i=s.value;if(i==null||typeof i!="object"||!("elements"in i)||!Array.isArray(i.elements))throw new Be({message:"No object generated: response did not match schema.",cause:new et({value:i,cause:"response must be an object with an elements array"}),text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});for(const u of i.elements){const l=await Ne({value:u,schema:n});if(!l.success)throw new Be({message:"No object generated: response did not match schema.",cause:l.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason})}return i.elements},async parsePartialOutput({text:o}){const a=await qt(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const s=a.value;if(s==null||typeof s!="object"||!("elements"in s)||!Array.isArray(s.elements))return;const i=a.state==="repaired-parse"&&s.elements.length>0?s.elements.slice(0,-1):s.elements,u=[];for(const l of i){const c=await Ne({value:l,schema:n});c.success&&u.push(c.value)}return{partial:u}}}},createElementStreamTransform(){let o=0;return new TransformStream({transform({partialOutput:a},s){if(a!=null)for(;o<a.length;o++)s.enqueue(a[o])}})}}},ny=({options:e,name:t,description:r})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}),async parseCompleteOutput({text:n},o){const a=await Me({text:n});if(!a.success)throw new Be({message:"No object generated: could not parse the response.",cause:a.error,text:n,response:o.response,usage:o.usage,finishReason:o.finishReason});const s=a.value;if(s==null||typeof s!="object"||!("result"in s)||typeof s.result!="string"||!e.includes(s.result))throw new Be({message:"No object generated: response did not match schema.",cause:new et({value:s,cause:"response must be an object that contains a choice value."}),text:n,response:o.response,usage:o.usage,finishReason:o.finishReason});return s.result},async parsePartialOutput({text:n}){const o=await qt(n);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const a=o.value;if(a==null||typeof a!="object"||!("result"in a)||typeof a.result!="string")return;const s=e.filter(i=>i.startsWith(a.result));return o.state==="successful-parse"?s.includes(a.result)?{partial:a.result}:void 0:s.length===1?{partial:s[0]}:void 0}}},createElementStreamTransform(){}}),oy=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},n){const o=await Me({text:r});if(!o.success)throw new Be({message:"No object generated: could not parse the response.",cause:o.error,text:r,response:n.response,usage:n.usage,finishReason:n.finishReason});return o.value},async parsePartialOutput({text:r}){const n=await qt(r);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return n.value===void 0?void 0:{partial:n.value}}},createElementStreamTransform(){}});async function gl({toolCall:e,tools:t,repairToolCall:r,system:n,messages:o}){var a;try{if(t==null){if(e.providerExecuted&&e.dynamic)return await yl(e);throw new Br({toolName:e.toolName})}try{return await Ha({toolCall:e,tools:t})}catch(s){if(r==null||!(Br.isInstance(s)||tn.isInstance(s)))throw s;let i=null;try{i=await r({toolCall:e,tools:t,inputSchema:async({toolName:u})=>{const{inputSchema:l}=t[u];return await St(l).jsonSchema},system:n,messages:o,error:s})}catch(u){throw new Au({cause:u,originalError:s})}if(i==null)throw s;return await Ha({toolCall:i,tools:t})}}catch(s){const i=await Me({text:e.input}),u=i.success?i.value:e.input;return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:u,dynamic:!0,invalid:!0,error:s,title:(a=t==null?void 0:t[e.toolName])==null?void 0:a.title,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}}}async function yl(e){const t=e.input.trim()===""?{success:!0,value:{}}:await Me({text:e.input});if(t.success===!1)throw new tn({toolName:e.toolName,toolInput:e.input,cause:t.error});return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:t.value,providerExecuted:!0,dynamic:!0,providerMetadata:e.providerMetadata}}async function Ha({toolCall:e,tools:t}){const r=e.toolName,n=t[r];if(n==null){if(e.providerExecuted&&e.dynamic)return await yl(e);throw new Br({toolName:e.toolName,availableTools:Object.keys(t)})}const o=St(n.inputSchema),a=e.input.trim()===""?await Ne({value:{},schema:o}):await Me({text:e.input,schema:o});if(a.success===!1)throw new tn({toolName:r,toolInput:e.input,cause:a.error});return n.type==="dynamic"?{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:a.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,dynamic:!0,title:n.title}:{type:"tool-call",toolCallId:e.toolCallId,toolName:r,input:a.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:n.title}}var _l=class{constructor({content:e,finishReason:t,rawFinishReason:r,usage:n,warnings:o,request:a,response:s,providerMetadata:i}){this.content=e,this.finishReason=t,this.rawFinishReason=r,this.usage=n,this.warnings=o,this.request=a,this.response=s,this.providerMetadata=i}get text(){return this.content.filter(e=>e.type==="text").map(e=>e.text).join("")}get reasoning(){return this.content.filter(e=>e.type==="reasoning")}get reasoningText(){return this.reasoning.length===0?void 0:this.reasoning.map(e=>e.text).join("")}get files(){return this.content.filter(e=>e.type==="file").map(e=>e.file)}get sources(){return this.content.filter(e=>e.type==="source")}get toolCalls(){return this.content.filter(e=>e.type==="tool-call")}get staticToolCalls(){return this.toolCalls.filter(e=>e.dynamic!==!0)}get dynamicToolCalls(){return this.toolCalls.filter(e=>e.dynamic===!0)}get toolResults(){return this.content.filter(e=>e.type==="tool-result")}get staticToolResults(){return this.toolResults.filter(e=>e.dynamic!==!0)}get dynamicToolResults(){return this.toolResults.filter(e=>e.dynamic===!0)}};function uo(e){return({steps:t})=>t.length===e}async function bl({stopConditions:e,steps:t}){return(await Promise.all(e.map(r=>r({steps:t})))).some(r=>r)}async function Pn({content:e,tools:t}){const r=[],n=[];for(const a of e)if(a.type!=="source"&&!((a.type==="tool-result"||a.type==="tool-error")&&!a.providerExecuted)&&!(a.type==="text"&&a.text.length===0))switch(a.type){case"text":n.push({type:"text",text:a.text,providerOptions:a.providerMetadata});break;case"reasoning":n.push({type:"reasoning",text:a.text,providerOptions:a.providerMetadata});break;case"file":n.push({type:"file",data:a.file.base64,mediaType:a.file.mediaType,providerOptions:a.providerMetadata});break;case"tool-call":n.push({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,providerExecuted:a.providerExecuted,providerOptions:a.providerMetadata});break;case"tool-result":{const s=await nr({toolCallId:a.toolCallId,input:a.input,tool:t==null?void 0:t[a.toolName],output:a.output,errorMode:"none"});n.push({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:s,providerOptions:a.providerMetadata});break}case"tool-error":{const s=await nr({toolCallId:a.toolCallId,input:a.input,tool:t==null?void 0:t[a.toolName],output:a.error,errorMode:"json"});n.push({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:s,providerOptions:a.providerMetadata});break}case"tool-approval-request":n.push({type:"tool-approval-request",approvalId:a.approvalId,toolCallId:a.toolCall.toolCallId});break}n.length>0&&r.push({role:"assistant",content:n});const o=[];for(const a of e){if(!(a.type==="tool-result"||a.type==="tool-error")||a.providerExecuted)continue;const s=await nr({toolCallId:a.toolCallId,input:a.input,tool:t==null?void 0:t[a.toolName],output:a.type==="tool-result"?a.output:a.error,errorMode:a.type==="tool-error"?"text":"none"});o.push({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:s,...a.providerMetadata!=null?{providerOptions:a.providerMetadata}:{}})}return o.length>0&&r.push({role:"tool",content:o}),r}function wl(...e){const t=e.filter(n=>n!=null);if(t.length===0)return;if(t.length===1)return t[0];const r=new AbortController;for(const n of t){if(n.aborted)return r.abort(n.reason),r.signal;n.addEventListener("abort",()=>{r.abort(n.reason)},{once:!0})}return r.signal}var ay=Ft({prefix:"aitxt",size:24});async function sy({model:e,tools:t,toolChoice:r,system:n,prompt:o,messages:a,maxRetries:s,abortSignal:i,timeout:u,headers:l,stopWhen:c=uo(1),experimental_output:p,output:d=p,experimental_telemetry:m,providerOptions:_,experimental_activeTools:v,activeTools:y=v,experimental_prepareStep:z,prepareStep:$=z,experimental_repairToolCall:f,experimental_download:A,experimental_context:E,_internal:{generateId:b=ay}={},onStepFinish:R,onFinish:B,...K}){const je=Gr(e),Et=fr(c),lt=so(u),Ge=Lu(u),ye=Ge!=null?new AbortController:void 0,Se=wl(i,lt!=null?AbortSignal.timeout(lt):void 0,ye==null?void 0:ye.signal),{maxRetries:We,retry:fe}=pl({maxRetries:s,abortSignal:Se}),Ue=Mn(K),Pe=gr(l??{},`ai/${Vu}`),Lt=al({model:je,telemetry:m,headers:Pe,settings:{...Ue,maxRetries:We}}),kt=await nl({system:n,prompt:o,messages:a}),ct=sl(m);try{return await vr({name:"ai.generateText",attributes:Ze({telemetry:m,attributes:{...hr({operationId:"ai.generateText",telemetry:m}),...Lt,"ai.model.provider":je.provider,"ai.model.id":je.modelId,"ai.prompt":{input:()=>JSON.stringify({system:n,prompt:o,messages:a})}}}),tracer:ct,fn:async dt=>{var me,xt,Ot,Fe,qe,_r,He,br;const pt=kt.messages,ft=[],{approvedToolApprovals:wr,deniedToolApprovals:Ye}=fl({messages:pt}),Ee=wr.filter(q=>!q.toolCall.providerExecuted);if(Ye.length>0||Ee.length>0){const q=await Ya({toolCalls:Ee.map(M=>M.toolCall),tools:t,tracer:ct,telemetry:m,messages:pt,abortSignal:Se,experimental_context:E}),ae=[];for(const M of q){const H=await nr({toolCallId:M.toolCallId,input:M.input,tool:t==null?void 0:t[M.toolName],output:M.type==="tool-result"?M.output:M.error,errorMode:M.type==="tool-error"?"json":"none"});ae.push({type:"tool-result",toolCallId:M.toolCallId,toolName:M.toolName,output:H})}for(const M of Ye)ae.push({type:"tool-result",toolCallId:M.toolCall.toolCallId,toolName:M.toolCall.toolName,output:{type:"execution-denied",reason:M.approvalResponse.reason,...M.toolCall.providerExecuted&&{providerOptions:{openai:{approvalId:M.approvalResponse.approvalId}}}}});ft.push({role:"tool",content:ae})}const Vt=[...wr,...Ye].filter(q=>q.toolCall.providerExecuted);Vt.length>0&&ft.push({role:"tool",content:Vt.map(q=>({type:"tool-approval-response",approvalId:q.approvalResponse.approvalId,approved:q.approvalResponse.approved,reason:q.approvalResponse.reason,providerExecuted:!0}))});const ce=Mn(K);let C,W=[],G=[];const x=[],oe=new Map;do{const q=Ge!=null?setTimeout(()=>ye.abort(),Ge):void 0;try{const ae=[...pt,...ft],M=await($==null?void 0:$({model:je,steps:x,stepNumber:x.length,messages:ae,experimental_context:E})),H=Gr((me=M==null?void 0:M.model)!=null?me:je),mt=await Gu({prompt:{system:(xt=M==null?void 0:M.system)!=null?xt:kt.system,messages:(Ot=M==null?void 0:M.messages)!=null?Ot:ae},supportedUrls:await H.supportedUrls,download:A});E=(Fe=M==null?void 0:M.experimental_context)!=null?Fe:E;const{toolChoice:ee,tools:ne}=await Wu({tools:t,toolChoice:(qe=M==null?void 0:M.toolChoice)!=null?qe:r,activeTools:(_r=M==null?void 0:M.activeTools)!=null?_r:y});C=await fe(()=>{var N;return vr({name:"ai.generateText.doGenerate",attributes:Ze({telemetry:m,attributes:{...hr({operationId:"ai.generateText.doGenerate",telemetry:m}),...Lt,"ai.model.provider":H.provider,"ai.model.id":H.modelId,"ai.prompt.messages":{input:()=>ul(mt)},"ai.prompt.tools":{input:()=>ne==null?void 0:ne.map(he=>JSON.stringify(he))},"ai.prompt.toolChoice":{input:()=>ee!=null?JSON.stringify(ee):void 0},"gen_ai.system":H.provider,"gen_ai.request.model":H.modelId,"gen_ai.request.frequency_penalty":K.frequencyPenalty,"gen_ai.request.max_tokens":K.maxOutputTokens,"gen_ai.request.presence_penalty":K.presencePenalty,"gen_ai.request.stop_sequences":K.stopSequences,"gen_ai.request.temperature":(N=K.temperature)!=null?N:void 0,"gen_ai.request.top_k":K.topK,"gen_ai.request.top_p":K.topP}}),tracer:ct,fn:async he=>{var Ve,te,Je,Jt,At,Rt,Sr,Er;const kr=nn(_,M==null?void 0:M.providerOptions),se=await H.doGenerate({...ce,tools:ne,toolChoice:ee,responseFormat:await(d==null?void 0:d.responseFormat),prompt:mt,providerOptions:kr,abortSignal:Se,headers:Pe}),be={id:(te=(Ve=se.response)==null?void 0:Ve.id)!=null?te:b(),timestamp:(Jt=(Je=se.response)==null?void 0:Je.timestamp)!=null?Jt:new Date,modelId:(Rt=(At=se.response)==null?void 0:At.modelId)!=null?Rt:H.modelId,headers:(Sr=se.response)==null?void 0:Sr.headers,body:(Er=se.response)==null?void 0:Er.body};return he.setAttributes(await Ze({telemetry:m,attributes:{"ai.response.finishReason":se.finishReason.unified,"ai.response.text":{output:()=>Wa(se.content)},"ai.response.toolCalls":{output:()=>{const Bt=Ka(se.content);return Bt==null?void 0:JSON.stringify(Bt)}},"ai.response.id":be.id,"ai.response.model":be.modelId,"ai.response.timestamp":be.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(se.providerMetadata),"ai.usage.promptTokens":se.usage.inputTokens.total,"ai.usage.completionTokens":se.usage.outputTokens.total,"gen_ai.response.finish_reasons":[se.finishReason.unified],"gen_ai.response.id":be.id,"gen_ai.response.model":be.modelId,"gen_ai.usage.input_tokens":se.usage.inputTokens.total,"gen_ai.usage.output_tokens":se.usage.outputTokens.total}})),{...se,response:be}}})});const V=await Promise.all(C.content.filter(N=>N.type==="tool-call").map(N=>gl({toolCall:N,tools:t,repairToolCall:f,system:n,messages:ae}))),Ke={};for(const N of V){if(N.invalid)continue;const he=t==null?void 0:t[N.toolName];he!=null&&((he==null?void 0:he.onInputAvailable)!=null&&await he.onInputAvailable({input:N.input,toolCallId:N.toolCallId,messages:ae,abortSignal:Se,experimental_context:E}),await hl({tool:he,toolCall:N,messages:ae,experimental_context:E})&&(Ke[N.toolCallId]={type:"tool-approval-request",approvalId:b(),toolCall:N}))}const Ir=V.filter(N=>N.invalid&&N.dynamic);G=[];for(const N of Ir)G.push({type:"tool-error",toolCallId:N.toolCallId,toolName:N.toolName,input:N.input,error:Gn(N.error),dynamic:!0});W=V.filter(N=>!N.providerExecuted),t!=null&&G.push(...await Ya({toolCalls:W.filter(N=>!N.invalid&&Ke[N.toolCallId]==null),tools:t,tracer:ct,telemetry:m,messages:ae,abortSignal:Se,experimental_context:E}));for(const N of V){if(!N.providerExecuted)continue;const he=t==null?void 0:t[N.toolName];(he==null?void 0:he.type)==="provider"&&he.supportsDeferredResults&&(C.content.some(te=>te.type==="tool-result"&&te.toolCallId===N.toolCallId)||oe.set(N.toolCallId,{toolName:N.toolName}))}for(const N of C.content)N.type==="tool-result"&&oe.delete(N.toolCallId);const Le=uy({content:C.content,toolCalls:V,toolOutputs:G,toolApprovalRequests:Object.values(Ke),tools:t});ft.push(...await Pn({content:Le,tools:t}));const Tr=new _l({content:Le,finishReason:C.finishReason.unified,rawFinishReason:C.finishReason.raw,usage:ll(C.usage),warnings:C.warnings,providerMetadata:C.providerMetadata,request:(He=C.request)!=null?He:{},response:{...C.response,messages:structuredClone(ft)}});ao({warnings:(br=C.warnings)!=null?br:[],provider:H.provider,model:H.modelId}),x.push(Tr),await(R==null?void 0:R(Tr))}finally{q!=null&&clearTimeout(q)}}while((W.length>0&&G.length===W.length||oe.size>0)&&!await bl({stopConditions:Et,steps:x}));dt.setAttributes(await Ze({telemetry:m,attributes:{"ai.response.finishReason":C.finishReason.unified,"ai.response.text":{output:()=>Wa(C.content)},"ai.response.toolCalls":{output:()=>{const q=Ka(C.content);return q==null?void 0:JSON.stringify(q)}},"ai.response.providerMetadata":JSON.stringify(C.providerMetadata),"ai.usage.promptTokens":C.usage.inputTokens.total,"ai.usage.completionTokens":C.usage.outputTokens.total}}));const Z=x[x.length-1],w=x.reduce((q,ae)=>cl(q,ae.usage),{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0,reasoningTokens:void 0,cachedInputTokens:void 0});await(B==null?void 0:B({finishReason:Z.finishReason,rawFinishReason:Z.rawFinishReason,usage:Z.usage,content:Z.content,text:Z.text,reasoningText:Z.reasoningText,reasoning:Z.reasoning,files:Z.files,sources:Z.sources,toolCalls:Z.toolCalls,staticToolCalls:Z.staticToolCalls,dynamicToolCalls:Z.dynamicToolCalls,toolResults:Z.toolResults,staticToolResults:Z.staticToolResults,dynamicToolResults:Z.dynamicToolResults,request:Z.request,response:Z.response,warnings:Z.warnings,providerMetadata:Z.providerMetadata,steps:x,totalUsage:w,experimental_context:E}));let U;return Z.finishReason==="stop"&&(U=await(d??Wr()).parseCompleteOutput({text:Z.text},{response:Z.response,usage:Z.usage,finishReason:Z.finishReason})),new iy({steps:x,totalUsage:w,output:U})}})}catch(dt){throw ol(dt)}}async function Ya({toolCalls:e,tools:t,tracer:r,telemetry:n,messages:o,abortSignal:a,experimental_context:s}){return(await Promise.all(e.map(async u=>io({toolCall:u,tools:t,tracer:r,telemetry:n,messages:o,abortSignal:a,experimental_context:s})))).filter(u=>u!=null)}var iy=class{constructor(e){this.steps=e.steps,this._output=e.output,this.totalUsage=e.totalUsage}get finalStep(){return this.steps[this.steps.length-1]}get content(){return this.finalStep.content}get text(){return this.finalStep.text}get files(){return this.finalStep.files}get reasoningText(){return this.finalStep.reasoningText}get reasoning(){return this.finalStep.reasoning}get toolCalls(){return this.finalStep.toolCalls}get staticToolCalls(){return this.finalStep.staticToolCalls}get dynamicToolCalls(){return this.finalStep.dynamicToolCalls}get toolResults(){return this.finalStep.toolResults}get staticToolResults(){return this.finalStep.staticToolResults}get dynamicToolResults(){return this.finalStep.dynamicToolResults}get sources(){return this.finalStep.sources}get finishReason(){return this.finalStep.finishReason}get rawFinishReason(){return this.finalStep.rawFinishReason}get warnings(){return this.finalStep.warnings}get providerMetadata(){return this.finalStep.providerMetadata}get response(){return this.finalStep.response}get request(){return this.finalStep.request}get usage(){return this.finalStep.usage}get experimental_output(){return this.output}get output(){if(this._output==null)throw new oo;return this._output}};function Ka(e){const t=e.filter(r=>r.type==="tool-call");if(t.length!==0)return t.map(r=>({toolCallId:r.toolCallId,toolName:r.toolName,input:r.input}))}function uy({content:e,toolCalls:t,toolOutputs:r,toolApprovalRequests:n,tools:o}){const a=[];for(const s of e)switch(s.type){case"text":case"reasoning":case"source":a.push(s);break;case"file":{a.push({type:"file",file:new ml(s),...s.providerMetadata!=null?{providerMetadata:s.providerMetadata}:{}});break}case"tool-call":{a.push(t.find(i=>i.toolCallId===s.toolCallId));break}case"tool-result":{const i=t.find(u=>u.toolCallId===s.toolCallId);if(i==null){const u=o==null?void 0:o[s.toolName];if(!((u==null?void 0:u.type)==="provider"&&u.supportsDeferredResults))throw new Error(`Tool call ${s.toolCallId} not found.`);s.isError?a.push({type:"tool-error",toolCallId:s.toolCallId,toolName:s.toolName,input:void 0,error:s.result,providerExecuted:!0,dynamic:s.dynamic}):a.push({type:"tool-result",toolCallId:s.toolCallId,toolName:s.toolName,input:void 0,output:s.result,providerExecuted:!0,dynamic:s.dynamic});break}s.isError?a.push({type:"tool-error",toolCallId:s.toolCallId,toolName:s.toolName,input:i.input,error:s.result,providerExecuted:!0,dynamic:i.dynamic}):a.push({type:"tool-result",toolCallId:s.toolCallId,toolName:s.toolName,input:i.input,output:s.result,providerExecuted:!0,dynamic:i.dynamic});break}case"tool-approval-request":{const i=t.find(u=>u.toolCallId===s.toolCallId);if(i==null)throw new rn({toolCallId:s.toolCallId,approvalId:s.approvalId});a.push({type:"tool-approval-request",approvalId:s.approvalId,toolCall:i});break}}return[...a,...r,...n]}function on(e,t){const r=new Headers(e??{});for(const[n,o]of Object.entries(t))r.has(n)||r.set(n,o);return r}function Il({status:e,statusText:t,headers:r,textStream:n}){return new Response(n.pipeThrough(new TextEncoderStream),{status:e??200,statusText:t,headers:on(r,{"content-type":"text/plain; charset=utf-8"})})}function Tl({response:e,status:t,statusText:r,headers:n,stream:o}){const a=t??200;r!==void 0?e.writeHead(a,r,n):e.writeHead(a,n);const s=o.getReader();(async()=>{try{for(;;){const{done:u,value:l}=await s.read();if(u)break;e.write(l)||await new Promise(p=>{e.once("drain",p)})}}catch(u){throw u}finally{e.end()}})()}function Sl({response:e,status:t,statusText:r,headers:n,textStream:o}){Tl({response:e,status:t,statusText:r,headers:Object.fromEntries(on(n,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:o.pipeThrough(new TextEncoderStream)})}var lo=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
73
+
74
+ `)},flush(e){e.enqueue(`data: [DONE]
75
+
76
+ `)}})}},co={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};function El({status:e,statusText:t,headers:r,stream:n,consumeSseStream:o}){let a=n.pipeThrough(new lo);if(o){const[s,i]=a.tee();a=s,o({stream:i})}return new Response(a.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:on(r,co)})}function ly({originalMessages:e,responseMessageId:t}){if(e==null)return;const r=e[e.length-1];return(r==null?void 0:r.role)==="assistant"?r.id:typeof t=="function"?t():t}function cy(e){return e.type.startsWith("data-")}function Hr(e){return e.type.startsWith("tool-")}function dy(e){return e.type==="dynamic-tool"}function kl(e){return Hr(e)||dy(e)}function zn(e){return e.type.split("-").slice(1).join("-")}function py({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function fy({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:n,onError:o,onToolCall:a,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,u){await n(async({state:l,write:c})=>{var p,d,m,_;function v(f){const E=l.message.parts.filter(kl).find(b=>b.toolCallId===f);if(E==null)throw new gt({chunkType:"tool-invocation",chunkId:f,message:`No tool invocation found for tool call ID "${f}".`});return E}function y(f){var A;const E=l.message.parts.find(B=>Hr(B)&&B.toolCallId===f.toolCallId),b=f,R=E;E!=null?(E.state=f.state,R.input=b.input,R.output=b.output,R.errorText=b.errorText,R.rawInput=b.rawInput,R.preliminary=b.preliminary,f.title!==void 0&&(R.title=f.title),R.providerExecuted=(A=b.providerExecuted)!=null?A:E.providerExecuted,b.providerMetadata!=null&&(E.callProviderMetadata=b.providerMetadata)):l.message.parts.push({type:`tool-${f.toolName}`,toolCallId:f.toolCallId,state:f.state,title:f.title,input:b.input,output:b.output,rawInput:b.rawInput,errorText:b.errorText,providerExecuted:b.providerExecuted,preliminary:b.preliminary,...b.providerMetadata!=null?{callProviderMetadata:b.providerMetadata}:{}})}function z(f){var A,E;const b=l.message.parts.find(K=>K.type==="dynamic-tool"&&K.toolCallId===f.toolCallId),R=f,B=b;b!=null?(b.state=f.state,B.toolName=f.toolName,B.input=R.input,B.output=R.output,B.errorText=R.errorText,B.rawInput=(A=R.rawInput)!=null?A:B.rawInput,B.preliminary=R.preliminary,f.title!==void 0&&(B.title=f.title),B.providerExecuted=(E=R.providerExecuted)!=null?E:b.providerExecuted,R.providerMetadata!=null&&(b.callProviderMetadata=R.providerMetadata)):l.message.parts.push({type:"dynamic-tool",toolName:f.toolName,toolCallId:f.toolCallId,state:f.state,input:R.input,output:R.output,errorText:R.errorText,preliminary:R.preliminary,providerExecuted:R.providerExecuted,title:f.title,...R.providerMetadata!=null?{callProviderMetadata:R.providerMetadata}:{}})}async function $(f){if(f!=null){const A=l.message.metadata!=null?nn(l.message.metadata,f):f;t!=null&&await Rn({value:A,schema:t}),l.message.metadata=A}}switch(i.type){case"text-start":{const f={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};l.activeTextParts[i.id]=f,l.message.parts.push(f),c();break}case"text-delta":{const f=l.activeTextParts[i.id];if(f==null)throw new gt({chunkType:"text-delta",chunkId:i.id,message:`Received text-delta for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});f.text+=i.delta,f.providerMetadata=(p=i.providerMetadata)!=null?p:f.providerMetadata,c();break}case"text-end":{const f=l.activeTextParts[i.id];if(f==null)throw new gt({chunkType:"text-end",chunkId:i.id,message:`Received text-end for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});f.state="done",f.providerMetadata=(d=i.providerMetadata)!=null?d:f.providerMetadata,delete l.activeTextParts[i.id],c();break}case"reasoning-start":{const f={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};l.activeReasoningParts[i.id]=f,l.message.parts.push(f),c();break}case"reasoning-delta":{const f=l.activeReasoningParts[i.id];if(f==null)throw new gt({chunkType:"reasoning-delta",chunkId:i.id,message:`Received reasoning-delta for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});f.text+=i.delta,f.providerMetadata=(m=i.providerMetadata)!=null?m:f.providerMetadata,c();break}case"reasoning-end":{const f=l.activeReasoningParts[i.id];if(f==null)throw new gt({chunkType:"reasoning-end",chunkId:i.id,message:`Received reasoning-end for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});f.providerMetadata=(_=i.providerMetadata)!=null?_:f.providerMetadata,f.state="done",delete l.activeReasoningParts[i.id],c();break}case"file":{l.message.parts.push({type:"file",mediaType:i.mediaType,url:i.url}),c();break}case"source-url":{l.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),c();break}case"source-document":{l.message.parts.push({type:"source-document",sourceId:i.sourceId,mediaType:i.mediaType,title:i.title,filename:i.filename,providerMetadata:i.providerMetadata}),c();break}case"tool-input-start":{const f=l.message.parts.filter(Hr);l.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:f.length,dynamic:i.dynamic,title:i.title},i.dynamic?z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,providerMetadata:i.providerMetadata}):y({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,providerMetadata:i.providerMetadata}),c();break}case"tool-input-delta":{const f=l.partialToolCalls[i.toolCallId];if(f==null)throw new gt({chunkType:"tool-input-delta",chunkId:i.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${i.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});f.text+=i.inputTextDelta;const{value:A}=await qt(f.text);f.dynamic?z({toolCallId:i.toolCallId,toolName:f.toolName,state:"input-streaming",input:A,title:f.title}):y({toolCallId:i.toolCallId,toolName:f.toolName,state:"input-streaming",input:A,title:f.title}),c();break}case"tool-input-available":{i.dynamic?z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title}):y({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title}),c(),a&&!i.providerExecuted&&await a({toolCall:i});break}case"tool-input-error":{i.dynamic?z({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata}):y({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:void 0,rawInput:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata}),c();break}case"tool-approval-request":{const f=v(i.toolCallId);f.state="approval-requested",f.approval={id:i.approvalId},c();break}case"tool-output-denied":{const f=v(i.toolCallId);f.state="output-denied",c();break}case"tool-output-available":{const f=v(i.toolCallId);f.type==="dynamic-tool"?z({toolCallId:i.toolCallId,toolName:f.toolName,state:"output-available",input:f.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,title:f.title}):y({toolCallId:i.toolCallId,toolName:zn(f),state:"output-available",input:f.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,title:f.title}),c();break}case"tool-output-error":{const f=v(i.toolCallId);f.type==="dynamic-tool"?z({toolCallId:i.toolCallId,toolName:f.toolName,state:"output-error",input:f.input,errorText:i.errorText,providerExecuted:i.providerExecuted,title:f.title}):y({toolCallId:i.toolCallId,toolName:zn(f),state:"output-error",input:f.input,rawInput:f.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,title:f.title}),c();break}case"start-step":{l.message.parts.push({type:"step-start"});break}case"finish-step":{l.activeTextParts={},l.activeReasoningParts={};break}case"start":{i.messageId!=null&&(l.message.id=i.messageId),await $(i.messageMetadata),(i.messageId!=null||i.messageMetadata!=null)&&c();break}case"finish":{i.finishReason!=null&&(l.finishReason=i.finishReason),await $(i.messageMetadata),i.messageMetadata!=null&&c();break}case"message-metadata":{await $(i.messageMetadata),i.messageMetadata!=null&&c();break}case"error":{o==null||o(new Error(i.errorText));break}default:if(cy(i)){(r==null?void 0:r[i.type])!=null&&await Rn({value:i.data,schema:r[i.type]});const f=i;if(f.transient){s==null||s(f);break}const A=f.id!=null?l.message.parts.find(E=>f.type===E.type&&f.id===E.id):void 0;A!=null?A.data=f.data:l.message.parts.push(f),s==null||s(f),c()}}u.enqueue(i)})}}))}function my({messageId:e,originalMessages:t=[],onFinish:r,onError:n,stream:o}){let a=t==null?void 0:t[t.length-1];(a==null?void 0:a.role)!=="assistant"?a=void 0:e=a.id;let s=!1;const i=o.pipeThrough(new TransformStream({transform(d,m){if(d.type==="start"){const _=d;_.messageId==null&&e!=null&&(_.messageId=e)}d.type==="abort"&&(s=!0),m.enqueue(d)}}));if(r==null)return i;const u=py({lastMessage:a?structuredClone(a):void 0,messageId:e??""}),l=async d=>{await d({state:u,write:()=>{}})};let c=!1;const p=async()=>{if(c||!r)return;c=!0;const d=u.message.id===(a==null?void 0:a.id);await r({isAborted:s,isContinuation:d,responseMessage:u.message,messages:[...d?t.slice(0,-1):t,u.message],finishReason:u.finishReason})};return fy({stream:i,runUpdateMessageJob:l,onError:n}).pipeThrough(new TransformStream({transform(d,m){m.enqueue(d)},async cancel(){await p()},async flush(){await p()}}))}function xl({response:e,status:t,statusText:r,headers:n,stream:o,consumeSseStream:a}){let s=o.pipeThrough(new lo);if(a){const[i,u]=s.tee();s=i,a({stream:u})}Tl({response:e,status:t,statusText:r,headers:Object.fromEntries(on(n,co).entries()),stream:s.pipeThrough(new TextEncoderStream)})}function Qt(e){const t=e.pipeThrough(new TransformStream);return t[Symbol.asyncIterator]=function(){const r=this.getReader();let n=!1;async function o(a){var s;if(!n){n=!0;try{a&&await((s=r.cancel)==null?void 0:s.call(r))}finally{try{r.releaseLock()}catch{}}}}return{async next(){if(n)return{done:!0,value:void 0};const{done:a,value:s}=await r.read();return a?(await o(!0),{done:!0,value:void 0}):{done:!1,value:s}},async return(){return await o(!0),{done:!0,value:void 0}},async throw(a){throw await o(!0),a}}},t}async function Ol({stream:e,onError:t}){const r=e.getReader();try{for(;;){const{done:n}=await r.read();if(n)break}}catch(n){t==null||t(n)}finally{r.releaseLock()}}function Xa(){let e,t;return{promise:new Promise((n,o)=>{e=n,t=o}),resolve:e,reject:t}}function hy(){let e=[],t=null,r=!1,n=Xa();const o=()=>{r=!0,n.resolve(),e.forEach(s=>s.cancel()),e=[],t==null||t.close()},a=async()=>{if(r&&e.length===0){t==null||t.close();return}if(e.length===0)return n=Xa(),await n.promise,a();try{const{value:s,done:i}=await e[0].read();i?(e.shift(),e.length===0&&r?t==null||t.close():await a()):t==null||t.enqueue(s)}catch(s){t==null||t.error(s),e.shift(),o()}};return{stream:new ReadableStream({start(s){t=s},pull:a,async cancel(){for(const s of e)await s.cancel();e=[],r=!0}}),addStream:s=>{if(r)throw new Error("Cannot add inner stream: outer stream is closed");e.push(s.getReader()),n.resolve()},close:()=>{r=!0,n.resolve(),e.length===0&&(t==null||t.close())},terminate:o}}function vy(){var e,t;return(t=(e=globalThis==null?void 0:globalThis.performance)==null?void 0:e.now())!=null?t:Date.now()}function gy({tools:e,generatorStream:t,tracer:r,telemetry:n,system:o,messages:a,abortSignal:s,repairToolCall:i,experimental_context:u,generateId:l}){let c=null;const p=new ReadableStream({start(f){c=f}}),d=new Set,m=new Map,_=new Map;let v=!1,y;function z(){v&&d.size===0&&(y!=null&&c.enqueue(y),c.close())}const $=new TransformStream({async transform(f,A){const E=f.type;switch(E){case"stream-start":case"text-start":case"text-delta":case"text-end":case"reasoning-start":case"reasoning-delta":case"reasoning-end":case"tool-input-start":case"tool-input-delta":case"tool-input-end":case"source":case"response-metadata":case"error":case"raw":{A.enqueue(f);break}case"file":{A.enqueue({type:"file",file:new Qg({data:f.data,mediaType:f.mediaType})});break}case"finish":{y={type:"finish",finishReason:f.finishReason.unified,rawFinishReason:f.finishReason.raw,usage:ll(f.usage),providerMetadata:f.providerMetadata};break}case"tool-approval-request":{const b=_.get(f.toolCallId);if(b==null){c.enqueue({type:"error",error:new rn({toolCallId:f.toolCallId,approvalId:f.approvalId})});break}A.enqueue({type:"tool-approval-request",approvalId:f.approvalId,toolCall:b});break}case"tool-call":{try{const b=await gl({toolCall:f,tools:e,repairToolCall:i,system:o,messages:a});if(_.set(b.toolCallId,b),A.enqueue(b),b.invalid){c.enqueue({type:"tool-error",toolCallId:b.toolCallId,toolName:b.toolName,input:b.input,error:Gn(b.error),dynamic:!0,title:b.title});break}const R=e==null?void 0:e[b.toolName];if(R==null)break;if(R.onInputAvailable!=null&&await R.onInputAvailable({input:b.input,toolCallId:b.toolCallId,messages:a,abortSignal:s,experimental_context:u}),await hl({tool:R,toolCall:b,messages:a,experimental_context:u})){c.enqueue({type:"tool-approval-request",approvalId:l(),toolCall:b});break}if(m.set(b.toolCallId,b.input),R.execute!=null&&b.providerExecuted!==!0){const B=l();d.add(B),io({toolCall:b,tools:e,tracer:r,telemetry:n,messages:a,abortSignal:s,experimental_context:u,onPreliminaryToolResult:K=>{c.enqueue(K)}}).then(K=>{c.enqueue(K)}).catch(K=>{c.enqueue({type:"error",error:K})}).finally(()=>{d.delete(B),z()})}}catch(b){c.enqueue({type:"error",error:b})}break}case"tool-result":{const b=f.toolName;f.isError?c.enqueue({type:"tool-error",toolCallId:f.toolCallId,toolName:b,input:m.get(f.toolCallId),providerExecuted:!0,error:f.result,dynamic:f.dynamic}):A.enqueue({type:"tool-result",toolCallId:f.toolCallId,toolName:b,input:m.get(f.toolCallId),output:f.result,providerExecuted:!0,dynamic:f.dynamic});break}default:{const b=E;throw new Error(`Unhandled chunk type: ${b}`)}}},flush(){v=!0,z()}});return new ReadableStream({async start(f){return Promise.all([t.pipeThrough($).pipeTo(new WritableStream({write(A){f.enqueue(A)},close(){}})),p.pipeTo(new WritableStream({write(A){f.enqueue(A)},close(){f.close()}}))])}})}var yy=Ft({prefix:"aitxt",size:24});function _y({model:e,tools:t,toolChoice:r,system:n,prompt:o,messages:a,maxRetries:s,abortSignal:i,timeout:u,headers:l,stopWhen:c=uo(1),experimental_output:p,output:d=p,experimental_telemetry:m,prepareStep:_,providerOptions:v,experimental_activeTools:y,activeTools:z=y,experimental_repairToolCall:$,experimental_transform:f,experimental_download:A,includeRawChunks:E=!1,onChunk:b,onError:R=({error:Se})=>{console.error(Se)},onFinish:B,onAbort:K,onStepFinish:je,experimental_context:Et,_internal:{now:lt=vy,generateId:Ge=yy}={},...ye}){const Se=so(u),We=Lu(u),fe=Rg(u),Ue=We!=null?new AbortController:void 0,Pe=fe!=null?new AbortController:void 0;return new wy({model:Gr(e),telemetry:m,headers:l,settings:ye,maxRetries:s,abortSignal:wl(i,Se!=null?AbortSignal.timeout(Se):void 0,Ue==null?void 0:Ue.signal,Pe==null?void 0:Pe.signal),stepTimeoutMs:We,stepAbortController:Ue,chunkTimeoutMs:fe,chunkAbortController:Pe,system:n,prompt:o,messages:a,tools:t,toolChoice:r,transforms:fr(f),activeTools:z,repairToolCall:$,stopConditions:fr(c),output:d,providerOptions:v,prepareStep:_,includeRawChunks:E,onChunk:b,onError:R,onFinish:B,onAbort:K,onStepFinish:je,now:lt,generateId:Ge,experimental_context:Et,download:A})}function by(e){let t,r="",n="",o,a="";function s({controller:i,partialOutput:u=void 0}){i.enqueue({part:{type:"text-delta",id:t,text:n,providerMetadata:o},partialOutput:u}),n=""}return new TransformStream({async transform(i,u){var l;if(i.type==="finish-step"&&n.length>0&&s({controller:u}),i.type!=="text-delta"&&i.type!=="text-start"&&i.type!=="text-end"){u.enqueue({part:i,partialOutput:void 0});return}if(t==null)t=i.id;else if(i.id!==t){u.enqueue({part:i,partialOutput:void 0});return}if(i.type==="text-start"){u.enqueue({part:i,partialOutput:void 0});return}if(i.type==="text-end"){n.length>0&&s({controller:u}),u.enqueue({part:i,partialOutput:void 0});return}r+=i.text,n+=i.text,o=(l=i.providerMetadata)!=null?l:o;const c=await e.parsePartialOutput({text:r});if(c!==void 0){const p=JSON.stringify(c.partial);p!==a&&(s({controller:u,partialOutput:c.partial}),a=p)}}})}var wy=class{constructor({model:e,telemetry:t,headers:r,settings:n,maxRetries:o,abortSignal:a,stepTimeoutMs:s,stepAbortController:i,chunkTimeoutMs:u,chunkAbortController:l,system:c,prompt:p,messages:d,tools:m,toolChoice:_,transforms:v,activeTools:y,repairToolCall:z,stopConditions:$,output:f,providerOptions:A,prepareStep:E,includeRawChunks:b,now:R,generateId:B,onChunk:K,onError:je,onFinish:Et,onAbort:lt,onStepFinish:Ge,experimental_context:ye,download:Se}){this._totalUsage=new Kt,this._finishReason=new Kt,this._rawFinishReason=new Kt,this._steps=new Kt,this.outputSpecification=f,this.includeRawChunks=b,this.tools=m;let We,fe=[];const Ue=[];let Pe,Lt,kt,ct={},dt=[];const me=[],xt=new Map;let Ot,Fe={},qe={};const _r=new TransformStream({async transform(C,W){var G,x,oe,Z;W.enqueue(C);const{part:w}=C;if((w.type==="text-delta"||w.type==="reasoning-delta"||w.type==="source"||w.type==="tool-call"||w.type==="tool-result"||w.type==="tool-input-start"||w.type==="tool-input-delta"||w.type==="raw")&&await(K==null?void 0:K({chunk:w})),w.type==="error"&&await je({error:ol(w.error)}),w.type==="text-start"&&(Fe[w.id]={type:"text",text:"",providerMetadata:w.providerMetadata},fe.push(Fe[w.id])),w.type==="text-delta"){const U=Fe[w.id];if(U==null){W.enqueue({part:{type:"error",error:`text part ${w.id} not found`},partialOutput:void 0});return}U.text+=w.text,U.providerMetadata=(G=w.providerMetadata)!=null?G:U.providerMetadata}if(w.type==="text-end"){const U=Fe[w.id];if(U==null){W.enqueue({part:{type:"error",error:`text part ${w.id} not found`},partialOutput:void 0});return}U.providerMetadata=(x=w.providerMetadata)!=null?x:U.providerMetadata,delete Fe[w.id]}if(w.type==="reasoning-start"&&(qe[w.id]={type:"reasoning",text:"",providerMetadata:w.providerMetadata},fe.push(qe[w.id])),w.type==="reasoning-delta"){const U=qe[w.id];if(U==null){W.enqueue({part:{type:"error",error:`reasoning part ${w.id} not found`},partialOutput:void 0});return}U.text+=w.text,U.providerMetadata=(oe=w.providerMetadata)!=null?oe:U.providerMetadata}if(w.type==="reasoning-end"){const U=qe[w.id];if(U==null){W.enqueue({part:{type:"error",error:`reasoning part ${w.id} not found`},partialOutput:void 0});return}U.providerMetadata=(Z=w.providerMetadata)!=null?Z:U.providerMetadata,delete qe[w.id]}if(w.type==="file"&&fe.push({type:"file",file:w.file}),w.type==="source"&&fe.push(w),w.type==="tool-call"&&fe.push(w),w.type==="tool-result"&&!w.preliminary&&fe.push(w),w.type==="tool-approval-request"&&fe.push(w),w.type==="tool-error"&&fe.push(w),w.type==="start-step"&&(fe=[],qe={},Fe={},ct=w.request,dt=w.warnings),w.type==="finish-step"){const U=await Pn({content:fe,tools:m}),q=new _l({content:fe,finishReason:w.finishReason,rawFinishReason:w.rawFinishReason,usage:w.usage,warnings:dt,request:ct,response:{...w.response,messages:[...Ue,...U]},providerMetadata:w.providerMetadata});await(Ge==null?void 0:Ge(q)),ao({warnings:dt,provider:e.provider,model:e.modelId}),me.push(q),Ue.push(...U),We.resolve()}w.type==="finish"&&(kt=w.totalUsage,Pe=w.finishReason,Lt=w.rawFinishReason)},async flush(C){try{if(me.length===0){const oe=a!=null&&a.aborted?a.reason:new oo({message:"No output generated. Check the stream for errors."});ce._finishReason.reject(oe),ce._rawFinishReason.reject(oe),ce._totalUsage.reject(oe),ce._steps.reject(oe);return}const W=Pe??"other",G=kt??Tn();ce._finishReason.resolve(W),ce._rawFinishReason.resolve(Lt),ce._totalUsage.resolve(G),ce._steps.resolve(me);const x=me[me.length-1];await(Et==null?void 0:Et({finishReason:x.finishReason,rawFinishReason:x.rawFinishReason,totalUsage:G,usage:x.usage,content:x.content,text:x.text,reasoningText:x.reasoningText,reasoning:x.reasoning,files:x.files,sources:x.sources,toolCalls:x.toolCalls,staticToolCalls:x.staticToolCalls,dynamicToolCalls:x.dynamicToolCalls,toolResults:x.toolResults,staticToolResults:x.staticToolResults,dynamicToolResults:x.dynamicToolResults,request:x.request,response:x.response,warnings:x.warnings,providerMetadata:x.providerMetadata,steps:me,experimental_context:ye})),Ot.setAttributes(await Ze({telemetry:t,attributes:{"ai.response.finishReason":W,"ai.response.text":{output:()=>x.text},"ai.response.toolCalls":{output:()=>{var oe;return(oe=x.toolCalls)!=null&&oe.length?JSON.stringify(x.toolCalls):void 0}},"ai.response.providerMetadata":JSON.stringify(x.providerMetadata),"ai.usage.inputTokens":G.inputTokens,"ai.usage.outputTokens":G.outputTokens,"ai.usage.totalTokens":G.totalTokens,"ai.usage.reasoningTokens":G.reasoningTokens,"ai.usage.cachedInputTokens":G.cachedInputTokens}}))}catch(W){C.error(W)}finally{Ot.end()}}}),He=hy();this.addStream=He.addStream,this.closeStream=He.close;const br=He.stream.getReader();let pt=new ReadableStream({async start(C){C.enqueue({type:"start"})},async pull(C){function W(){lt==null||lt({steps:me}),C.enqueue({type:"abort",...(a==null?void 0:a.reason)!==void 0?{reason:wt(a.reason)}:{}}),C.close()}try{const{done:G,value:x}=await br.read();if(G){C.close();return}if(a!=null&&a.aborted){W();return}C.enqueue(x)}catch(G){It(G)&&(a!=null&&a.aborted)?W():C.error(G)}},cancel(C){return He.stream.cancel(C)}});for(const C of v)pt=pt.pipeThrough(C({tools:m,stopStream(){He.terminate()}}));this.baseStream=pt.pipeThrough(by(f??Wr())).pipeThrough(_r);const{maxRetries:ft,retry:wr}=pl({maxRetries:o,abortSignal:a}),Ye=sl(t),Ee=Mn(n),Vt=al({model:e,telemetry:t,headers:r,settings:{...Ee,maxRetries:ft}}),ce=this;vr({name:"ai.streamText",attributes:Ze({telemetry:t,attributes:{...hr({operationId:"ai.streamText",telemetry:t}),...Vt,"ai.prompt":{input:()=>JSON.stringify({system:c,prompt:p,messages:d})}}}),tracer:Ye,endWhenDone:!1,fn:async C=>{Ot=C;const W=await nl({system:c,prompt:p,messages:d}),G=W.messages,x=[],{approvedToolApprovals:oe,deniedToolApprovals:Z}=fl({messages:G});if(Z.length>0||oe.length>0){const U=[...oe,...Z].filter(ee=>ee.toolCall.providerExecuted),q=oe.filter(ee=>!ee.toolCall.providerExecuted),ae=Z.filter(ee=>!ee.toolCall.providerExecuted),M=Z.filter(ee=>ee.toolCall.providerExecuted);let H;const mt=new ReadableStream({start(ee){H=ee}});ce.addStream(mt);try{for(const ne of[...ae,...M])H==null||H.enqueue({type:"tool-output-denied",toolCallId:ne.toolCall.toolCallId,toolName:ne.toolCall.toolName});const ee=[];if(await Promise.all(q.map(async ne=>{const V=await io({toolCall:ne.toolCall,tools:m,tracer:Ye,telemetry:t,messages:G,abortSignal:a,experimental_context:ye,onPreliminaryToolResult:Ke=>{H==null||H.enqueue(Ke)}});V!=null&&(H==null||H.enqueue(V),ee.push(V))})),U.length>0&&x.push({role:"tool",content:U.map(ne=>({type:"tool-approval-response",approvalId:ne.approvalResponse.approvalId,approved:ne.approvalResponse.approved,reason:ne.approvalResponse.reason,providerExecuted:!0}))}),ee.length>0||ae.length>0){const ne=[];for(const V of ee)ne.push({type:"tool-result",toolCallId:V.toolCallId,toolName:V.toolName,output:await nr({toolCallId:V.toolCallId,input:V.input,tool:m==null?void 0:m[V.toolName],output:V.type==="tool-result"?V.output:V.error,errorMode:V.type==="tool-error"?"json":"none"})});for(const V of ae)ne.push({type:"tool-result",toolCallId:V.toolCall.toolCallId,toolName:V.toolCall.toolName,output:{type:"execution-denied",reason:V.approvalResponse.reason}});x.push({role:"tool",content:ne})}}finally{H==null||H.close()}}Ue.push(...x);async function w({currentStep:U,responseMessages:q,usage:ae}){var M,H,mt,ee,ne,V;const Ke=ce.includeRawChunks,Ir=s!=null?setTimeout(()=>i.abort(),s):void 0;let Le;function Tr(){u!=null&&(Le!=null&&clearTimeout(Le),Le=setTimeout(()=>l.abort(),u))}function N(){Le!=null&&(clearTimeout(Le),Le=void 0)}function he(){Ir!=null&&clearTimeout(Ir)}We=new Kt;const Ve=[...G,...q],te=await(E==null?void 0:E({model:e,steps:me,stepNumber:me.length,messages:Ve,experimental_context:ye})),Je=Gr((M=te==null?void 0:te.model)!=null?M:e),Jt=await Gu({prompt:{system:(H=te==null?void 0:te.system)!=null?H:W.system,messages:(mt=te==null?void 0:te.messages)!=null?mt:Ve},supportedUrls:await Je.supportedUrls,download:Se}),{toolChoice:At,tools:Rt}=await Wu({tools:m,toolChoice:(ee=te==null?void 0:te.toolChoice)!=null?ee:_,activeTools:(ne=te==null?void 0:te.activeTools)!=null?ne:y});ye=(V=te==null?void 0:te.experimental_context)!=null?V:ye;const Sr=nn(A,te==null?void 0:te.providerOptions),{result:{stream:Er,response:kr,request:se},doStreamSpan:be,startTimestampMs:Bt}=await wr(()=>vr({name:"ai.streamText.doStream",attributes:Ze({telemetry:t,attributes:{...hr({operationId:"ai.streamText.doStream",telemetry:t}),...Vt,"ai.model.provider":Je.provider,"ai.model.id":Je.modelId,"ai.prompt.messages":{input:()=>ul(Jt)},"ai.prompt.tools":{input:()=>Rt==null?void 0:Rt.map(S=>JSON.stringify(S))},"ai.prompt.toolChoice":{input:()=>At!=null?JSON.stringify(At):void 0},"gen_ai.system":Je.provider,"gen_ai.request.model":Je.modelId,"gen_ai.request.frequency_penalty":Ee.frequencyPenalty,"gen_ai.request.max_tokens":Ee.maxOutputTokens,"gen_ai.request.presence_penalty":Ee.presencePenalty,"gen_ai.request.stop_sequences":Ee.stopSequences,"gen_ai.request.temperature":Ee.temperature,"gen_ai.request.top_k":Ee.topK,"gen_ai.request.top_p":Ee.topP}}),tracer:Ye,endWhenDone:!1,fn:async S=>({startTimestampMs:R(),doStreamSpan:S,result:await Je.doStream({...Ee,tools:Rt,toolChoice:At,responseFormat:await(f==null?void 0:f.responseFormat),prompt:Jt,providerOptions:Sr,abortSignal:a,headers:r,includeRawChunks:Ke})})})),Al=gy({tools:m,generatorStream:Er,tracer:Ye,telemetry:t,system:c,messages:Ve,repairToolCall:z,abortSignal:a,experimental_context:ye,generateId:B}),Rl=se??{},Gt=[],Wt=[];let an;const sn={};let $t="other",un,Oe=Tn(),ln,po=!0,ze={id:B(),timestamp:new Date,modelId:e.modelId},fo="";ce.addStream(Al.pipeThrough(new TransformStream({async transform(S,de){var Ht,Yt,xr,ie,Ct;if(Tr(),S.type==="stream-start"){an=S.warnings;return}if(po){const re=R()-Bt;po=!1,be.addEvent("ai.stream.firstChunk",{"ai.response.msToFirstChunk":re}),be.setAttributes({"ai.response.msToFirstChunk":re}),de.enqueue({type:"start-step",request:Rl,warnings:an??[]})}const cn=S.type;switch(cn){case"tool-approval-request":case"text-start":case"text-end":{de.enqueue(S);break}case"text-delta":{S.delta.length>0&&(de.enqueue({type:"text-delta",id:S.id,text:S.delta,providerMetadata:S.providerMetadata}),fo+=S.delta);break}case"reasoning-start":case"reasoning-end":{de.enqueue(S);break}case"reasoning-delta":{de.enqueue({type:"reasoning-delta",id:S.id,text:S.delta,providerMetadata:S.providerMetadata});break}case"tool-call":{de.enqueue(S),Gt.push(S);break}case"tool-result":{de.enqueue(S),S.preliminary||Wt.push(S);break}case"tool-error":{de.enqueue(S),Wt.push(S);break}case"response-metadata":{ze={id:(Ht=S.id)!=null?Ht:ze.id,timestamp:(Yt=S.timestamp)!=null?Yt:ze.timestamp,modelId:(xr=S.modelId)!=null?xr:ze.modelId};break}case"finish":{Oe=S.usage,$t=S.finishReason,un=S.rawFinishReason,ln=S.providerMetadata;const re=R()-Bt;be.addEvent("ai.stream.finish"),be.setAttributes({"ai.response.msToFinish":re,"ai.response.avgOutputTokensPerSecond":1e3*((ie=Oe.outputTokens)!=null?ie:0)/re});break}case"file":{de.enqueue(S);break}case"source":{de.enqueue(S);break}case"tool-input-start":{sn[S.id]=S.toolName;const re=m==null?void 0:m[S.toolName];(re==null?void 0:re.onInputStart)!=null&&await re.onInputStart({toolCallId:S.id,messages:Ve,abortSignal:a,experimental_context:ye}),de.enqueue({...S,dynamic:(Ct=S.dynamic)!=null?Ct:(re==null?void 0:re.type)==="dynamic",title:re==null?void 0:re.title});break}case"tool-input-end":{delete sn[S.id],de.enqueue(S);break}case"tool-input-delta":{const re=sn[S.id],dn=m==null?void 0:m[re];(dn==null?void 0:dn.onInputDelta)!=null&&await dn.onInputDelta({inputTextDelta:S.delta,toolCallId:S.id,messages:Ve,abortSignal:a,experimental_context:ye}),de.enqueue(S);break}case"error":{de.enqueue(S),$t="error";break}case"raw":{Ke&&de.enqueue(S);break}default:{const re=cn;throw new Error(`Unknown chunk type: ${re}`)}}},async flush(S){const de=Gt.length>0?JSON.stringify(Gt):void 0;try{be.setAttributes(await Ze({telemetry:t,attributes:{"ai.response.finishReason":$t,"ai.response.text":{output:()=>fo},"ai.response.toolCalls":{output:()=>de},"ai.response.id":ze.id,"ai.response.model":ze.modelId,"ai.response.timestamp":ze.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(ln),"ai.usage.inputTokens":Oe.inputTokens,"ai.usage.outputTokens":Oe.outputTokens,"ai.usage.totalTokens":Oe.totalTokens,"ai.usage.reasoningTokens":Oe.reasoningTokens,"ai.usage.cachedInputTokens":Oe.cachedInputTokens,"gen_ai.response.finish_reasons":[$t],"gen_ai.response.id":ze.id,"gen_ai.response.model":ze.modelId,"gen_ai.usage.input_tokens":Oe.inputTokens,"gen_ai.usage.output_tokens":Oe.outputTokens}}))}catch{}finally{be.end()}S.enqueue({type:"finish-step",finishReason:$t,rawFinishReason:un,usage:Oe,providerMetadata:ln,response:{...ze,headers:kr==null?void 0:kr.headers}});const Ht=cl(ae,Oe);await We.promise;const Yt=Gt.filter(ie=>ie.providerExecuted!==!0),xr=Wt.filter(ie=>ie.providerExecuted!==!0);for(const ie of Gt){if(ie.providerExecuted!==!0)continue;const Ct=m==null?void 0:m[ie.toolName];(Ct==null?void 0:Ct.type)==="provider"&&Ct.supportsDeferredResults&&(Wt.some(re=>re.type==="tool-result"&&re.toolCallId===ie.toolCallId)||xt.set(ie.toolCallId,{toolName:ie.toolName}))}for(const ie of Wt)ie.type==="tool-result"&&xt.delete(ie.toolCallId);if(he(),N(),(Yt.length>0&&xr.length===Yt.length||xt.size>0)&&!await bl({stopConditions:$,steps:me})){q.push(...await Pn({content:me[me.length-1].content,tools:m}));try{await w({currentStep:U+1,responseMessages:q,usage:Ht})}catch(ie){S.enqueue({type:"error",error:ie}),ce.closeStream()}}else S.enqueue({type:"finish",finishReason:$t,rawFinishReason:un,totalUsage:Ht}),ce.closeStream()}})))}await w({currentStep:0,responseMessages:x,usage:Tn()})}}).catch(C=>{ce.addStream(new ReadableStream({start(W){W.enqueue({type:"error",error:C}),W.close()}})),ce.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then(e=>e[e.length-1])}get content(){return this.finalStep.then(e=>e.content)}get warnings(){return this.finalStep.then(e=>e.warnings)}get providerMetadata(){return this.finalStep.then(e=>e.providerMetadata)}get text(){return this.finalStep.then(e=>e.text)}get reasoningText(){return this.finalStep.then(e=>e.reasoningText)}get reasoning(){return this.finalStep.then(e=>e.reasoning)}get sources(){return this.finalStep.then(e=>e.sources)}get files(){return this.finalStep.then(e=>e.files)}get toolCalls(){return this.finalStep.then(e=>e.toolCalls)}get staticToolCalls(){return this.finalStep.then(e=>e.staticToolCalls)}get dynamicToolCalls(){return this.finalStep.then(e=>e.dynamicToolCalls)}get toolResults(){return this.finalStep.then(e=>e.toolResults)}get staticToolResults(){return this.finalStep.then(e=>e.staticToolResults)}get dynamicToolResults(){return this.finalStep.then(e=>e.dynamicToolResults)}get usage(){return this.finalStep.then(e=>e.usage)}get request(){return this.finalStep.then(e=>e.request)}get response(){return this.finalStep.then(e=>e.response)}get totalUsage(){return this.consumeStream(),this._totalUsage.promise}get finishReason(){return this.consumeStream(),this._finishReason.promise}get rawFinishReason(){return this.consumeStream(),this._rawFinishReason.promise}teeStream(){const[e,t]=this.baseStream.tee();return this.baseStream=t,e}get textStream(){return Qt(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){e.type==="text-delta"&&t.enqueue(e.text)}})))}get fullStream(){return Qt(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){t.enqueue(e)}})))}async consumeStream(e){var t;try{await Ol({stream:this.fullStream,onError:e==null?void 0:e.onError})}catch(r){(t=e==null?void 0:e.onError)==null||t.call(e,r)}}get experimental_partialOutputStream(){return this.partialOutputStream}get partialOutputStream(){return Qt(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:e},t){e!=null&&t.enqueue(e)}})))}get elementStream(){var e,t,r;const n=(e=this.outputSpecification)==null?void 0:e.createElementStreamTransform();if(n==null)throw new Es({functionality:`element streams in ${(r=(t=this.outputSpecification)==null?void 0:t.name)!=null?r:"text"} mode`});return Qt(this.teeStream().pipeThrough(n))}get output(){return this.finalStep.then(e=>{var t;return((t=this.outputSpecification)!=null?t:Wr()).parseCompleteOutput({text:e.text},{response:e.response,usage:e.usage,finishReason:e.finishReason})})}toUIMessageStream({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:o=!0,sendSources:a=!1,sendStart:s=!0,sendFinish:i=!0,onError:u=wt}={}){const l=t!=null?ly({originalMessages:e,responseMessageId:t}):void 0,c=d=>{var m;const _=(m=this.tools)==null?void 0:m[d.toolName];return _==null?d.dynamic:(_==null?void 0:_.type)==="dynamic"?!0:void 0},p=this.fullStream.pipeThrough(new TransformStream({transform:async(d,m)=>{const _=n==null?void 0:n({part:d}),v=d.type;switch(v){case"text-start":{m.enqueue({type:"text-start",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"text-delta":{m.enqueue({type:"text-delta",id:d.id,delta:d.text,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"text-end":{m.enqueue({type:"text-end",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-start":{m.enqueue({type:"reasoning-start",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-delta":{o&&m.enqueue({type:"reasoning-delta",id:d.id,delta:d.text,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-end":{m.enqueue({type:"reasoning-end",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"file":{m.enqueue({type:"file",mediaType:d.file.mediaType,url:`data:${d.file.mediaType};base64,${d.file.base64}`});break}case"source":{a&&d.sourceType==="url"&&m.enqueue({type:"source-url",sourceId:d.id,url:d.url,title:d.title,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}}),a&&d.sourceType==="document"&&m.enqueue({type:"source-document",sourceId:d.id,mediaType:d.mediaType,title:d.title,filename:d.filename,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"tool-input-start":{const y=c(d);m.enqueue({type:"tool-input-start",toolCallId:d.id,toolName:d.toolName,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...y!=null?{dynamic:y}:{},...d.title!=null?{title:d.title}:{}});break}case"tool-input-delta":{m.enqueue({type:"tool-input-delta",toolCallId:d.id,inputTextDelta:d.delta});break}case"tool-call":{const y=c(d);d.invalid?m.enqueue({type:"tool-input-error",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...y!=null?{dynamic:y}:{},errorText:u(d.error),...d.title!=null?{title:d.title}:{}}):m.enqueue({type:"tool-input-available",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...y!=null?{dynamic:y}:{},...d.title!=null?{title:d.title}:{}});break}case"tool-approval-request":{m.enqueue({type:"tool-approval-request",approvalId:d.approvalId,toolCallId:d.toolCall.toolCallId});break}case"tool-result":{const y=c(d);m.enqueue({type:"tool-output-available",toolCallId:d.toolCallId,output:d.output,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.preliminary!=null?{preliminary:d.preliminary}:{},...y!=null?{dynamic:y}:{}});break}case"tool-error":{const y=c(d);m.enqueue({type:"tool-output-error",toolCallId:d.toolCallId,errorText:u(d.error),...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...y!=null?{dynamic:y}:{}});break}case"tool-output-denied":{m.enqueue({type:"tool-output-denied",toolCallId:d.toolCallId});break}case"error":{m.enqueue({type:"error",errorText:u(d.error)});break}case"start-step":{m.enqueue({type:"start-step"});break}case"finish-step":{m.enqueue({type:"finish-step"});break}case"start":{s&&m.enqueue({type:"start",..._!=null?{messageMetadata:_}:{},...l!=null?{messageId:l}:{}});break}case"finish":{i&&m.enqueue({type:"finish",finishReason:d.finishReason,..._!=null?{messageMetadata:_}:{}});break}case"abort":{m.enqueue(d);break}case"tool-input-end":break;case"raw":break;default:{const y=v;throw new Error(`Unknown chunk type: ${y}`)}}_!=null&&v!=="start"&&v!=="finish"&&m.enqueue({type:"message-metadata",messageMetadata:_})}}));return Qt(my({stream:p,messageId:l??(t==null?void 0:t()),originalMessages:e,onFinish:r,onError:u}))}pipeUIMessageStreamToResponse(e,{originalMessages:t,generateMessageId:r,onFinish:n,messageMetadata:o,sendReasoning:a,sendSources:s,sendFinish:i,sendStart:u,onError:l,...c}={}){xl({response:e,stream:this.toUIMessageStream({originalMessages:t,generateMessageId:r,onFinish:n,messageMetadata:o,sendReasoning:a,sendSources:s,sendFinish:i,sendStart:u,onError:l}),...c})}pipeTextStreamToResponse(e,t){Sl({response:e,textStream:this.textStream,...t})}toUIMessageStreamResponse({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:o,sendSources:a,sendFinish:s,sendStart:i,onError:u,...l}={}){return El({stream:this.toUIMessageStream({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:o,sendSources:a,sendFinish:s,sendStart:i,onError:u}),...l})}toTextStreamResponse(e){return Il({textStream:this.textStream,...e})}};Ft({prefix:"aiobj",size:24});Ft({prefix:"aiobj",size:24});const Dy=Object.freeze(Object.defineProperty({__proto__:null,AISDKError:T,APICallError:ue,DownloadError:bt,EmptyResponseBodyError:as,InvalidArgumentError:Ce,InvalidMessageRoleError:Zu,InvalidPromptError:vt,InvalidResponseDataError:Zl,InvalidToolApprovalError:iu,InvalidToolInputError:tn,JSONParseError:or,JsonToSseTransformStream:lo,LoadAPIKeyError:er,MissingToolResultsError:Cn,NoObjectGeneratedError:Be,NoOutputGeneratedError:oo,NoSuchModelError:Fl,NoSuchToolError:Br,Output:vl,RetryError:Nn,TooManyEmbeddingValuesForCallError:Ll,ToolCallNotFoundForApprovalError:rn,ToolCallRepairError:Au,TypeValidationError:et,UIMessageStreamError:gt,UI_MESSAGE_STREAM_HEADERS:co,UnsupportedFunctionalityError:Es,UnsupportedModelVersionError:Ru,asSchema:St,assistantModelMessageSchema:el,consumeStream:Ol,createGateway:Wi,createIdGenerator:Ft,createTextStreamResponse:Il,createUIMessageStreamResponse:El,gateway:Hi,generateId:Fm,generateText:sy,getStaticToolName:zn,isStaticToolUIPart:Hr,isToolUIPart:kl,jsonSchema:yr,modelMessageSchema:rl,parseJsonEventStream:zi,parsePartialJson:qt,pipeTextStreamToResponse:Sl,pipeUIMessageStreamToResponse:xl,stepCountIs:uo,streamText:_y,systemModelMessageSchema:Xu,tool:qh,toolModelMessageSchema:tl,userModelMessageSchema:Qu,zodSchema:De},Symbol.toStringTag,{value:"Module"}));export{vt as $,ue as A,Zt as B,ut as C,De as D,Sy as E,nt as F,ot as G,zy as H,us as I,Lh as J,Ey as K,Xe as L,Rm as M,Fl as N,tm as O,Zl as P,Ny as Q,Py as R,Oy as S,Ll as T,Es as U,Bn as V,Ay as W,Cy as X,Zy as Y,Ii as Z,Ty as _,Fm as a,Dy as a0,qr as b,ky as c,Lr as d,lr as e,Vh as f,sy as g,$y as h,gr as i,pe as j,um as k,Nr as l,g as m,Vn as n,k as o,My as p,Qe as q,ke as r,_y as s,D as t,le as u,en as v,Jh as w,Rn as x,Ry as y,xy as z};