1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e._posthogReleaseId=e._posthogReleaseId||"01a11d76-b2c9-0000-b824-e7d395f61a23";var n=(new e.Error).stack;n&&(e._posthogChunkIds=e._posthogChunkIds||{},e._posthogChunkIds[n]="660b8357-1b8b-5c62-926f-86928a27b4fb")}catch(e){}}();(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,891754,(e,t,r)=>{var a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s={},l={AccessTokenMissingError:()=>d,RefreshAccessTokenFailedError:()=>c};for(var u in l)a(s,u,{get:l[u],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of n(t))i.call(e,s)||void 0===s||a(e,s,{get:()=>t[s],enumerable:!(r=o(t,s))||r.enumerable});return e})(a({},"__esModule",{value:!0}),s);class d extends Error{constructor(){super("No authentication found. Please log in with the Vercel CLI (vercel login)."),this.name="AccessTokenMissingError"}}class c extends Error{constructor(e){super("Failed to refresh authentication token.",{cause:e}),this.name="RefreshAccessTokenFailedError"}}},99970,(e,t,r)=>{var a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s={},l={SYMBOL_FOR_REQ_CONTEXT:()=>d,getContext:()=>c};for(var u in l)a(s,u,{get:l[u],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of n(t))i.call(e,s)||void 0===s||a(e,s,{get:()=>t[s],enumerable:!(r=o(t,s))||r.enumerable});return e})(a({},"__esModule",{value:!0}),s);let d=Symbol.for("@vercel/request-context");function c(){let e=globalThis;return e[d]?.get?.()??{}}},725150,(e,t,r)=>{var a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s={},l={AccessTokenMissingError:()=>c.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>c.RefreshAccessTokenFailedError,getContext:()=>d.getContext,getVercelOidcToken:()=>p,getVercelOidcTokenSync:()=>h,getVercelToken:()=>f};for(var u in l)a(s,u,{get:l[u],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of n(t))i.call(e,s)||void 0===s||a(e,s,{get:()=>t[s],enumerable:!(r=o(t,s))||r.enumerable});return e})(a({},"__esModule",{value:!0}),s);var d=e.r(99970),c=e.r(891754);async function p(){return""}function h(){return""}async function f(){throw Error("getVercelToken is not supported in browser environments")}},640262,721833,122199,978113,e=>{let t,r,a,o,n,i,s,l,u,d,c,p,h;e.s(["BIGINT_FORMAT_RANGES",()=>tm,"CONSTANT_CATCH",()=>tQ,"Class",()=>tB,"NUMBER_FORMAT_RANGES",()=>tf,"aborted",()=>tS,"allowsEval",()=>tt,"assert",()=>eD,"assertEqual",()=>eP,"assertIs",()=>ez,"assertNever",()=>ej,"assertNotEqual",()=>e$,"assignProp",()=>eW,"attachSchema",()=>tM,"base64ToUint8Array",()=>tD,"base64urlToUint8Array",()=>tU,"cached",()=>eZ,"captureStackTrace",()=>e7,"cleanEnum",()=>tj,"cleanRegex",()=>eV,"clone",()=>tu,"cloneDef",()=>e4,"codePointLength",()=>tP,"constantCatch",()=>t0,"createTransparentProxy",()=>tc,"defineLazy",()=>eJ,"defineLazyInternal",()=>tY,"derived",()=>tJ,"esc",()=>e5,"escapeRegex",()=>tl,"explicitlyAborted",()=>tT,"extend",()=>tb,"finalizeIssue",()=>tA,"floatSafeRemainder",()=>eG,"getElementAtPath",()=>e6,"getEnumValues",()=>eq,"getLengthableOrigin",()=>t$,"getParsedType",()=>tn,"getSizableOrigin",()=>tO,"hexToUint8Array",()=>tF,"hide",()=>tH,"installLazyProp",()=>tX,"isObject",()=>te,"isPlainObject",()=>tr,"issue",()=>tz,"joinValues",()=>eU,"jsonStringifyReplacer",()=>eL,"members",()=>tV,"merge",()=>t_,"mergeDefs",()=>e2,"normalizeParams",()=>td,"nullish",()=>eB,"numKeys",()=>to,"objectClone",()=>eK,"omit",()=>tv,"optionalKeys",()=>th,"own",()=>tG,"parsedType",()=>tN,"partial",()=>tI,"pick",()=>tg,"prefixIssues",()=>tE,"primitiveTypes",()=>ts,"promiseAllObject",()=>e9,"propertyKeyTypes",()=>ti,"randomString",()=>e3,"rawShape",()=>eY,"required",()=>
1tk,"safeExtend",()=>tx,"shallowClone",()=>ta,"slugify",()=>e8,"stringifyPrimitive",()=>tp,"toZod",()=>eN,"uint8ArrayToBase64",()=>tq,"uint8ArrayToBase64url",()=>tL,"uint8ArrayToHex",()=>tZ,"unwrapMessage",()=>tC],922143);var f,m,g=e.i(247167),y=e.i(467034);let v="vercel.ai.error",b=Symbol.for(v);var w=class e extends Error{constructor({name:e,message:t,cause:r}){super(t),this[b]=!0,this.name=e,this.cause=r}static isInstance(t){return e.hasMarker(t,v)}static hasMarker(e,t){let r=Symbol.for(t);return null!=e&&"object"==typeof e&&r in e&&"boolean"==typeof e[r]&&!0===e[r]}};let x="AI_DecisionUnsupportedQuestionTypeError",_=`vercel.ai.error.${x}`,I=Symbol.for(_);var k=class extends w{constructor({questionId:e,questionType:t,provider:r,modelId:a,message:o=`Question "${e}" has type "${t}", which is not supported by provider "${r}" and model "${a}".`}){super({name:x,message:o}),this[I]=!0,this.questionId=e,this.questionType=t,this.provider=r,this.modelId=a}static isInstance(e){return w.hasMarker(e,_)}};let S="AI_APICallError",T=`vercel.ai.error.${S}`,E=Symbol.for(T);var C=class extends w{constructor({message:e,url:t,requestBodyValues:r,statusCode:a,responseHeaders:o,responseBody:n,cause:i,isRetryable:s=null!=a&&(408===a||409===a||429===a||a>=500),data:l}){super({name:S,message:e,cause:i}),this[E]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=a,this.responseHeaders=o,this.responseBody=n,this.isRetryable=s,this.data=l}static isInstance(e){return w.hasMarker(e,T)}};let M="AI_EmptyResponseBodyError",A=`vercel.ai.error.${M}`,O=Symbol.for(A);var R=class extends w{constructor({message:e="Empty response body"}={}){super({name:M,message:e}),this[O]=!0}static isInstance(e){return w.hasMarker(e,A)}};let P="AI_DecisionRefusalError",$=`vercel.ai.error.${P}`,N=Symbol.for($);var z=class extends w{constructor({questionIds:e,provider:t,modelId:r,message:a=`Decision model "${r}" from provider "${t}" refused ${1===e.length?"question":"questions"} ${e.map(e=>JSON.stringify(e)).join(", ")}.`}){super({name:P,message:a}),this[N]=!0,this.questionIds=e,this.provider=t,this.modelId=r}static isInstance(e){return w.hasMarker(e,$)}};function j(e){return null==e?"unknown error":"string"==typeof e?e:e instanceof Error?e.toString():JSON.stringify(e)}let D="AI_InvalidArgumentError",q=`vercel.ai.error.${D}`,U=Symbol.for(q);var L=class extends w{constructor({message:e,cause:t,argument:r}){super({name:D,message:e,cause:t}),this[U]=!0,this.argument=r}static isInstance(e){return w.hasMarker(e,q)}};let F="AI_InvalidPromptError",Z=`vercel.ai.error.${F}`,B=Symbol.for(Z);var V=class extends w{constructor({prompt:e,message:t,cause:r}){super({name:F,message:`Invalid prompt: ${t}`,cause:r}),this[B]=!0,this.prompt=e}static isInstance(e){return w.hasMarker(e,Z)}};let G="AI_InvalidResponseDataError",H=`vercel.ai.error.${G}`,J=Symbol.for(H);var K=class extends w{constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:G,message:t}),this[J]=!0,this.data=e}static isInstance(e){return w.hasMarker(e,H)}};let W="AI_JSONParseError",Y=`vercel.ai.error.${W}`,X=Symbol.for(Y);var Q=class extends w{constructor({text:e,cause:t}){super({name:W,message:`JSON parsing failed: Text: ${e}. 2Error message: ${j(t)}`,cause:t}),this[X]=!0,this.text=e}static isInstance(e){return w.hasMarker(e,Y)}};let ee="AI_LoadAPIKeyError",et=`vercel.ai.error.${ee}`,er=Symbol.for(et);var ea=class extends w{constructor({message:e}){super({name:ee,message:e}),this[er]=!0}static isInstance(e){return w.hasMarker(e,et)}};let eo="AI_LoadSettingError",en=`vercel.ai.error.${eo}`,ei=Symbol.for(en);var es=class extends w{constructor({message:e}){super({name:eo,message:e}),this[ei]=!0}static isInstance(e){return w.hasMarker(e,en)}};let el="AI_NoContentGeneratedError",eu=`vercel.ai.error.${el}`,ed=Symbol.for(eu);var ec=class extends w{constructor({message:e="No content generated."}={}){super({name:el,message:e}),this[ed]=!0}static isInstance(e){return w.hasMarker(e,eu)}};let ep="AI_NoSuchModelError",eh=`vercel.ai.error.${ep}`,ef=Symbol.for(eh);var em=class extends w{constructor({errorName:e=ep,modelId:t,modelType:r,message:a=`No such ${r}: ${t}`}){super({name:e,message:a}),this[ef]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return w.hasMarker(e,eh)}};
2let eg="AI_NoSuchProviderReferenceError",ey=`vercel.ai.error.${eg}`,ev=Symbol.for(ey);var eb=class extends w{constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:eg,message:r}),this[ev]=!0,this.provider=e,this.reference=t}static isInstance(e){return w.hasMarker(e,ey)}};let ew="AI_TooManyEmbeddingValuesForCallError",ex=`vercel.ai.error.${ew}`,e_=Symbol.for(ex);var eI=class extends w{constructor(e){super({name:ew,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[e_]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return w.hasMarker(e,ex)}};let ek="AI_TypeValidationError",eS=`vercel.ai.error.${ek}`,eT=Symbol.for(eS);var eE=class e extends w{constructor({value:e,cause:t,context:r}){let a="Type validation failed";if(r?.field&&(a+=` for ${r.field}`),r?.entityName||r?.entityId){a+=" (";let e=[];r.entityName&&e.push(r.entityName),r.entityId&&e.push(`id: "${r.entityId}"`),a+=e.join(", "),a+=")"}super({name:ek,message:`${a}: Value: ${JSON.stringify(e)}. 3Error message: ${j(t)}`,cause:t}),this[eT]=!0,this.value=e,this.context=r}static isInstance(e){return w.hasMarker(e,eS)}static wrap({value:t,cause:r,context:a}){return e.isInstance(r)&&r.value===t&&r.context?.field===a?.field&&r.context?.entityName===a?.entityName&&r.context?.entityId===a?.entityId?r:new e({value:t,cause:r,context:a})}};let eC="AI_UnsupportedFunctionalityError",eM=`vercel.ai.error.${eC}`,eA=Symbol.for(eM);var eO=class extends w{constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:eC,message:t}),this[eA]=!0,this.functionality=e}static isInstance(e){return w.hasMarker(e,eM)}};function eR(e){return null===e||"string"==typeof e||"number"==typeof e||"boolean"==typeof e||(Array.isArray(e)?e.every(eR):"object"==typeof e&&Object.entries(e).every(([e,t])=>"string"==typeof e&&(void 0===t||eR(t))))}function eP(e){return e}function e$(e){return e}function eN(){return e=>e}function ez(e){}function ej(e){throw Error("Unexpected value in exhaustive check")}function eD(e){}function eq(e){let t=Object.values(e).filter(e=>"number"==typeof e);return Object.entries(e).filter(([e,r])=>-1===t.indexOf(+e)).map(([e,t])=>t)}function eU(e,t="|"){return e.map(e=>tp(e)).join(t)}function eL(e,t){return"bigint"==typeof t?t.toString():t}e.s(["K",0,w,"k",0,C,"e",0,R,"V",0,z,"c",0,k,"b",0,L,"F",0,V,"d",0,K,"r",0,Q,"f",0,ea,"D",0,es,"L",0,ec,"M",0,em,"T",0,eb,"g",0,eI,"z",0,eE,"E",0,eO,"Z",0,j,"W",0,function(e){return Array.isArray(e)&&e.every(eR)},"P",0,function(e){return null!=e&&"object"==typeof e&&Object.entries(e).every(([e,t])=>"string"==typeof e&&(void 0===t||eR(t)))}],721833);class eF{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;return void 0!==e&&(this._value=e(),this._getter=void 0),this._value}}function eZ(e){return new eF(e)}function eB(e){return null==e}function eV(e){let t=+!!e.startsWith("^"),r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function eG(e,t){let r=e/t,a=Math.round(r),o=4*Number.EPSILON*Math.max(Math.abs(r),1);return Math.abs(r-a)<o?0:r-a}let eH=Symbol("evaluating");function eJ(e,t,r){let a;Object.defineProperty(e,t,{get(){if(a!==eH)return void 0===a&&(a=eH,a=r()),a},set(r){Object.defineProperty(e,t,{value:r})},configurable:!0})}function eK(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function eW(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function eY(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function eX(e){return eY(e._zod.def)??e._zod.def.shape}function eQ(e,t,r){Object.defineProperty(e,t,{get(){let e=r();return eW(this,t,e),e},enumerable:!0,configurable:!0})}function e0(e,t,r){t in e?eW(e,t,r):e[t]=r}function e1(e,t,r,a){let o=eX(t);for(let n of r){let r=Object.getOwnPropertyDescriptor(o,n);r.enumerable&&(r.get?eQ(e,n,()=>{let e=t._zod.def.shape[n];return a?a(e,n):e}):e0(e,n,a?a(r.value,n):r.value))}}function e2(...e){let t={};for(let r of e)Object.assign(t,Object.getOwnPropertyDescriptors(r));return Object.defineProperties({},t)}function e4(e){return e2(e._zod.def)}function e6(e,t){return t?t.reduce((e,t)=>
3e?.[t],e):e}function e9(e){let t=Object.keys(e);return Promise.all(t.map(t=>e[t])).then(e=>{let r={};for(let a=0;a<t.length;a++)r[t[a]]=e[a];return r})}function e3(e=10){let t="abcdefghijklmnopqrstuvwxyz",r="";for(let a=0;a<e;a++)r+=t[Math.floor(Math.random()*t.length)];return r}function e5(e){return JSON.stringify(e)}function e8(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}let e7="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function te(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}let tt=eZ(()=>{if(t3.jitless||"u">typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});function tr(e){if(!1===te(e))return!1;let t=e.constructor;if(void 0===t||"function"!=typeof t)return!0;let r=t.prototype;return!1!==te(r)&&!1!==Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")}function ta(e){return tr(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}function to(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}let tn=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(null===e)return"null";if(e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch)return"promise";if("u">typeof Map&&e instanceof Map)return"map";if("u">typeof Set&&e instanceof Set)return"set";if("u">typeof Date&&e instanceof Date)return"date";if("u">typeof File&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},ti=new Set(["string","number","symbol"]),ts=new Set(["string","number","bigint","boolean","symbol","undefined"]);function tl(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function tu(e,t,r){let a=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(a._zod.parent=e),a}function td(e){if(!e)return{};if("string"==typeof e)return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");e.error=e.message}return(delete e.message,"string"==typeof e.error)?{...e,error:()=>e.error}:e}function tc(e){let t;return new Proxy({},{get:(r,a,o)=>(t??(t=e()),Reflect.get(t,a,o)),set:(r,a,o,n)=>(t??(t=e()),Reflect.set(t,a,o,n)),has:(r,a)=>(t??(t=e()),Reflect.has(t,a)),deleteProperty:(r,a)=>(t??(t=e()),Reflect.deleteProperty(t,a)),ownKeys:r=>(t??(t=e()),Reflect.ownKeys(t)),getOwnPropertyDescriptor:(r,a)=>(t??(t=e()),Reflect.getOwnPropertyDescriptor(t,a)),defineProperty:(r,a,o)=>(t??(t=e()),Reflect.defineProperty(t,a,o))})}function tp(e){return"bigint"==typeof e?e.toString()+"n":"string"==typeof e?`"${e}"`:`${e}`}function th(e){return Object.keys(e).filter(t=>void 0!==e[t]._zod.optin&&"optional"===e[t]._zod.optout)}let tf={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-0x80000000,0x7fffffff],uint32:[0,0xffffffff],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},tm={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function tg(e,t){let r=e._zod.def,a=r.checks;if(a&&a.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let o={};return e1(o,e,ty(e,t)),tu(e,e2(r,{shape:o,checks:[]}))}function ty(e,t){let r=eX(e),a=[];for(let e of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(r,e)?.enumerable)throw Error(`Unrecognized key: "${String(e)}"`);t[e]&&a.push(e)}return a}function tv(e,t){let r=e._zod.def,a=r.checks;if(a&&a.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let o=new Set(ty(e,t)),n={};return e1(n,e,Reflect.ownKeys(eX(e)).filter(e=>!o.has(e))),tu(e,e2(r,{shape:n,checks:[]}))}function tb(e,t){if(!tr(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let r=eX(e);for(let e of Reflect.ownKeys(t))if(void 0!==Object.getOwnPropertyDescriptor(r,e))throw Error("Cannot over
3write keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return tu(e,e2(e._zod.def,{shape:tw(e,t)}))}function tw(e,t){let r={};e1(r,e,Reflect.ownKeys(eX(e)));for(let e of Reflect.ownKeys(t)){let a=Object.getOwnPropertyDescriptor(t,e);a.enumerable&&(a.get?eQ(r,e,()=>t[e]):e0(r,e,a.value))}return r}function tx(e,t){if(!tr(t))throw Error("Invalid input to safeExtend: expected a plain object");return tu(e,e2(e._zod.def,{shape:tw(e,t)}))}function t_(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r={};e1(r,e,Reflect.ownKeys(eX(e))),e1(r,t,Reflect.ownKeys(eX(t)));let a=e2(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return tu(e,a)}function tI(e,t,r,a="partial"){let o=t._zod.def.checks;if(o&&o.length>0)throw Error(`.${a}() cannot be used on object schemas containing refinements`);let n=r?new Set(ty(t,r)):void 0,i={};return e1(i,t,Reflect.ownKeys(eX(t)),e&&((t,r)=>n&&!n.has(r)?t:new e({type:"optional",innerType:t}))),tu(t,e2(t._zod.def,{shape:i,checks:[]}))}function tk(e,t,r){let a=r?new Set(ty(t,r)):void 0,o={};return e1(o,t,Reflect.ownKeys(eX(t)),(t,r)=>a&&!a.has(r)?t:new e({type:"nonoptional",innerType:t})),tu(t,e2(t._zod.def,{shape:o}))}function tS(e,t=0){if(!0===e.aborted)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function tT(e,t=0){if(!0===e.aborted)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function tE(e,t){return t.map(t=>(t.path??(t.path=[]),t.path.unshift(e),t))}function tC(e){return"string"==typeof e?e:e?.message}function tM(e,t,r){var a;for(let o=t;o<e.length;o++)(a=e[o]).schema??(a.schema=r)}function tA(e,t,r){let a=e.inst?._zod?.traits;a?.has("$ZodType")&&(a.has("$ZodCheck")?e.schema??(e.schema=e.inst):e.schema=e.inst);let o=e.schema!==e.inst?e.schema?._zod.def?.error:void 0,n=e.message?e.message:tC(e.inst?._zod.def?.error?.(e))??tC(o?.(e))??tC(t?.error?.(e))??tC(r.customError?.(e))??tC(r.localeError?.(e))??"Invalid input",i={};for(let t of Object.keys(e))"inst"!==t&&"schema"!==t&&"continue"!==t&&"input"!==t&&"__proto__"!==t&&(i[t]=e[t]);return i.path??(i.path=[]),i.message=n,t?.reportInput&&(i.input=e.input),i}function tO(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}let tR=/[\uD800-\uDBFF]/;function tP(e){let t=e.length;if(!tR.test(e))return t;let r=t;for(let a=0;a<t-1;a++)(64512&e.charCodeAt(a))==55296&&(64512&e.charCodeAt(a+1))==56320&&(r--,a++);return r}function t$(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function tN(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":if(null===e)return"null";if(Array.isArray(e))return"array";if(e&&Object.getPrototypeOf(e)!==Object.prototype&&"constructor"in e&&e.constructor)return e.constructor.name}return t}function tz(...e){let[t,r,a]=e;return"string"==typeof t?{message:t,code:"custom",input:r,inst:a}:{...t}}function tj(e){return Object.entries(e).filter(([e,t])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function tD(e){let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}function tq(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function tU(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return tD(t+r)}function tL(e){return tq(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function tF(e){let t=e.replace(/^0x/,"");if(t.length%2!=0)throw Error("Invalid hex string length");let r=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2)r[e/2]=Number.parseInt(t.slice(e,e+2),16);return r}function tZ(e){return Array.from(e).map(e=>e.toString(16).padStart(2,"0")).join("")}class tB{constructor(...e){}}function tV(e,t){for(let r in t){let a=Object.getOwnPropertyDescriptor(t,r);a.get?Object.defineProperty(e,r,{...a,enumerable:!1}):function(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:tG(this,t,r.bind(this))},set(e){tG(this,t,e)}})}(e,r,a.value)}}function tG(e,t,r,a=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:a,value:r}),r}function tH(e,t,r){return tG(e,t,r,!1)}function tJ(e,t){for(let r in e){let a=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return tG(this,r,a(this))},set(e){tG(this,r,e)}})}return t}let tK=!1,tW={configurable:!0,get(){tK=!0}};function tY(e,r,a){let o=Object.getPrototypeOf(e._zod);if(r in o&&t!==e._zod){t=void 0;return}t=e._zod,Object.defineProperty(o,r,{configurable:!0,get(){Object.defineProperty(this,r,tW);let e=tK;tK=!1;try{let t=a(this);return tK?delete this[r]:Object.defineProperty(this,r,{configurable:!0,writable:!0,value:t}),tK=tK||e,t}catch(t){throw delete this[r],tK=tK||e,t}},set(e){Object.defineProperty(this,r,{configurable:!0,writable:!0,value:e})}})}function tX(e,t,r,a){let o,n=t in(o=Object.getPrototypeOf(e))?void 0:o;n&&Object.defineProperty(n,t,{configurable:!0,get(){let e={configurable:!0,writable:!0,enumerable:a,value:void 0};
3return Object.defineProperty(this,t,e),e.value=r(this),Object.defineProperty(this,t,e),e.value},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:a,value:e})}})}let tQ="~constantCatch";function t0(e){let t=()=>e;return t[tQ]=!0,t}let t1={value:void 0,enumerable:!1},t2="captureStackTrace"in Error?Error:null;function t4(e,t,r,a){function o(e){this.def=e,this.constr=u,this.traits=new Set}o.prototype={};let n=r&&new WeakSet;function i(a,i){if(a._zod){if(a._zod.traits.has(e))return}else{t1.value=new o(i);try{Object.defineProperty(a,"_zod",t1)}finally{t1.value=void 0}}if(a._zod.traits.add(e),t(a,i),n){let e=Object.getPrototypeOf(a),t=a._zod.constr.prototype,o=e;for(;o&&o!==t;)o=Object.getPrototypeOf(o);let i=o??e;n.has(i)||(n.add(i),tV(i,r))}let s=u.prototype;for(let e in s)Object.prototype.hasOwnProperty.call(s,e)&&(e in a||(a[e]=s[e].bind(a)))}let s=a?.Parent??Object;class l extends s{}function u(e){let t=a?.Parent?function(e){let t=t2;if(t){let r=t.stackTraceLimit;if("number"==typeof r){try{t.stackTraceLimit=0}catch{return t2=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}(l):this;i(t,e);let r=t._zod.deferred;if(r){for(let e of r)e();t._zod.deferred=void 0}let o=globalThis.__zod_globalConfig?.postProcessor;return o&&o(t),t}return Object.defineProperty(l,"name",{value:e}),Object.defineProperty(u,"init",{value:i}),Object.defineProperty(u,Symbol.hasInstance,{value:t=>!!a?.Parent&&t instanceof a.Parent||t?._zod?.traits?.has(e)}),Object.defineProperty(u,"name",{value:e}),u}class t6 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class t9 extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}(f=globalThis).__zod_globalConfig??(f.__zod_globalConfig={});let t3=globalThis.__zod_globalConfig;function t5(e){return e&&Object.assign(t3,e),t3}let t8={get:function(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,eL,2)),e.message},set:function(e){this._zod.message=e},enumerable:!0,configurable:!0},t7={value:void 0,enumerable:!1},re=new WeakSet([Object.prototype,Error.prototype]),rt=(e,t)=>{e.name="$ZodError",t7.value=t,Object.defineProperty(e,"issues",t7),t7.value=void 0,Object.defineProperty(e,"message",t8);let r=Object.getPrototypeOf(e);re.has(r)||(re.add(r),Object.defineProperty(r,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))},rr=t4("$ZodError",rt),ra=t4("$ZodError",rt,void 0,{Parent:Error});function ro(e,t){return{callee:t?.callee??e,Err:t?.Err}}let rn=e=>{let t=(r,a,o,n)=>{let i=o?{...o,async:!1}:{async:!1},s=r._zod.run({value:a,issues:[]},i);if(s instanceof Promise)throw new t6;if(s.issues.length){let r=new(n?.Err??e)(s.issues.map(e=>tA(e,i,t5())));throw e7(r,n?.callee??t),r}return s.value};return t},ri=rn(ra),rs=e=>{let t=async(r,a,o,n)=>{let i=o?{...o,async:!0}:{async:!0},s=r._zod.run({value:a,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){let r=new(n?.Err??e)(s.issues.map(e=>tA(e,i,t5())));throw e7(r,n?.callee??t),r}return s.value};return t},rl=rs(ra),ru=e=>(t,r,a)=>{let o=a?{...a,async:!1}:{async:!1},n=t._zod.run({value:r,issues:[]},o);if(n instanceof Promise)throw new t6;return n.issues.length?rd(e,n.issues,o):{success:!0,data:n.value}};function rd(e,t,r){let a;return{success:!1,get error(){return a||(a=new e(t.map(e=>tA(e,r,t5()))),t=void 0,r=void 0),a},set error(e){a=e,t=void 0,r=void 0}}}let rc=e=>async(t,r,a)=>{let o=a?{...a,async:!0}:{async:!0},n=t._zod.run({value:r,issues:[]},o);return n instanceof Promise&&(n=await n),n.issues.length?rd(e,n.issues,o):{success:!0,data:n.value}},rp=Symbol.for("zod.compile.invalid"),rh=Symbol.for("zod.compile.fallback"),rf=async(e,t,r)=>{let a=r?{...r,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},o=e._zod.run({value:t,issues:[]},a);return o instanceof Promise&&(o=await o),0===o.issues.length},rm=new WeakSet([Object.prototype,Error.prototype]);function rg(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let e=r(this);return Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0})}})}let ry=t4("ZodError",(e,t)=>{rr.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);rm.has(r)||(rm.add(r),rg(r,"format",e=>t=>(function(e,t=e=>e.message){let r={_errors:[]},a=(e,o=[])=>
3{for(let n of e.issues)if("invalid_union"===n.code&&n.errors.length)n.errors.map(e=>a({issues:e},[...o,...n.path]));else if("invalid_key"===n.code)a({issues:n.issues},[...o,...n.path]);else if("invalid_element"===n.code)a({issues:n.issues},[...o,...n.path]);else{let e=[...o,...n.path];if(0===e.length)r._errors.push(t(n));else{let a=r,o=0;for(;o<e.length;){let r=e[o],i=o===e.length-1;if("_errors"===r){i&&a._errors.push(t(n)),o++;continue}Object.prototype.hasOwnProperty.call(a,r)||Object.defineProperty(a,r,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=a[r];i&&s._errors.push(t(n)),a=s,o++}}}};return a(e),r})(e,t)),rg(r,"flatten",e=>t=>(function(e,t=e=>e.message){let r={},a=[];for(let i of e.issues)if(i.path.length>0){var o,n;(o=i.path[0],n=()=>[],!Object.prototype.hasOwnProperty.call(r,o)&&("__proto__"===o?Object.defineProperty(r,o,{value:n(),writable:!0,enumerable:!0,configurable:!0}):r[o]=n()),r[o]).push(t(i))}else a.push(t(i));return{formErrors:a,fieldErrors:r}})(e,t)),rg(r,"addIssue",e=>t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,eL,2)}),rg(r,"addIssues",e=>t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,eL,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return 0===this.issues.length}}))},void 0,{Parent:Error});e.s(["ZodRealError",0,ry],789282);let rv=rn(ry),rb=rs(ry),rw=ru(ry),rx=rc(ry),r_=(n=rn(ry),i=(e,t,r,a)=>n(e,t,r?{...r,direction:"backward"}:{direction:"backward"},ro(i,a))),rI=(s=rn(ry),l=(e,t,r,a)=>s(e,t,r,ro(l,a))),rk=(u=rs(ry),d=async(e,t,r,a)=>{let o=r?{...r,direction:"backward"}:{direction:"backward"};return await u(e,t,o,ro(d,a))}),rS=(c=rs(ry),p=async(e,t,r,a)=>await c(e,t,r,ro(p,a))),rT=(e,t,r)=>{let a=r?{...r,direction:"backward"}:{direction:"backward"};return ru(ry)(e,t,a)},rE=(e,t,r)=>ru(ry)(e,t,r),rC=async(e,t,r)=>{let a=r?{...r,direction:"backward"}:{direction:"backward"};return rc(ry)(e,t,a)},rM=async(e,t,r)=>rc(ry)(e,t,r),rA=/^[cC][0-9a-z]{6,}$/,rO=/^[0-9a-z]+$/,rR=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,rP=/^[0-9a-vA-V]{20}$/,r$=/^[A-Za-z0-9]{27}$/,rN=/^[a-zA-Z0-9_-]{21}$/;function rz(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}let rj=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,rD=/^([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})$/,rq=e=>e?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)$/,rU=rq(4),rL=rq(6),rF=rq(7),rZ=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,rB=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u;function rV(){return RegExp("^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$","u")}let rG=/^(?:(?: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])$/,rH=/^(([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}|:))$/,rJ=e=>{let t=tl(e??":");return RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},rK=/^((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])$/,rW=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,rY=/^$|^(?:[0-9a-zA-Z+/]{4}
3)*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,rX=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/,rQ=/^https?$/,r0=/^\+[1-9]\d{6,14}$/,r1=/^\d(?:[ -]?\d){11,18}$/,r2=/^[A-Z]{2}(?!00|01|99)\d{2}[A-Z0-9]{11,30}$/,r4="(?:(?:\\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])))",r6=RegExp(`^${r4}$`);function r9(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function r3(e){return RegExp(`^${r9(e)}$`)}function r5(e){let t=["Z"];e.offset&&t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${r9({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,a=e.local?`${r}|${r9({precision:e.precision})}`:r;return RegExp(`^${r4}T(?:${a})$`)}let r8=/^[\s\S]{0,}$/,r7=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return RegExp(`^${t}$`)},ae=/^-?\d+n?$/,at=/^-?\d+$/,ar=/^-?\d+(?:\.\d+)?$/,aa=/^(?:true|false)$/i,ao=/^null$/i,an=/^undefined$/i,ai=/^[^A-Z]*$/,as=/^[^a-z]*$/;function al(e,t){return RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function au(e){return RegExp(`^[A-Za-z0-9_-]{${e}}$`)}let ad=al(22,"=="),ac=au(22),ap=al(27,"="),ah=au(27),af=al(43,"="),am=au(43),ag=al(64,""),ay=au(64),av=al(86,"=="),ab=au(86);e.s(["anyString",0,r8,"base64",0,rY,"base64url",0,rX,"bigint",0,ae,"boolean",0,aa,"browserEmail",0,/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,"cidrv4",0,rK,"cidrv6",0,rW,"creditCard",0,r1,"cuid",0,rA,"cuid2",0,rO,"currencyCode",0,/^(?:AED|AFN|ALL|AMD|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLE|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|UYI|UYU|UYW|UZS|VED|VES|VND|VUV|WST|XAD|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XCG|XDR|XOF|XPD|XPF|XPT|XSU|XTS|XUA|XXX|YER|ZAR|ZMW|ZWG)$/,"date",0,r6,"datetime",0,r5,"domain",0,/^(?=.{1,253}$)([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,63}$/,"duration",0,rj,"e164",0,r0,"email",0,rZ,"emoji",0,rV,"extendedDuration",0,/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,"guid",0,rD,"hex",0,/^[0-9a-fA-F]*$/,"hostname",0,/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,"html5Email",0,/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,"httpProtocol",0,rQ,"iban",0,r2,"idnEmail",0,rB,"integer",0,at,"ipv4",0,rG,"ipv6",0,rH,"ksuid",0,r$,"lowercase",0,ai,"mac",0,rJ,"md5_base64",0,ad,"md5_base64url",0,ac,"md5_hex",0,/^[0-9a-fA-F]{32}$/,"nanoid",0,rN,"nanoidOfLength",0,rz,"null",0,ao,"number",0,ar,"rfc5322Email",0,/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,"sha1_base64",0,ap,"sha1_base64url",0,ah,"sha1_hex",0,/^[0-9a-fA-F]{40}$/,"sha256_base64",0,af,"sha256_base64url",0,am,"sha256_hex",0,/^[0-9a-fA-F]{64}$/,"sha384_base64",0,ag,"sha384_base64url",0,ay,"sha384_hex",0,/^[0-9a-fA-F]{96}$/,"sha512_base64",0,av,"sha512_base64url",0,ab,"sha512_hex",0,/^[0-9a-fA-F]{128}$/,"string",0,r7,"time",0,r3,"ulid",0,rR,"undefined",0,an,"unicodeEmail",0,rB,"uppercase",0,as,"uuid",0,rq,"uuid4",0,rU,"uuid6",0,rL,"uuid7",0,rF,"xid",0,rP],682358);let aw=t4("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),ax=e=>{let t=e.value;return!eB(t)&&void 0!==t.size},a_=e=>{let t=e.value;return!eB(t)&&void 0!==t.length},aI={number:"number",bigint:"bigint",object:"date"},ak=t4("$ZodCheckLessThan",(e,t)=>{aw.init(e,t);let r=aI[typeof t.value];e._zod.check=a=>{(t.inclusive?a.value<=t.value:a.value<t.value)||a.issues.push({origin:aI[typeof a.value]??r,code:"too_big",maximum:"object"==typeof t.value?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),aS=t4("$ZodCheckGreaterThan",(e,t)=>{aw.init(e,t);let r=aI[typeof t.value];e._zod.check=a=>{(t.inclusive?a.value>=t.value:a.value>t.value)||a.issues.push({origin:aI[typeof a.value]??r,code:"too_small",minimum:"object"==typeof t.value?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),aT=t4("$ZodCheckMultipleOf",(e,t)=>{aw.init(e,t),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof r.value?t.value!==BigInt(0)&&r.value%t.value===BigInt(0):0===eG(r.value,t.value))||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),aE=t4("$ZodCheckNumberFormat",(e,t)=>{aw.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),a=r?"int":"number",[o,n]=tf[t.format];e._zod.check=i=>{let s=i.value;if(r){if(!Number.isInteger(s))return void i.issues.push({expected:a,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>
30?i.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort}):i.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort}))}s<o&&i.issues.push({origin:"number",input:s,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),s>n&&i.issues.push({origin:"number",input:s,code:"too_big",maximum:n,inclusive:!0,inst:e,continue:!t.abort})}}),aC=t4("$ZodCheckBigIntFormat",(e,t)=>{aw.init(e,t);let[r,a]=tm[t.format];e._zod.check=o=>{let n=o.value;n<r&&o.issues.push({origin:"bigint",input:n,code:"too_small",minimum:r,inclusive:!0,inst:e,continue:!t.abort}),n>a&&o.issues.push({origin:"bigint",input:n,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),aM=t4("$ZodCheckMaxSize",(e,t)=>{var r;aw.init(e,t),(r=e._zod.def).when??(r.when=ax),e._zod.check=r=>{let a=r.value;a.size<=t.maximum||r.issues.push({origin:tO(a),code:"too_big",maximum:t.maximum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),aA=t4("$ZodCheckMinSize",(e,t)=>{var r;aw.init(e,t),(r=e._zod.def).when??(r.when=ax),e._zod.check=r=>{let a=r.value;a.size>=t.minimum||r.issues.push({origin:tO(a),code:"too_small",minimum:t.minimum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),aO=t4("$ZodCheckSizeEquals",(e,t)=>{var r;aw.init(e,t),(r=e._zod.def).when??(r.when=ax),e._zod.check=r=>{let a=r.value,o=a.size;if(o===t.size)return;let n=o>t.size;r.issues.push({origin:tO(a),...n?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),aR=t4("$ZodCheckMaxLength",(e,t)=>{var r;aw.init(e,t),(r=e._zod.def).when??(r.when=a_),e._zod.check=r=>{let a=r.value,o=a.length;if(("string"==typeof a&&o>t.maximum?tP(a):o)<=t.maximum)return;let n=t$(a);r.issues.push({origin:n,code:"too_big",maximum:t.maximum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),aP=t4("$ZodCheckMinLength",(e,t)=>{var r;aw.init(e,t),(r=e._zod.def).when??(r.when=a_),e._zod.check=r=>{let a=r.value,o=a.length;if(("string"==typeof a&&o>=t.minimum&&o<2*t.minimum?tP(a):o)>=t.minimum)return;let n=t$(a);r.issues.push({origin:n,code:"too_small",minimum:t.minimum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),a$=t4("$ZodCheckLengthEquals",(e,t)=>{var r;aw.init(e,t),(r=e._zod.def).when??(r.when=a_),e._zod.check=r=>{let a=r.value,o=a.length,n="string"==typeof a&&o>=t.length&&o<=2*t.length?tP(a):o;if(n===t.length)return;let i=t$(a),s=n>t.length;r.issues.push({origin:i,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),aN=t4("$ZodCheckStringFormat",(e,t)=>{var r,a;aw.init(e,t),t.pattern?(r=e._zod).check??(r.check=r=>{t.pattern.lastIndex=0,t.pattern.test(r.value)||r.issues.push({origin:"string",code:"invalid_format",format:t.format,input:r.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(a=e._zod).check??(a.check=()=>{})}),az=t4("$ZodCheckRegex",(e,t)=>{aN.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})}}),aj=t4("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=ai),aN.init(e,t)}),aD=t4("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=as),aN.init(e,t)}),aq=t4("$ZodCheckIncludes",(e,t)=>{aw.init(e,t);let r=tl(t.includes),a=new RegExp("number"==typeof t.position?`^.{${t.position},}${r}`:r);t.pattern=a,e._zod.check=r=>{r.value.includes(t.includes,t.position)||r.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:r.value,inst:e,continue:!t.abort})}}),aU=t4("$ZodCheckStartsWith",(e,t)=>{aw.init(e,t);let r=RegExp(`^${tl(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input
3:r.value,inst:e,continue:!t.abort})}}),aL=t4("$ZodCheckEndsWith",(e,t)=>{aw.init(e,t);let r=RegExp(`.*${tl(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});function aF(e,t,r){e.issues.length&&t.issues.push(...tE(r,e.issues))}let aZ=t4("$ZodCheckProperties",(e,t)=>{let r;aw.init(e,t),tH(e,Symbol.iterator,function*(){yield e}),e._zod.check=a=>{let o;if(null==a.value)return void a.issues.push({expected:"object",code:"invalid_type",input:a.value,inst:e});r??(r=Reflect.ownKeys(t.shape).map(e=>[e,t.shape[e]]));let n=a.value;for(let[e,t]of r){let r=t._zod.run({value:n[e],issues:[]},{});r instanceof Promise?(o??(o=[]),o.push(r.then(t=>aF(t,a,e)))):aF(r,a,e)}if(o)return Promise.all(o).then(()=>void 0)}}),aB=((e,t)=>{aw.init(e,t);let r=new Set(t.mime);e._zod.check=a=>{r.has(a.value.type)||a.issues.push({code:"invalid_value",values:t.mime,input:a.value.type,inst:e,continue:!t.abort})}},t4("$ZodCheckOverwrite",(e,t)=>{aw.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}));class aV{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{this.indent-=1}}write(e){if("function"==typeof e){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let t=e.split("\n").filter(e=>e),r=Math.min(...t.map(e=>e.length-e.trimStart().length));for(let e of t.map(e=>e.slice(r)).map(e=>" ".repeat(2*this.indent)+e))this.content.push(e)}compile(){let e=Function,t=this?.content??[""];return new e(...Object.keys(this.closed),`return function (${this.args.join(", ")}) { 4${t.join("\n")} 5};`)(...Object.values(this.closed))}}let aG={major:4,minor:6,patch:5},aH=t4("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=aG;let a=e._zod.def.checks,o=e._zod.traits.has("$ZodCheck")?[e,...a??[]]:a?.length?[...a]:[];for(let t of o)for(let r of t._zod.onattach)r(e);if(0===o.length)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(t,r,a)=>{let o;if(t.memo)return t;let n=tS(t);for(let i of r){if(i._zod.def.when){if(tT(t)||!i._zod.def.when(t))continue}else if(n)continue;let r=t.issues.length,s=i._zod.check(t);if(s instanceof Promise&&a?.async===!1)throw new t6;if(o||s instanceof Promise)o=(o??Promise.resolve()).then(async()=>{await s,t.issues.length!==r&&(tM(t.issues,r,e),n||(n=tS(t,r)))});else{if(t.issues.length===r)continue;tM(t.issues,r,e),n||(n=tS(t,r))}}return o?o.then(()=>t):t},r=(r,a,n)=>{if(tS(r))return r.aborted=!0,r;let i=t(a,o,n);if(i instanceof Promise){if(!1===n.async)throw new t6;return i.then(t=>e._zod.parse(t,n))}return e._zod.parse(i,n)};e._zod.run=(a,n)=>{if(n.skipChecks)return e._zod.parse(a,n);if("backward"===n.direction){let t=e._zod.parse({value:a.value,issues:[]},{...n,skipChecks:!0});return t instanceof Promise?t.then(e=>r(e,a,n)):r(t,a,n)}let i=e._zod.parse(a,n);if(i instanceof Promise){if(!1===n.async)throw new t6;return i.then(e=>t(e,o,n))}return t(i,o,n)}}},{get"~standard"(){return tH(this,"~standard",aW(this))},set"~standard"(e){tG(this,"~standard",e)}}),aJ=(e,t)=>e.issues.length?{issues:e.issues.map(e=>tA(e,t,t5()))}:{value:e.value};async function aK(e,t){let r={async:!0};return aJ(await e._zod.run({value:t,issues:[]},r),r)}function aW(e){return{validate:t=>{let r={async:!1};try{let a=e._zod.run({value:t,issues:[]},r);if(!(a instanceof Promise))return aJ(a,r)}catch(e){}return aK(e,t)},vendor:"zod",version:1}}let aY=t4("$ZodString",(e,t)=>{aH.init(e,t),e._zod.pattern=t.pattern??r8,e._zod.parse=(r,a)=>{if(t.coerce)try{r.value=String(r.value)}catch(e){}return"string"==typeof r.value||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),aX=t4("$ZodStringFormat",(e,t)=>{aN.init(e,t),aY.init(e,t)}),aQ=t4("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=rD),aX.init(e,t)}),a0=t4("$ZodUUID",(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=rq(e))}else t.pattern??(t.pattern=rq());aX.init(e,t)}),a1=t4("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=rZ),aX.init(e,t)});function a2(e){try{if("u">typeof URL&&"function"==typeof URL.canParse)return URL.canParse(e);return new URL(e),!0}catch{return!1}}let a4=/[\t\n\r]/g;function a6(e){return e.replace(a4,"")}let a9=t4("$ZodURL",(e,t)=>{aX.init(e,t),e._zod.check=r=>{try{var a,o;let n=r.value.trim(),i="normalize"in t||"hostname"in t||"protocol"in t?function(e,t){if(!t.normalize&&t.protocol?.source===rQ.source&&!/^https?:\/\//i.test(e))return 1;try{if("u">typeof URL){let t=URL;if("function"==typeof t.parse)return t.parse(e)??2}return new URL(e)}catch{return 2}}(n,t):a2(n)||2;if(1===i)return void r.issues.push({code:"invalid_format",format:"url",n
5ote:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});if(2===i)return void r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});if(!0===i){r.value=a6(n);return}t.hostname&&((a=t.hostname).lastIndex=0,!a.test(i.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&&((o=t.protocol).lastIndex=0,!o.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))&&r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort}),r.value=t.normalize?i.href:a6(n);return}catch(a){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),a3=t4("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=rV()),aX.init(e,t)}),a5=t4("$ZodNanoID",(e,t)=>{if(void 0!==t.length&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=void 0===t.length?rN:rz(t.length)),aX.init(e,t)}),a8=t4("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=rA),aX.init(e,t)}),a7=t4("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=rO),aX.init(e,t)}),oe=t4("$ZodULID",(e,t)=>{t.pattern??(t.pattern=rR),aX.init(e,t)}),ot=t4("$ZodXID",(e,t)=>{t.pattern??(t.pattern=rP),aX.init(e,t)}),or=t4("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=r$),aX.init(e,t)}),oa=t4("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=r5(t)),aX.init(e,t)}),oo=t4("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=r6),aX.init(e,t)}),on=t4("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=r3(t)),aX.init(e,t)}),oi=t4("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=rj),aX.init(e,t)}),os=t4("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=rG),aX.init(e,t)}),ol=/^[0-9a-fA-F:.]+$/;function ou(e){return!!ol.test(e)&&a2(`http://[${e}]`)}let od=t4("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=rH),aX.init(e,t),e._zod.check=r=>{ou(r.value)||r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}),oc=((e,t)=>{t.pattern??(t.pattern=rJ(t.delimiter)),aX.init(e,t)},t4("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=rK),aX.init(e,t)})),op=t4("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=rW),aX.init(e,t),e._zod.check=r=>{!function(e){let t=e.split("/");if(2!==t.length)return!1;let[r,a]=t;if(!a)return!1;let o=Number(a);return`${o}`===a&&!(o<0)&&!(o>128)&&ou(r)}(r.value)&&r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function oh(e){if(""===e)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}let of=/^[0-9a-zA-Z+/]*={0,2}$/,om=t4("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=of),aX.init(e,t),e._zod.check=r=>{oh(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),og=/^[A-Za-z0-9_-]*$/,oy=t4("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=og),aX.init(e,t),e._zod.check=r=>{!function(e){if(!og.test(e))return!1;let t=e.replace(/[-_]/g,e=>"-"===e?"+":"/");return oh(t.padEnd(4*Math.ceil(t.length/4),"="))}(r.value)&&r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),ov=t4("$ZodE164",(e,t)=>{t.pattern??(t.pattern=r0),aX.init(e,t)}),ob=/[- ]/g,ow=((e,t)=>{t.pattern??(t.pattern=r1),aX.init(e,t),e._zod.check=r=>{var a;a=r.value,r1.test(a)&&function(e){let t=e.length,r=1,a=0;for(;t;){let o=e.charCodeAt(--t)-48;r^=1,a+=r?[0,2,4,6,8,1,3,5,7,9][o]:o}return a%10==0}(a.replace(ob,""))||r.issues.push({code:"invalid_format",format:"credit_card",input:r.value,inst:e,continue:!t.abort})}},t4("$ZodJWT",(e,t)=>{aX.init(e,t),e._zod.check=r=>{!function(e,t=null){try{let r=e.split(".");if(3!==r.length)return!1;let[a]=r;if(!a)return!1;let o=JSON.parse(atob(a));if("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}(r.value,t.alg)&&r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}})),ox=((e,t)=>{aX.init(e,t),e._zod.check=r=>{t.fn(r.value)||r.issues.push({code:"invalid_format",format:t.format,input:r.value,inst:e,continue:!t.abort})}},t4("$ZodNumber",(e,t)=>{aH.init(e,t),e._zod.pattern=ar,e._zod.parse=(r,a)=>{if(t.coerce)try{r.value=Number(r.value)}catch(e){}let o=r.value;if("number"==typeof o&&!Number.isNaN(o)&&Number.isFinite(o))return r;let n="number"==typeof o?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:String(o):void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...n?{received:n}:{}}),r}})),o_=t4("$ZodNumberFormat",(e,t)=>{aE.init(e,t),ox.init(e,t)}),oI=t4("$ZodBoolean",(e,t)=>{aH.init(e,t),e._zod.pattern=aa,e._zod.parse=(r,a)=>{if(t.coerce)try{r.value=!!r.value}catch(e){}let o=r.value;return"boolean"==typeof o||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}}),ok=t4("$ZodBigInt",(e,t)=>{aH.init(e,t),e._zod.pattern=ae,e._zod.parse=(r,a)=>{if(t.coerce)try{r.value=BigInt(r.value)}catch(e){}return"bigint"==typeof r.value||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:e}),r}}),oS=((e,t)=>{aC.init(e,t),ok.init(e,t)},t4("$ZodNull",(e,t)=>{aH.init(e,t),e._zod.pattern=ao,e._zod.values=new Set([null]),e._zod.parse=(t,r)=>{let a=t.value;return null===a||t.issues.push({expected:"null",code:"invalid_type",input:a,inst:e}),t}})),oT=t4("$ZodAny",(e,t)=>{aH.init(e,t),e._zod.parse=e=>e}),oE=t4("$ZodUnknown",(e,t)=>{aH.init(e,t),e._zod.parse=e=>e}),oC=t4("$ZodNever",(e,t)=>{aH.init(e,t),e._zod.parse=(t,r)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)});function oM(e,t,r){e.issues.length&&t.issues.push(...tE(r,e.issues)),t.value[r]=e.value}(e,t)=>{aH.init(e,t),e._zod.parse=(t,r)=>{let a=t.value;return void 0===a||t.issues.push({expected:"void",code:"invalid_type",input:a,inst:e}),t}},(e,t)=>{aH.init(e,t),e._zod.parse=(r,a)=>{if(t.coerce)try{r.value=new Date(r.value)}catch(e){}let o=r.value,n=o instanceof Date;return n&&!Number.isNaN(o.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:o,...n?{received:"Invalid Date"}:{},inst:e}),r}};let oA=t4("$ZodArray",(e,t)=>{aH.init(e,t);let r=t3.memoizer;r?.attach(e),e._zod.parse=(a,o)=>{let n=a.value;if(!Array.isArray(n))return a.issues.push({expected:"array",code:"invalid_type",input:n,inst:e}),a;a.value=r?r.alloc(e,a,Array(n.length),o):Array(n.length);
5let i=[],s=o?.abortEarly;for(let e=0;e<n.length;e++){let r=n[e],l=t.element._zod.run({value:r,issues:[]},o);if(l instanceof Promise)i.push(l.then(t=>oM(t,a,e)));else if(oM(l,a,e),s&&0!==l.issues.length&&tS(l))break}return i.length?Promise.all(i).then(()=>a):a}});function oO(e,t,r,a,o,n){let i=r in a,s="optional"===n;if(i||!s||"optional"!==o){if(e.issues.length){if(void 0!==o&&s&&!i)return;t.issues.push(...tE(r,e.issues))}if(!i&&void 0===o){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}void 0===e.value?(i||"defaulted"===o&&!s)&&(t.value[r]=void 0):t.value[r]=e.value}}let oR=[];function oP(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),a=r.length?r:oR,o=a.length?[...t,...a]:t;for(let t of o)if(!e.shape?.[t]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${String(t)}": expected a Zod schema`);let n=th(e.shape);return{...e,allKeys:o,symbolKeys:a,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function o$(e,t,r,a,o,n,i){let s=[],l=o.keySet,u=o.catchall._zod,d=u.def.type,c=u.optin,p=u.optout,h=0;for(let o in t){if(i&&r.issues.length!==h){if(tS(r,h))break;h=r.issues.length}if(l.has(o))continue;if("__proto__"===o){"never"===d&&s.push(o);continue}if("never"===d){s.push(o);continue}let n=u.run({value:t[o],issues:[]},a);n instanceof Promise?e.push(n.then(e=>oO(e,r,o,t,c,p))):oO(n,r,o,t,c,p)}return(s.length&&r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:n,continue:!0}),e.length)?Promise.all(e).then(()=>r):r}let oN=t4("$ZodObject",(e,t)=>{let r;aH.init(e,t);let a=Object.getOwnPropertyDescriptor(t,"shape"),o=a?.get?a.get.raw:t.shape??{};if(o){let e=()=>{let r={...o};return Object.defineProperty(t,"shape",{value:r}),e.raw=r,r};e.raw=o,Object.defineProperty(t,"shape",{get:e})}let n=eZ(()=>oP(t));tY(e,"propValues",e=>{let t=e.def.shape,r={};for(let e in t){let a=t[e]._zod;if(a.values){for(let t of(Object.prototype.hasOwnProperty.call(r,e)||eW(r,e,new Set),a.values))r[e].add(t);void 0!==a.optin&&r[e].add(void 0)}}return r});let i=t.catchall,s=t3.memoizer;s?.attach(e),e._zod.parse=(t,a)=>{r??(r=n.value);let o=t.value;if(!te(o))return t.issues.push({expected:"object",code:"invalid_type",input:o,inst:e}),t;t.value=s?s.alloc(e,t,{},a):{};let l=[],u=r.shape,d=a?.abortEarly,c=t.issues.length;for(let e of r.allKeys){if(d&&t.issues.length!==c){if(tS(t,c))break;c=t.issues.length}if("__proto__"===e)continue;let r=u[e],n=r._zod.optin,i=r._zod.optout,s=r._zod.run({value:o[e],issues:[]},a);s instanceof Promise?l.push(s.then(r=>oO(r,t,e,o,n,i))):oO(s,t,e,o,n,i)}return i?o$(l,o,t,a,n.value,e,!0===d):l.length?Promise.all(l).then(()=>t):t}}),oz=t4("$ZodObjectJIT",(e,t)=>{let r,a;oN.init(e,t);let o=e._zod.parse,n=eZ(()=>oP(t)),i=t3.memoizer,s=!t3.jitless,l=s&&tt.value,u=t.catchall;e._zod.parse=(d,c)=>{a??(a=n.value);let p=d.value;return te(p)?s&&l&&c?.async===!1&&!0!==c.jitless?(r||(r=(t=>{let r=n.value,a=r.symbolKeys,o=new aV(["payload","ctx"],{shape:t,inst:e,memo:i,syms:a}),s=e=>`shape[${e}]._zod.run({ value: input[${e}], issues: [] }, ctx)`,l=(e,t)=>` 6 let ${e}_ab = false; 7 for (let i = 0; i < ${e}.issues.length; i++) { 8 const iss = ${e}.issues[i]; 9 iss.path = iss.path ? [${t}, ...iss.path] : [${t}]; 10 payload.issues.push(iss); 11 if (iss.continue !== true) ${e}_ab = true; 12 } 13 if (${e}_ab && ctx && ctx.abortEarly) { 14 payload.value = newResult; 15 return payload; 16 }`;o.write("const input = payload.value;");let u=Object.create(null),d=0;for(let e of r.allKeys)u[e]=`key_${d++}`;for(let e of(o.write(i?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};"),r.allKeys)){if("__proto__"===e)continue;let r=u[e],n="symbol"==typeof e?`syms[${a.indexOf(e)}]`:e5(e),i=`${n} in input`,d=t[e],c=d?._zod?.optin,p=void 0!==c,h=d?._zod?.optout==="optional";if(o.write(`const ${r} = ${s(n)};`),p&&h){let e="optional"===c?`${r}_present`:`${r}.value !== undefined || ${r}_present`;o.write(` 17 const ${r}_present = ${i}; 18 if (!${r}.issues.length || ${r}_present) { 19 if (${r}.issues.length) {${l(r,n)} 20 } 21 22 if (${e}) { 23 newResult[${n}] = ${r}.value; 24 } 25 } 26 27 `)}else p?(o.write(` 28 if (${r}.issues.length) {${l(r,n)} 29 } 30 `),"defaulted"===c?o.write(`newResult[${n}] = ${r}.value;`):o.write(` 31 if (${r}.value !== undefined || ${i}) { 32 newResult[${n}] = ${r}.value; 33 } 34 `)):o.write(` 35 const ${r}_present = ${i}; 36 if (${r}.issues.length) {${l(r,n)} 37 } 38 if (!${r}_present && !${r}.issues.length) { 39 payload.issues.push({
40 code: "invalid_type", 41 expected: "nonoptional", 42 input: undefined, 43 path: [${n}] 44 }); 45 if (ctx && ctx.abortEarly) { 46 payload.value = newResult; 47 return payload; 48 } 49 } 50 51 if (${r}_present) { 52 newResult[${n}] = ${r}.value; 53 } 54 55 `)}return o.write("payload.value = newResult;"),o.write("return payload;"),o.compile()})(t.shape)),d=r(d,c),u)?o$([],p,d,c,a,e,c?.abortEarly===!0):d:o(d,c):(d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d)}});function oj(e,t,r,a){for(let r of e)if(0===r.issues.length)return t.value=r.value,t;let o=e.filter(e=>!tS(e));return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(e=>e.issues.map(e=>tA(e,a,t5())))}),t)}let oD=t4("$ZodUnion",(e,t)=>{aH.init(e,t),tY(e,"optin",e=>e.def.options.some(e=>"defaulted"===e._zod.optin)?"defaulted":e.def.options.some(e=>void 0!==e._zod.optin)?"optional":void 0),tY(e,"optout",e=>e.def.options.some(e=>"optional"===e._zod.optout)?"optional":void 0),tY(e,"values",e=>{if(e.def.options.every(e=>e._zod.values))return new Set(e.def.options.flatMap(e=>Array.from(e._zod.values)))}),tY(e,"pattern",e=>{if(e.def.options.every(e=>e._zod.pattern)){let t=e.def.options.map(e=>e._zod.pattern);return RegExp(`^(${t.map(e=>eV(e.source)).join("|")})$`)}});let r=1===t.options.length?t.options[0]._zod.run:null;e._zod.parse=(a,o)=>{if(r)return r(a,o);let n=!1,i=[];for(let e of t.options){let t=e._zod.run({value:a.value,issues:[]},o);if(t instanceof Promise)i.push(t),n=!0;else{if(0===t.issues.length)return t;i.push(t)}}return n?Promise.all(i).then(t=>oj(t,a,e,o)):oj(i,a,e,o)}});function oq(e,t,r,a){let o=[];for(let t=0;t<e.length;t++)0===e[t].issues.length&&o.push(t);return 1===o.length?t.value=e[o[0]].value:0===o.length?t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(e=>e.issues.map(e=>tA(e,a,t5())))}):t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:[],inclusive:!1,matches:o}),t}(e,t)=>{oD.init(e,t),t.inclusive=!1;let r=1===t.options.length?t.options[0]._zod.run:null;e._zod.parse=(a,o)=>{if(r)return r(a,o);let n=!1,i=[];for(let e of t.options){let t=e._zod.run({value:a.value,issues:[]},o);t instanceof Promise?(i.push(t),n=!0):i.push(t)}return n?Promise.all(i).then(t=>oq(t,a,e,o)):oq(i,a,e,o)}};let oU=t4("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,oD.init(e,t);let r=e._zod.parse;tY(e,"propValues",e=>{let t={},r=0;for(let a of e.def.options){let o=a._zod.propValues;if(!o||0===Object.keys(o).length)throw Error(`Invalid discriminated union option at index "${e.def.options.indexOf(a)}"`);for(let[a,n]of(o[e.def.discriminator]?.has(void 0)&&r++,Object.entries(o)))for(let e of(Object.prototype.hasOwnProperty.call(t,a)||eW(t,a,new Set),n))t[a].add(e)}return!e.def.unionFallback&&r>1&&t[e.def.discriminator]?.delete(void 0),t}),t.options.forEach((e,r)=>{let a=eY(e._zod.def);if(a&&!Object.prototype.hasOwnProperty.call(a,t.discriminator))throw Error(`Invalid discriminated union option at index "${r}"`)});let a=eZ(()=>(function(e){let t=new Map;for(let r of e.options){let a=r._zod.propValues?.[e.discriminator];if(!a||0===a.size)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(r)}"`);for(let e of a)if(t.has(e)){if(void 0!==e)throw Error(`Duplicate discriminator value "${String(e)}"`);t.set(e,null)}else t.set(e,r)}return t})(t));e._zod.parse=(o,n)=>{let i=o.value;if(!te(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),o;let s=i?.[t.discriminator],l=a.value.get(s);return l&&(void 0!==s||"backward"!==n.direction)?l._zod.run(o,n):t.unionFallback||"backward"===n.direction?r(o,n):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(a.value.keys()).filter(e=>null!==a.value.get(e)),input:i,path:[t.discriminator],inst:e}),o)}}),oL=t4("$ZodIntersection",(e,t)=>{aH.init(e,t),e._zod.parse=(e,r)=>{let a=e.value,o=t.left._zod.run({value:a,issues:[]},r),n=t.right._zod.run({value:a,issues:[]},r);return o instanceof Promise||n instanceof Promise?Promise.all([o,n]).then(([t,r])=>oF(e,t,r)):oF(e,o,n)}});function oF(e,t,r){let a,o=new Map,n=new Map,i=(e,t)=>{let r;if("unrecognized_keys"!==e.code||e.path?.length)if("invalid_key"!==e.code||"record"!==e.origin||e.path?.length!==1)return!1;else{let t=String(e.path[0]);n.has(t)||n.set(t,e),r=[t]}else a??(a=e),r=e.keys;for(let e of r)o.has(e)||o.set(e,{}),o.get(e)[t]=!0;return!0};for(let r of t.issues)i(r,"l")||e.issues.push(r);for(let t of r.issues)i(t,"r")||e.issues.push(t);let s=[...o].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(s.length){let t=a?s.filter(e=>
55a.keys.includes(e)):[];for(let r of(t.length&&e.issues.push({...a,keys:t}),s))!t.includes(r)&&n.has(r)&&e.issues.push(n.get(r))}let l=function e(t,r){if(t===r||t instanceof Date&&r instanceof Date&&+t==+r)return{valid:!0,data:t};if(tr(t)&&tr(r)){let a=Object.keys(r),o=Object.keys(t).filter(e=>-1!==a.indexOf(e)),n={...t,...r};for(let a of(Object.prototype.hasOwnProperty.call(n,"__proto__")&&delete n.__proto__,o)){if("__proto__"===a)continue;let o=e(t[a],r[a]);if(!o.valid)return{valid:!1,mergeErrorPath:[a,...o.mergeErrorPath]};n[a]=o.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(r)){if(t.length!==r.length)return{valid:!1,mergeErrorPath:[]};let a=[];for(let o=0;o<t.length;o++){let n=e(t[o],r[o]);if(!n.valid)return{valid:!1,mergeErrorPath:[o,...n.mergeErrorPath]};a.push(n.data)}return{valid:!0,data:a}}return{valid:!1,mergeErrorPath:[]}}(t.value,r.value);if(!l.valid){if(tS(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(l.mergeErrorPath)}`)}return e.value=l.data,e}let oZ=t4("$ZodTuple",(e,t)=>{aH.init(e,t);let r=t.items,a=t3.memoizer;a?.attach(e),e._zod.parse=(o,n)=>{let i=o.value;if(!Array.isArray(i))return o.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),o;o.value=a?a.alloc(e,o,[],n):[];let s=[],l=oB(r,"optin"),u=oB(r,"optout");if(!t.rest){if(i.length<l)return o.issues.push({code:"too_small",minimum:l,inclusive:!0,input:i,inst:e,origin:"array"}),o;i.length>r.length&&o.issues.push({code:"too_big",maximum:r.length,inclusive:!0,input:i,inst:e,origin:"array"})}let d=Array(r.length),c=t.rest?n?.abortEarly:void 0,p=!1;for(let e=0;e<r.length;e++){let t=r[e]._zod.run({value:i[e],issues:[]},n);t instanceof Promise?s.push(t.then(t=>{d[e]=t})):(d[e]=t,c&&!p&&t.issues.length&&(p=tS(t)))}if(t.rest&&!p){let e=r.length-1,a=i.slice(r.length),l=o.issues.length;for(let r of a){if(c&&o.issues.length!==l){if(tS(o,l))break;l=o.issues.length}e++;let a=t.rest._zod.run({value:r,issues:[]},n);a instanceof Promise?s.push(a.then(t=>oV(t,o,e))):oV(a,o,e)}}return s.length?Promise.all(s).then(()=>oG(d,o,r,i,u)):oG(d,o,r,i,u)}});function oB(e,t){for(let r=e.length-1;r>=0;r--)if(!("optin"===t?void 0!==e[r]._zod.optin:"optional"===e[r]._zod.optout))return r+1;return 0}function oV(e,t,r){e.issues.length&&t.issues.push(...tE(r,e.issues)),t.value[r]=e.value}function oG(e,t,r,a,o){for(let n=0;n<r.length;n++){let i=e[n],s=n<a.length;if(!s&&n>=o&&"optional"===r[n]._zod.optin){t.value.length=n;break}if(i.issues.length){if(!s&&n>=o){t.value.length=n;break}t.issues.push(...tE(n,i.issues))}t.value[n]=i.value}for(let e=t.value.length-1;e>=a.length;e--)if("optional"===r[e]._zod.optout&&void 0===t.value[e])t.value.length=e;else break;return t}let oH=t4("$ZodRecord",(e,t)=>{aH.init(e,t);let r=t3.memoizer;r?.attach(e),e._zod.parse=(a,o)=>{let n=a.value;if(!tr(n))return a.issues.push({expected:"record",code:"invalid_type",input:n,inst:e}),a;let i=[],s=t.keyType._zod.values;if(s&&!t.partial){let l;a.value=r?r.alloc(e,a,{},o):{};let u=new Set;for(let r of s)if("string"==typeof r||"number"==typeof r||"symbol"==typeof r){if(u.add("number"==typeof r?r.toString():r),"__proto__"===r)continue;let s=t.keyType._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(s.issues.length){a.issues.push({code:"invalid_key",origin:"record",issues:s.issues.map(e=>tA(e,o,t5())),input:r,path:[r],inst:e});continue}let l=s.value;if("__proto__"===l)continue;let d=t.valueType._zod.run({value:n[r],issues:[]},o);d instanceof Promise?i.push(d.then(e=>{e.issues.length&&a.issues.push(...tE(r,e.issues)),a.value[l]=e.value})):(d.issues.length&&a.issues.push(...tE(r,d.issues)),a.value[l]=d.value)}for(let e in n)if(!u.has(e))if("loose"===t.mode){if("__proto__"===e)continue;a.value[e]=n[e]}else(l=l??[]).push(e);l&&l.length>0&&a.issues.push({code:"unrecognized_keys",input:n,inst:e,keys:l,continue:!0})}else{let l;for(let u of(a.value=r?r.alloc(e,a,{},o):{},Reflect.ownKeys(n))){if("__proto__"===u||!Object.prototype.propertyIsEnumerable.call(n,u))continue;let r=t.keyType._zod.run({value:u,issues:[]},o);if(r instanceof Promise)throw Error("Async schemas not supported in object keys currently");if("string"==typeof u&&ar.test(u)&&r.issues.length){let e=t.keyType._zod.run({value:Number(u),issues:[]},o);if(e instanceof Promise)throw Error("Async schemas not supported in object keys currently");0===e.issues.length&&(r=e)}if(r.issues.length){"loose"===t.mode?a.value[u]=n[u]:s?(l=l??[]).push(u):a.issues.push({code:"invalid_key",origin:"record",issues:r.issues.map(e=>
55tA(e,o,t5())),input:u,path:[u],inst:e});continue}let d=r.value;if("__proto__"===d)continue;let c=t.valueType._zod.run({value:n[u],issues:[]},o);c instanceof Promise?i.push(c.then(e=>{e.issues.length&&a.issues.push(...tE(u,e.issues)),a.value[d]=e.value})):(c.issues.length&&a.issues.push(...tE(u,c.issues)),a.value[d]=c.value)}l&&l.length>0&&a.issues.push({code:"unrecognized_keys",input:n,inst:e,keys:l,continue:!0})}return i.length?Promise.all(i).then(()=>a):a}});function oJ(e,t,r,a,o,n,i){e.issues.length&&(ti.has(typeof a)?r.issues.push(...tE(a,e.issues)):r.issues.push({code:"invalid_key",origin:"map",input:o,inst:n,issues:e.issues.map(e=>tA(e,i,t5()))})),t.issues.length&&(ti.has(typeof a)?r.issues.push(...tE(a,t.issues)):r.issues.push({origin:"map",code:"invalid_element",input:o,inst:n,key:a,issues:t.issues.map(e=>tA(e,i,t5()))})),r.value.set(e.value,t.value)}function oK(e,t){e.issues.length&&t.issues.push(...e.issues),t.value.add(e.value)}(e,t)=>{aH.init(e,t);let r=t3.memoizer;r?.attach(e),e._zod.parse=(a,o)=>{let n=a.value;if(!(n instanceof Map))return a.issues.push({expected:"map",code:"invalid_type",input:n,inst:e}),a;let i=[];a.value=r?r.alloc(e,a,new Map,o):new Map;
55let s=o?.abortEarly,l=a.issues.length;for(let[r,u]of n){if(s&&a.issues.length!==l){if(tS(a,l))break;l=a.issues.length}let d=t.keyType._zod.run({value:r,issues:[]},o),c=t.valueType._zod.run({value:u,issues:[]},o);d instanceof Promise||c instanceof Promise?i.push(Promise.all([d,c]).then(([t,i])=>{oJ(t,i,a,r,n,e,o)})):oJ(d,c,a,r,n,e,o)}return i.length?Promise.all(i).then(()=>a):a}},(e,t)=>{aH.init(e,t);let r=t3.memoizer;r?.attach(e),e._zod.parse=(a,o)=>{let n=a.value;if(!(n instanceof Set))return a.issues.push({input:n,inst:e,expected:"set",code:"invalid_type"}),a;let i=[];a.value=r?r.alloc(e,a,new Set,o):new Set;let s=o?.abortEarly,l=a.issues.length;for(let e of n){if(s&&a.issues.length!==l){if(tS(a,l))break;l=a.issues.length}let r=t.valueType._zod.run({value:e,issues:[]},o);r instanceof Promise?i.push(r.then(e=>oK(e,a))):oK(r,a)}return i.length?Promise.all(i).then(()=>a):a}};let oW=t4("$ZodEnum",(e,t)=>{aH.init(e,t);let r=eq(t.entries),a=new Set(r);e._zod.values=a,tY(e,"pattern",e=>{let t=eq(e.def.entries).filter(e=>ti.has(typeof e));return new RegExp(t.length?`^(${t.map(e=>tl(e.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(t,o)=>{let n=t.value;return a.has(n)||t.issues.push({code:"invalid_value",values:r,input:n,inst:e}),t}}),oY=t4("$ZodLiteral",(e,t)=>{aH.init(e,t);let r=new Set(t.values);e._zod.values=r,tY(e,"pattern",e=>{let t=e.def.values;return new RegExp(t.length?`^(${t.map(e=>"string"==typeof e?tl(e):e?tl(e.toString()):String(e)).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(a,o)=>{let n=a.value;return r.has(n)||a.issues.push({code:"invalid_value",values:t.values,input:n,inst:e}),a}}),oX=((e,t)=>{aH.init(e,t),e._zod.parse=(t,r)=>{let a=t.value;return a instanceof File||t.issues.push({expected:"file",code:"invalid_type",input:a,inst:e}),t}},t4("$ZodTransform",(e,t)=>{aH.init(e,t),e._zod.optin="optional",t3.memoizer?.guard(e),e._zod.parse=(r,a)=>{if("backward"===a.direction)throw new t9(e.constructor.name);let o=t.transform(r.value,r);if(a.async)return(o instanceof Promise?o:Promise.resolve(o)).then(e=>(r.value=e,r));if(o instanceof Promise)throw new t6;return r.value=o,r}}));function oQ(e,t){return e.value=t.issues.length?void 0:t.value,e}let o0=t4("$ZodOptional",(e,t)=>{aH.init(e,t),tY(e,"optin",e=>"defaulted"===e.def.innerType._zod.optin?"defaulted":"optional"),e._zod.optout="optional",tY(e,"values",e=>{let t=e.def.innerType._zod.values;return t?new Set([...t,void 0]):void 0}),tY(e,"pattern",e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${eV(t.source)})?$`):void 0}),e._zod.parse=(e,r)=>{if(void 0===e.value){if("defaulted"!==t.innerType._zod.optin)return e;let a=t.innerType._zod.run({value:e.value,issues:[]},r);return a instanceof Promise?a.then(t=>oQ(e,t)):oQ(e,a)}return t.innerType._zod.run(e,r)}}),o1=t4("$ZodExactOptional",(e,t)=>{o0.init(e,t),tY(e,"values",e=>e.def.innerType._zod.values),tY(e,"pattern",e=>e.def.innerType._zod.pattern),e._zod.parse=(e,r)=>t.innerType._zod.run(e,r)}),o2=t4("$ZodNullable",(e,t)=>{aH.init(e,t),tY(e,"optin",e=>e.def.innerType._zod.optin),tY(e,"optout",e=>e.def.innerType._zod.optout),tY(e,"pattern",e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${eV(t.source)}|null)$`):void 0}),tY(e,"values",e=>e.def.innerType._zod.values?new Set([...e.def.innerType._zod.values,null]):void 0),e._zod.parse=(e,r)=>null===e.value?e:t.innerType._zod.run(e,r)}),o4=t4("$ZodDefault",(e,t)=>{aH.init(e,t),e._zod.optin="defaulted",tY(e,"values",e=>e.def.innerType._zod.values),e._zod.parse=(e,r)=>{if("backward"===r.direction)return t.innerType._zod.run(e,r);if(void 0===e.value)return e.value=t.defaultValue,e;let a=t.innerType._zod.run(e,r);return a instanceof Promise?a.then(e=>o6(e,t)):o6(a,t)}});function o6(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}let o9=t4("$ZodPrefault",(e,t)=>{aH.init(e,t),e._zod.optin="defaulted",tY(e,"values",e=>e.def.innerType._zod.values),e._zod.parse=(e,r)=>("backward"===r.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,r))}),o3=t4("$ZodNonOptional",(e,t)=>{aH.init(e,t),tY(e,"values",e=>{let t=e.def.innerType._zod.values;return t?new Set([...t].filter(e=>void 0!==e)):void 0}),e._zod.parse=(r,a)=>{let o=t.innerType._zod.run(r,a);return o instanceof Promise?o.then(t=>o5(t,e)):o5(o,e)}});function o5(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}function o8(e,t,r,a){return t.issues.length?e.value=r.catchValue({...t,value:e.value,error:{issues:t.issues.map(e=>tA(e,a,t5()))},input:e.value}):(e.value=t.value,t.memo&&(e.memo=!0)),e}(e,t)=>{aH.init(e,t),e._zod.parse=(e,r)=>{if("backward"===r.direction)throw new t9("ZodSuccess");let a=t.innerType._zod.run(e,r);return a instanceof Promise?a.then(t=>(e.value=0===t.issues.length,e)):(e.value=0===a.issues.length,e)}};let o7=t4("$ZodCatch",(e,t)=>{aH.init(e,t),tY(e,"optin",e=>"defaulted"===e.def.innerType._zod.optin?"defaulted":"optional"),tY(e,"optout",e=>e.def.innerType._zod.optout),tY(e,"values",e=>e.def.innerType._zod.values),e._zod.parse=(e,r)=>{if("backward"===r.direction)return t.innerType._zod.run(e,r);let a=t.innerType._zod.run({value:e.value,issues:[]},r);return a instanceof Promise?a.then(a=>o8(e,a,t,r)):o8(e,a,t,r)}}),ne=((e,t)=>{aH.init(e,t),e._zod.parse=(t,r)=>("number"==typeof t.value&&Number.isNaN(t.value)||t.issues.push({input:t.value,inst:e,expected:"nan",code:"invalid_type"}),t)},t4("$ZodPipe",(e,t)=>{aH.init(e,t),tY(e,"values",e=>e.def.in._zod.values),tY(e,"optin",e=>e.def.in._zod.optin),tY(e,"optout",e=>e.def.out._zod.optout),tY(e,"propValues",e=>e.def.in._zod.propValues),e._zod.parse=(e,r)=>{if("backward"===r.direction){let a=t.out._zod.run(e,r);return a instanceof Promise?a.then(e=>nt(e,t.in,r)):nt(a,t.in,r)}let a=t.in._zod.run(e,r);return a instanceof Promise?a.then(e=>nt(e,t.out,r)):nt(a,t.out,r)}}));function nt(e,t,r){return e.issues.some(e=>"unrecognized_keys"!==e.code)?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}function nr(e,t,r){if(e.issues.length)return e.aborted=!0,e;if("forward"===(r.direction||"forward")){let a=t.transform(e.value,e);return a instanceof Promise?a.then(a=>na(e,a,t.out,r)):na(e,a,t.out,r)}{let a=t.reverseTransform(e.value,e);return a instanceof Promise?a.then(a=>na(e,a,t.in,r)):na(e,a,t.in,r)}}function na(e,t,r,a){return e.issues.length?(e.aborted=!0,e):r._zod.run({value:t,issues:e.issues},a)}(e,t)=>
55{aH.init(e,t),tY(e,"values",e=>e.def.in._zod.values),tY(e,"optin",e=>e.def.in._zod.optin),tY(e,"optout",e=>e.def.out._zod.optout),tY(e,"propValues",e=>e.def.in._zod.propValues),e._zod.parse=(e,r)=>{if("forward"===(r.direction||"forward")){let a=t.in._zod.run(e,r);return a instanceof Promise?a.then(e=>nr(e,t,r)):nr(a,t,r)}{let a=t.out._zod.run(e,r);return a instanceof Promise?a.then(e=>nr(e,t,r)):nr(a,t,r)}}},(e,t)=>{ne.init(e,t)};let no=t4("$ZodReadonly",(e,t)=>{aH.init(e,t),tY(e,"propValues",e=>e.def.innerType._zod.propValues),tY(e,"values",e=>e.def.innerType._zod.values),tY(e,"optin",e=>e.def.innerType?._zod?.optin),tY(e,"optout",e=>e.def.innerType?._zod?.optout),e._zod.parse=(e,r)=>{if("backward"===r.direction)return t.innerType._zod.run(e,r);let a=t.innerType._zod.run(e,r);return a instanceof Promise?a.then(nn):nn(a)}});function nn(e){return e.memo||(e.value=Object.freeze(e.value)),e}(e,t)=>{aH.init(e,t);let r=[];for(let e of t.parts)if("object"==typeof e&&null!==e){let t=function e(t){let r=t._zod.def,a=t._zod.pattern?.source,o=r.innerType??t._zod.innerType;if(o){let t=o._zod.pattern?.source,r=e(o);return a&&t&&r&&r!==t?a.replace(eV(t),()=>eV(r)):a}if(r.options){let t=r.options.map(e);if(t.every(Boolean))return`^(${t.map(e=>eV(e)).join("|")})$`}return function(e){let t,r,a=e._zod.def,o=a.pattern,n=!!a.format?.includes("int");for(let e of a.checks??[]){let a=e._zod.def;a.pattern&&(o=a.pattern),n||(n=!!a.format?.includes("int"));let i=a.minimum??a.length,s=a.maximum??a.length;void 0!==i&&(void 0===t||i>t)&&(t=i),void 0!==s&&(void 0===r||s<r)&&(r=s)}if(o)return o.source;if(void 0!==t&&void 0!==r&&t>r)return"(?!)";if(void 0!==t||void 0!==r)return r7({minimum:t,maximum:r}).source;let i=e._zod.pattern;return(n&&i===ar?at:i)?.source}(t)}(e);if(!t)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);r.push(eV(t))}else if(null===e||ts.has(typeof e))r.push(tl(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${r.join("")}$`),e._zod.parse=(r,a)=>("string"!=typeof r.value?r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}):(e._zod.pattern.lastIndex=0,e._zod.pattern.test(r.value)||r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source})),r)},(e,t)=>{aH.init(e,t),e._zod.parse=(e,r)=>Promise.resolve(e.value).then(e=>t.innerType._zod.run({value:e,issues:[]},r))};let ni=t4("$ZodLazy",(e,t)=>{aH.init(e,t),eJ(e._zod,"innerType",()=>(t._cachedInner||(t._cachedInner=t.getter()),t._cachedInner)),tY(e,"pattern",e=>e.innerType?._zod?.pattern),tY(e,"propValues",e=>e.innerType?._zod?.propValues),tY(e,"optin",e=>e.innerType?._zod?.optin??void 0),tY(e,"optout",e=>e.innerType?._zod?.optout??void 0),e._zod.parse=(t,r)=>e._zod.innerType._zod.run(t,r)}),ns=t4("$ZodCustom",(e,t)=>{aw.init(e,t),aH.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=r=>{let a=r.value,o=t.fn(a);if(o instanceof Promise)return o.then(t=>nl(t,r,a,e));nl(o,r,a,e)}});function nl(e,t,r,a){if(!e){let e={code:"custom",input:r,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};a._zod.def.params&&(e.params=a._zod.def.params),t.issues.push(tz(e))}}(m=globalThis).__zod_globalRegistry??(m.__zod_globalRegistry=new class e{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];return this._map.set(e,r),r&&"object"==typeof r&&"id"in r&&this._idmap.set(r.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let a={...r,...this._map.get(e)};return Object.keys(a).length?a:void 0}return this._map.get(e)}has(e){return this._map.has(e)}});let nu=globalThis.__zod_globalRegistry;function nd(e,...t){for(let r of t)for(let t of Reflect.ownKeys(r))Object.prototype.propertyIsEnumerable.call(r,t)&&eW(e,t,r[t]);return e}function nc(e){let t=e?.target??"draft-2020-12";return"draft-4"===t&&(t="draft-04"),"draft-7"===t&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??nu,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??"ref",reused:e?.reused??"inline",intersections:[],deferred:[],external:e?.external??void 0}}function np(e,t,r,a,o){let n="function"==typeof t.unrepresentable?t.unrepresentable({zodSchema:e,path:a.path,message:o}):t.unrepresentable;if("any"===n)return!1;if(void 0===n||"throw"===n)throw Error(o);return Object.assign(r,n),!0}function nh(e,t,r={path:[],schemaPath:[]}){var a;let o=e._zod.def,n=t.seen.get(e);if(n)return n.count++,r.schemaPath.includes(e)&&(n.cycle=r.path),n.schema;let i={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,i),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let s=e._zod.toJSONSchema?.();if(s)i.schema=s;else{let a={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,i.schema,a);else{let r=i.schema,n=t.processors[o.type];if(!n)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);
55n(e,t,r,a)}let n=e._zod.parent;n&&(i.ref||(i.ref=n),nh(n,t,a),t.seen.get(n).isParent=!0)}let l=t.metadataRegistry.get(e);return l&&nd(i.schema,l),"input"===t.io&&function e(t,r){let a=r??{seen:new Set};if(a.seen.has(t))return!1;a.seen.add(t);let o=t._zod.def;if("transform"===o.type)return!0;if("array"===o.type)return e(o.element,a);if("set"===o.type)return e(o.valueType,a);if("lazy"===o.type)return e(o.getter(),a);if("promise"===o.type||"optional"===o.type||"nonoptional"===o.type||"nullable"===o.type||"readonly"===o.type||"default"===o.type||"prefault"===o.type||"catch"===o.type)return e(o.innerType,a);if("intersection"===o.type)return e(o.left,a)||e(o.right,a);if("record"===o.type||"map"===o.type)return e(o.keyType,a)||e(o.valueType,a);if("pipe"===o.type)return!!t._zod.traits.has("$ZodCodec")||e(o.in,a)||e(o.out,a);if("object"===o.type){for(let t in o.shape)if(e(o.shape[t],a))return!0;return!1}if("union"===o.type){for(let t of o.options)if(e(t,a))return!0;return!1}if("tuple"===o.type){for(let t of o.items)if(e(t,a))return!0;if(o.rest&&e(o.rest,a))return!0}return!1}(e)&&(delete i.schema.examples,delete i.schema.default),"input"===t.io&&"_prefault"in i.schema&&((a=i.schema).default??(a.default=i.schema._prefault)),delete i.schema._prefault,t.seen.get(e).schema}function nf(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function nm(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;let a=new Map;for(let t of e.seen.entries()){let r=e.metadataRegistry.get(t[0])?.id;if(r){let e=a.get(r);if(e&&e!==t[0])throw Error(`Duplicate schema id "${r}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);a.set(r,t[0])}}let o=t=>{if(t[1].schema.$ref)return;let a=t[1],{ref:o,defId:n}=(t=>{let a="draft-2020-12"===e.target?"$defs":"definitions";if(e.external){let r=e.external.registry.get(t[0])?.id,o=e.external.uri??(e=>e);if(r)return{ref:o(r)};let n=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=n,{defId:n,ref:`${o("__shared")}#/${a}/${nf(n)}`}}let o=`#/${a}/`;if(t[1]===r&&!t[1].schema.id)return{ref:"#"};let n=t[1].schema.id??`__schema${e.counter++}`;return{defId:n,ref:o+nf(n)}})(t);a.def={...a.schema},n&&(a.defId=n);let i=a.schema;for(let e in i)delete i[e];i.$ref=o};if("throw"===e.cycles)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join("/")}/<root> 56 57Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let r of e.seen.entries()){let a=r[1];if(t===r[0]){o(r);continue}if(e.external){let a=e.external.registry.get(r[0])?.id;if(t!==r[0]&&a){o(r);continue}}if(e.metadataRegistry.get(r[0])?.id||a.cycle){o(r);continue}a.count>1&&"ref"===e.reused&&o(r)}e.external&&(e.sharedDefsExtractedFor=e.external)}let ng=new Set(["type","properties","required","additionalProperties"]),ny=["oneOf","anyOf"];function nv(e){let t=e.additionalProperties;return void 0===t||!1===t||"object"!=typeof t||null===t?null:Object.keys(t).length?t:null}function nb(e){let t=[];for(let r of e){if("object"!=typeof r||"object"!==r.type)return null;for(let e in r)if(!ng.has(e))return null;t.push(r)}let r={},a=new Set;for(let e of t){for(let a in e.properties){if(Object.prototype.hasOwnProperty.call(r,a))continue;let e=[];for(let r of t){let t=r.properties?.[a]??nv(r);null!=t&&(e.some(e=>JSON.stringify(e)===JSON.stringify(t))||e.push(t))}eW(r,a,1===e.length?e[0]:nb(e)??{allOf:e})}for(let t of e.required??[])a.add(t)}let o={type:"object",properties:r};if(a.size&&(o.required=[...a]),t.every(e=>!1===e.additionalProperties))o.additionalProperties=!1;else{let e=[];for(let r of t){let t=nv(r);t&&!e.some(e=>JSON.stringify(e)===JSON.stringify(t))&&e.push(t)}1===e.length?o.additionalProperties=e[0]:e.length>1&&(o.additionalProperties={allOf:e})}return o}function nw(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let a=t=>{let r=e.seen.get(t);if(null===r.ref)return;let o=r.def??r.schema,n={...o},i=r.ref;if(r.ref=null,i){a(i);let r=e.seen.get(i),s=r.schema;if(s.$ref&&("draft-07"===e.target||"draft-04"===e.target||"openapi-3.0"===e.target)?(o.allOf=o.allOf??[],o.allOf.push(s)):nd(o,s),nd(o,n),t._zod.parent===i)for(let e in o)"$ref"!==e&&"allOf"!==e&&(e in n||delete o[e]);if(s.$ref&&r.def)for(let e in o)"$ref"!==e&&"allOf"!==e&&e in r.def&&JSON.stringify(o[e])===JSON.stringify(r.def[e])&&delete o[e]}let s=t._zod.parent;if(s&&s!==i){a(s);let t=e.seen.get(s);if(t?.schema.$ref&&(o.$ref=t.schema.$ref,t.def))for(let e in o)"$ref"!==e&&"allOf"!==e&&e in t.def&&JSON.stringify(o[e])===JSON.stringify(t.def[e])&&delete o[e]}e.override({zodSchema:t,jsonSchema:o,path:r.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let t of[...e.seen.entries()].reverse())a(t[0]);if("openapi-3.0"!==e.target)for(let t of e.seen.entries())!function e(t){let r=t.anyOf;if(!Array.isArray(r)||0===r.length||void 0!==t.type)return;let a=[];for(let t of r){if(!t||"object"!=typeof t)return;e(t);let r=Object.keys(t);if(1!==r.length||"type"!==r[0])return;let o=t.type;for(let e of Array.isArray(o)?o:[o]){if("string"!=typeof e)return;a.includes(e)||a.push(e)}}delete t.anyOf,t.type=1===a.length?a[0]:a}(t[1].def??t[1].schema);for(let t of e.deferred)t();if(e.intersections.length){let t=new Map;for(let r of e.seen.values())for(let e of[r.schema,r.def]){let r=e?.allOf;if(!Array.isArray(r))continue;let a=t.get(r);a?a.push(e):t.set(r,[e])}for(let r of e.intersections)for(let e of t.get(r)??[])!function(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let t of ng)if(t in e)return;let r=t.filter(e=>ny.some(t=>Array.isArray(e[t]))),a=null;if(r.length){let e=r[0],o=ny.find(t=>Array.isArray(e[t]));if(1!==Object.keys(e).length)return;let n=t.filter(t=>t!==e),i=e[o].map(e=>nb([...n,e]));if(i.some(e=>!e))return;a={[o]:i}}else a=nb(t);a&&(delete e.allOf,nd(e,a))}(e)}}let o={};
57if("draft-2020-12"===e.target?o.$schema="https://json-schema.org/draft/2020-12/schema":"draft-07"===e.target?o.$schema="http://json-schema.org/draft-07/schema#":"draft-04"===e.target?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){let r=e.external.registry.get(t)?.id;if(!r)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(r)}nd(o,r.defId?r.schema:r.def??r.schema);let n=e.metadataRegistry.get(t)?.id;void 0!==n&&o.id===n&&delete o.id;let i=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,eW(i,e.defId,e.def))}e.external&&(e.sharedEmitDoneFor=e.external),e.external||Object.keys(i).length>0&&("draft-2020-12"===e.target?o.$defs=i:o.definitions=i);try{let r=JSON.parse(JSON.stringify(o));return Object.defineProperty(r,"~standard",{value:{...t["~standard"],jsonSchema:{input:nx(t,"input",e.processors),output:nx(t,"output",e.processors)}},enumerable:!1,writable:!1}),r}catch(e){throw Error("Error converting schema to JSON.")}}let nx=(e,t,r={})=>a=>{let{libraryOptions:o,target:n}=a??{},i=nc({...o??{},target:n,io:t,processors:r});return nh(e,i),nm(i,e),nw(i,e)},n_=(e,t,r)=>{(void 0===e[t]||r>e[t])&&(e[t]=r)},nI=(e,t,r)=>{(void 0===e[t]||r<e[t])&&(e[t]=r)},nk=(e,t)=>{n_(e,"minimum",t),nI(e,"maximum",t)},nS=(e,t)=>{e.multipleOf??(e.multipleOf=[]),e.multipleOf.includes(t)||e.multipleOf.push(t)},nT=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},nE=(e,t)=>{e.mime=e.mime?e.mime.filter(e=>t.includes(e)):[...t]},nC=(e,t)=>{e.format=t,t.includes("int")&&(e.isInt=!0)},nM=(e,t)=>n_(e,"minimum",t.minimum),nA=(e,t)=>nI(e,"maximum",t.maximum),nO=e=>(t,r)=>{nC(t,r.format);let[a,o]=e[r.format];n_(t,"minimum",a),nI(t,"maximum",o)},nR={greater_than:(e,t)=>n_(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>nI(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>nS(e,t.value),number_format:nO(tf),bigint_format:nO(tm),min_length:nM,max_length:nA,length_equals:(e,t)=>nk(e,t.length),min_size:nM,max_size:nA,size_equals:(e,t)=>nk(e,t.size),string_format:(e,t)=>{nC(e,t.format),t.pattern&&nT(e,t.pattern),("base64"===t.format||"base64url"===t.format)&&(e.contentEncoding=t.format),(t.local||-1===t.precision)&&(e.laxFormat=!0)},mime_type:(e,t)=>nE(e,t.mime)};function nP(e){let t={},r=e._zod.def;for(let a of e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[])nR[a._zod.def.check]?.(t,a._zod.def);let a=e._zod.bag;for(let e of(void 0!==a.minimum&&n_(t,"minimum",a.minimum),void 0!==a.exclusiveMinimum&&n_(t,"exclusiveMinimum",a.exclusiveMinimum),void 0!==a.maximum&&nI(t,"maximum",a.maximum),void 0!==a.exclusiveMaximum&&nI(t,"exclusiveMaximum",a.exclusiveMaximum),void 0!==a.multipleOf&&nS(t,a.multipleOf),void 0!==a.format&&(t.format??(t.format=a.format),a.format.includes("int")&&(t.isInt=!0)),a.mime&&nE(t,a.mime),a.patterns??[]))nT(t,e);return t}let n$={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},nN=new Map([[of,rY],[og,rX]]),nz=e=>nN.get(e)??e,nj=(e,t,r,a)=>{r.type="string";let{minimum:o,maximum:n,format:i,patterns:s,contentEncoding:l,laxFormat:u}=nP(e);if("number"==typeof o&&(r.minLength=o),"number"==typeof n&&(r.maxLength=n),i&&(r.format=n$[i]??i,""===r.format&&delete r.format,("time"===i||u)&&delete r.format),l&&(r.contentEncoding=l),s&&s.size>0){let e=[...s].map(nz);1===e.length?r.pattern=e[0].source:e.length>1&&(r.allOf=[...e.map(e=>({..."draft-07"===t.target||"draft-04"===t.target||"openapi-3.0"===t.target?{type:"string"}:{},pattern:e.source}))])}},nD=(e,t,r,a)=>{let{minimum:o,maximum:n,multipleOf:i,exclusiveMaximum:s,exclusiveMinimum:l,isInt:u}=nP(e);r.type=u?"integer":"number";let d="number"==typeof l&&l>=(o??-1/0),c="number"==typeof s&&s<=(n??1/0),p="draft-04"===t.target||"openapi-3.0"===t.target;if(d?p?(r.minimum=l,r.exclusiveMinimum=!0):r.exclusiveMinimum=l:"number"==typeof o&&(r.minimum=o),c?p?(r.maximum=s,r.exclusiveMaximum=!0):r.exclusiveMaximum=s:"number"==typeof n&&(r.maximum=n),i){let o=new Set;for(let n of i)Number.isFinite(n)&&0!==n?o.add(Math.abs(n)):np(e,t,r,a,`A multipleOf divisor of ${n} cannot be represented in JSON Schema`);
57let[n,...s]=o;void 0!==n&&(r.multipleOf=n),s.length&&(r.allOf=[...r.allOf??[],...s.map(e=>({multipleOf:e}))])}},nq=(e,t,r,a)=>{r.type="boolean"},nU=(e,t,r,a)=>{np(e,t,r,a,"BigInt cannot be represented in JSON Schema")},nL=(e,t,r,a)=>{"openapi-3.0"===t.target?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},nF=(e,t,r,a)=>{r.not={}},nZ=(e,t,r,a)=>{},nB=(e,t,r,a)=>{},nV=(e,t,r,a)=>{let o=eq(e._zod.def.entries);if(0===o.length){r.not={};return}o.every(e=>"number"==typeof e)&&(r.type="number"),o.every(e=>"string"==typeof e)&&(r.type="string"),r.enum=o},nG=(e,t,r,a)=>{let o=e._zod.def;if(0===o.values.length){r.not={};return}let n=[];for(let i of o.values)if(void 0===i){if(np(e,t,r,a,"Literal `undefined` cannot be represented in JSON Schema"))return}else if("bigint"==typeof i){if(np(e,t,r,a,"BigInt literals cannot be represented in JSON Schema"))return;n.push(Number(i))}else n.push(i);if(0===n.length);else if(1===n.length){let e=n[0];r.type=null===e?"null":typeof e,"draft-04"===t.target||"openapi-3.0"===t.target?r.enum=[e]:r.const=e}else n.every(e=>"number"==typeof e)&&(r.type="number"),n.every(e=>"string"==typeof e)&&(r.type="string"),n.every(e=>"boolean"==typeof e)&&(r.type="boolean"),n.every(e=>null===e)&&(r.type="null"),r.enum=n},nH=(e,t,r,a)=>{np(e,t,r,a,"Custom types cannot be represented in JSON Schema")},nJ=(e,t,r,a)=>{np(e,t,r,a,"Transforms cannot be represented in JSON Schema")},nK=(e,t,r,a)=>{let o=e._zod.def,{minimum:n,maximum:i}=nP(e);"number"==typeof n&&(r.minItems=n),"number"==typeof i&&(r.maxItems=i),r.type="array",r.items=nh(o.element,t,{...a,path:[...a.path,"items"]})};function nW(e){let t=e._zod.def;return"pipe"===t.type&&t.in._zod.traits.has("$ZodTransform")?nW(t.out):"catch"===t.type?nW(t.innerType):e._zod.optin}let nY=(e,t,r,a)=>{let o=e._zod.def,n=o.shape;if(Object.getOwnPropertySymbols(n).length&&np(e,t,r,a,"Symbol keys cannot be represented in JSON Schema"))return;for(let e in r.type="object",r.properties={},n)eW(r.properties,e,nh(n[e],t,{...a,path:[...a.path,"properties",e]}));let i=[];for(let e of Object.keys(n)){let r=o.shape[e];("input"===t.io?void 0===nW(r):void 0===r._zod.optout)&&i.push(e)}i.length>0&&(r.required=i),o.catchall?._zod.def.type==="never"?r.additionalProperties=!1:o.catchall?o.catchall&&(r.additionalProperties=nh(o.catchall,t,{...a,path:[...a.path,"additionalProperties"]})):"output"===t.io&&(r.additionalProperties=!1)},nX=(e,t,r,a)=>{let o=e._zod.def,n=!1===o.inclusive,i=o.options.map((e,r)=>nh(e,t,{...a,path:[...a.path,n?"oneOf":"anyOf",r]}));n?r.oneOf=i:r.anyOf=i},nQ=(e,t,r,a)=>{let o=e._zod.def,n=nh(o.left,t,{...a,path:[...a.path,"allOf",0]}),i=nh(o.right,t,{...a,path:[...a.path,"allOf",1]}),s=e=>"allOf"in e&&1===Object.keys(e).length,l=[...s(n)?n.allOf:[n],...s(i)?i.allOf:[i]];r.allOf=l,t.intersections.push(l)},n0=new WeakMap,n1=(e,t,r,a)=>{let o=e._zod.def;r.type="object";let n=o.keyType,i=nP(n).patterns;if("loose"===o.mode&&i&&i.size>0){let e=nh(o.valueType,t,{...a,path:[...a.path,"patternProperties","*"]});for(let t of(r.patternProperties={},i))eW(r.patternProperties,nz(t).source,e)}else{if("draft-07"===t.target||"draft-2020-12"===t.target){r.propertyNames=nh(o.keyType,t,{...a,path:[...a.path,"propertyNames"]});let n=n0.get(t);n||(n=[],n0.set(t,n),t.deferred.push(()=>(function(e){let t=new Map;for(let r of e.seen.values())r.def&&!t.has(r.schema)&&t.set(r.schema,r);let r=new Map;for(let a of n0.get(e)??[]){let o=e.seen.get(a),n=(o?.def??o?.schema)?.propertyNames;if(!n||!0===n||r.has(n))continue;let i=function e(t,r,a){if(r.$ref){if(a.has(r))return r;a.add(r);let o=t.get(r)?.def;if(!o)return r;let n=e(t,o,a);return n===o?r:n}for(let o of["anyOf","oneOf"]){let n=r[o];if(!Array.isArray(n))continue;let i=n.map(r=>e(t,r,a));i.some((e,t)=>e!==n[t])&&(r={...r,[o]:i})}let o=Array.isArray(r.type)?r.type:[r.type],n=!o.includes("string")&&o.some(e=>"number"===e||"integer"===e),i=r.enum??(void 0!==r.const?[r.const]:void 0);if(!n&&!i?.some(e=>"number"==typeof e))return r;let{minimum:s,maximum:l,exclusiveMinimum:u,exclusiveMaximum:d,multipleOf:c,format:p,id:h,...f}=r;return f.enum?f.enum=f.enum.map(e=>"number"==typeof e?String(e):e):"number"==typeof f.const&&(f.const=String(f.const)),n&&(f.type="string",i||(f.pattern=(o.includes("number")?ar:at).source)),f}(t,n,new Set);i!==n&&r.set(n,i)}if(r.size)for(let t of e.seen.values())for(let e of[t.schema,t.def]){let t=e&&r.get(e.propertyNames);t&&(e.propertyNames=t)}})(t))),n.push(e)}r.additionalProperties=nh(o.valueType,t,{...a,path:[...a.path,"additionalProperties"]})}let s=n._zod.values,l="input"===t.io&&void 0!==nW(o.valueType);if(s&&!o.partial&&!l){let e=[...s].filter(e=>"string"==typeof e||"number"==typeof e);e.length>0&&(r.required=e.map(String))}},n2=(e,t,r,a)=>{let o=e._zod.def,n=nh(o.innerType,t,a),i=t.seen.get(e);"openapi-3.0"===t.target?(i.ref=o.innerType,r.nullable=!0):r.anyOf=[n,{t
57ype:"null"}]},n4=(e,t,r,a)=>{let o=e._zod.def;nh(o.innerType,t,a),t.seen.get(e).ref=o.innerType},n6=Symbol();function n9(e,t,r,a,o){let n=!1,i=JSON.stringify(e,(e,t)=>"bigint"!=typeof t?t:(n=!0,null));return n?(np(t,r,a,o,"BigInt defaults cannot be represented in JSON Schema"),n6):JSON.parse(i)}let n3=(e,t,r,a)=>{let o=e._zod.def;nh(o.innerType,t,a),t.seen.get(e).ref=o.innerType;let n=n9(o.defaultValue,e,t,r,a);n!==n6&&(r.default=n)},n5=(e,t,r,a)=>{let o=e._zod.def;if(nh(o.innerType,t,a),t.seen.get(e).ref=o.innerType,"input"!==t.io)return;let n=n9(o.defaultValue,e,t,r,a);n!==n6&&(r._prefault=n)},n8=(e,t,r,a)=>{let o,n=e._zod.def;nh(n.innerType,t,a),t.seen.get(e).ref=n.innerType;try{o=n.catchValue(void 0)}catch{np(e,t,r,a,"Dynamic catch values are not supported in JSON Schema");return}r.default=o},n7=(e,t,r,a)=>{let o=e._zod.def,n=o.in._zod.traits.has("$ZodTransform"),i="input"===t.io?n?o.out:o.in:o.out;nh(i,t,a),t.seen.get(e).ref=i},ie=(e,t,r,a)=>{let o=e._zod.def;nh(o.innerType,t,a),t.seen.get(e).ref=o.innerType,r.readOnly=!0},it=(e,t,r,a)=>{let o=e._zod.def;nh(o.innerType,t,a),t.seen.get(e).ref=o.innerType},ir=(e,t,r,a)=>{let o=e._zod.innerType;nh(o,t,a),t.seen.get(e).ref=o},ia={string:nj,number:nD,boolean:nq,bigint:nU,symbol:(e,t,r,a)=>{np(e,t,r,a,"Symbols cannot be represented in JSON Schema")},null:nL,undefined:(e,t,r,a)=>{np(e,t,r,a,"Undefined cannot be represented in JSON Schema")},void:(e,t,r,a)=>{np(e,t,r,a,"Void cannot be represented in JSON Schema")},never:nF,any:nZ,unknown:nB,date:(e,t,r,a)=>{np(e,t,r,a,"Date cannot be represented in JSON Schema")},enum:nV,literal:nG,nan:(e,t,r,a)=>{np(e,t,r,a,"NaN cannot be represented in JSON Schema")},template_literal:(e,t,r,a)=>{let o=e._zod.pattern;if(!o)throw Error("Pattern not found in template literal");r.type="string",r.pattern=o.source},file:(e,t,r,a)=>{r.type="string",r.format="binary",r.contentEncoding="binary";let{minimum:o,maximum:n,mime:i}=nP(e);void 0!==o&&(r.minLength=o),void 0!==n&&(r.maxLength=n),i&&(0===i.length?r.not={}:1===i.length?r.contentMediaType=i[0]:r.anyOf=i.map(e=>({contentMediaType:e})))},success:(e,t,r,a)=>{r.type="boolean"},custom:nH,function:(e,t,r,a)=>{np(e,t,r,a,"Function types cannot be represented in JSON Schema")},transform:nJ,map:(e,t,r,a)=>{np(e,t,r,a,"Map cannot be represented in JSON Schema")},set:(e,t,r,a)=>{np(e,t,r,a,"Set cannot be represented in JSON Schema")},array:nK,object:nY,union:nX,intersection:nQ,tuple:(e,t,r,a)=>{let o=e._zod.def;r.type="array";let n="draft-2020-12"===t.target?"prefixItems":"items",i="draft-2020-12"===t.target||"openapi-3.0"===t.target?"items":"additionalItems",s=o.items.map((e,r)=>nh(e,t,{...a,path:[...a.path,n,r]})),l=o.rest?nh(o.rest,t,{...a,path:[...a.path,i,..."openapi-3.0"===t.target?[o.items.length]:[]]}):null,u=o.items.length;for(;u>0;){let e=o.items[u-1];if(!("input"===t.io?void 0!==nW(e):"optional"===e._zod.optout))break;u--}let d=o.items.length,c=!o.rest;"draft-2020-12"===t.target?(r.prefixItems=s,c?r.items=!1:l&&(r.items=l)):"open
57api-3.0"===t.target?(r.items={anyOf:s},l&&r.items.anyOf.push(l)):(r.items=s,c?r.additionalItems=!1:l&&(r.additionalItems=l)),u>0&&(r.minItems=u),c&&(r.maxItems=d);let{minimum:p,maximum:h}=nP(e);"number"==typeof p&&(r.minItems=p),"number"==typeof h&&(r.maxItems=h)},record:n1,nullable:n2,nonoptional:n4,default:n3,prefault:n5,catch:n8,pipe:n7,readonly:ie,promise:(e,t,r,a)=>{let o=e._zod.def;nh(o.innerType,t,a),t.seen.get(e).ref=o.innerType},optional:it,lazy:ir};class io extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}function ii(e){}function is(e,t,r){return 100===r&&97===e.charCodeAt(t+1)&&116===e.charCodeAt(t+2)&&97===e.charCodeAt(t+3)&&58===e.charCodeAt(t+4)}function il(e,t,r){return 101===r&&118===e.charCodeAt(t+1)&&101===e.charCodeAt(t+2)&&110===e.charCodeAt(t+3)&&116===e.charCodeAt(t+4)&&58===e.charCodeAt(t+5)}class iu extends TransformStream{constructor({onError:e,onRetry:t,onComment:r,maxBufferSize:a}={}){let o;super({start(n){o=function(e){if("function"==typeof e)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=ii,onError:r=ii,onRetry:a=ii,onComment:o,maxBufferSize:n}=e,i=[],s=0,l=!0,u,d="",c=0,p,h=!1;function f(){void 0!==n&&(s+d.length<=n||(h=!0,i.length=0,s=0,u=void 0,d="",c=0,p=void 0,r(new io(`Buffered data exceeded max buffer size of ${n} characters`,{type:"max-buffer-size-exceeded"}))))}function m(e){let r=0;if(-1===e.indexOf("\r")){let a=e.indexOf(` 58`,r);for(;-1!==a;){if(r===a){c>0&&t({id:u,event:p,data:d}),u=void 0,d="",c=0,p=void 0,r=a+1,a=e.indexOf(` 59`,r);continue}let o=e.charCodeAt(r);if(is(e,r,o)){let o=32===e.charCodeAt(r+5)?r+6:r+5,n=e.slice(o,a);if(0===c&&10===e.charCodeAt(a+1)){t({id:u,event:p,data:n}),u=void 0,d="",p=void 0,r=a+2,a=e.indexOf(` 60`,r);continue}d=0===c?n:`${d} 61${n}`,c++}else il(e,r,o)?p=e.slice(32===e.charCodeAt(r+6)?r+7:r+6,a)||void 0:g(e,r,a);r=a+1,a=e.indexOf(` 62`,r)}return e.slice(r)}for(;r<e.length;){let t=e.indexOf("\r",r),a=e.indexOf(` 63`,r),o=-1;if(-1!==t&&-1!==a?o=t<a?t:a:-1!==t?o=t===e.length-1?-1:t:-1!==a&&(o=a),-1===o)break;g(e,r,o),r=o+1,13===e.charCodeAt(r-1)&&10===e.charCodeAt(r)&&r++}return e.slice(r)}function g(e,r,a){if(r===a)return void(c>0&&t({id:u,event:p,data:d}),u=void 0,d="",c=0,p=void 0);let n=e.charCodeAt(r);if(is(e,r,n)){let t=32===e.charCodeAt(r+5)?r+6:r+5,o=e.slice(t,a);d=0===c?o:`${d} 64${o}`,c++;return}if(il(e,r,n)){p=e.slice(32===e.charCodeAt(r+6)?r+7:r+6,a)||void 0;return}if(105===n&&100===e.charCodeAt(r+1)&&58===e.charCodeAt(r+2)){let t=e.slice(32===e.charCodeAt(r+3)?r+4:r+3,a);t.includes("\0")||(u=t);return}if(58===n){o&&o(e.slice(r,a).slice(32===e.charCodeAt(r+1)?2:1));return}let i=e.slice(r,a),s=i.indexOf(":");if(-1===s)return void y(i,"",i);let l=i.slice(0,s),h=32===i.charCodeAt(s+1)?2:1;y(l,i.slice(s+h),i)}function y(e,t,o){switch(e){case"event":p=t||void 0;break;case"data":d=0===c?t:`${d} 65${t}`,c++;break;case"id":t.includes("\0")||(u=t);break;case"retry":/^\d+$/.test(t)?a(parseInt(t,10)):r(new io(`Invalid \`retry\` value: "${t}"`,{type:"invalid-retry",value:t,line:o}));break;default:r(new io(`Unknown field "${e.length>20?`${e.slice(0,20)}…`:e}"`,{type:"unknown-field",field:e,value:t,line:o}))}}return{feed:function(e){if(h)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(l&&(l=!1,239===e.charCodeAt(0)&&187===e.charCodeAt(1)&&191===e.charCodeAt(2)&&(e=e.slice(3))),0===i.length){let t=m(e);""!==t&&(i.push(t),s=t.length),f();return}if(-1===e.indexOf(` 66`)&&-1===e.indexOf("\r")){i.push(e),s+=e.length,f();return}i.push(e);let t=i.join("");i.length=0,s=0;let r=m(t);""!==r&&(i.push(r),s=r.length),f()},reset:function(e={}){if(e.consume&&i.length>0){let e=i.join("");g(e,0,e.length)}l=!0,u=void 0,d="",c=0,p=void 0,i.length=0,s=0,h=!1}}}({onEvent:e=>{n.enqueue(e)},onError(t){"function"==typeof e&&e(t),("terminate"===e||"max-buffer-size-exceeded"===t.type)&&n.error(t)},onRetry:t,onComment:r,maxBufferSize:a})},transform(e){o.feed(e)}})}}let id=Symbol.for("workflow-serialize"),ic=Symbol.for("workflow-deserialize");function ip(e){return void 0===e?[]:Array.isArray(e)?e:[e]}function ih(...e){return e.reduce((e,t)=>
66({...e,...t}),{})}async function im(e,t){if(null==e)return;let r=t?.abortSignal;return new Promise((t,a)=>{if(r?.aborted)return void a(ig());let o=setTimeout(()=>{n(),t()},e),n=()=>{clearTimeout(o),r?.removeEventListener("abort",i)},i=()=>{n(),a(ig())};r?.addEventListener("abort",i)})}function ig(){return new DOMException("Delay was aborted","AbortError")}let iy=new TextDecoder;async function iv(e){return"string"==typeof e?e:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?iy.decode(e):"u">typeof Blob&&e instanceof Blob?e.text():String(e)}async function ib(e,{highWaterMark:t=1048576,pollIntervalMs:r=20,abortSignal:a}={}){for(;1===e.readyState&&(e.bufferedAmount??0)>t;){if(a?.aborted===!0)return;await im(r)}}function iw({url:e,protocols:t,headers:r,webSocket:a,abortSignal:o,onOpen:n,onMessageText:i,onProcessingError:s,onSocketError:l,onClose:u,onAbort:d}){let c,p,h=e=>{null!=p&&(o?.removeEventListener("abort",p),p=void 0);try{c?.close(e)}catch{}};if(o?.aborted)return d?.(o.reason??Error("Aborted")),{socket:void 0,close:h};try{var f;c=new(function(e){let t=e??globalThis.WebSocket;if(null==t)throw Error("No WebSocket implementation available.");return t}(a))(e,t,{headers:(f=r??{},Object.fromEntries(Object.entries(f).filter(([e,t])=>null!=t)))})}catch(e){return s(e),{socket:void 0,close:h}}null!=o&&null!=d&&(p=()=>d(o.reason??Error("Aborted")),o.addEventListener("abort",p,{once:!0}));let m=c;c.onopen=()=>{try{n?.(m)}catch(e){s(e)}};let g=Promise.resolve();return c.onmessage=e=>{g=g.then(()=>iv(e.data)).then(e=>i(e)).catch(s)},c.onerror=()=>{g=g.then(()=>l?.()).catch(s)},c.onclose=e=>{let t="number"==typeof e?.code?e.code:void 0,r="string"==typeof e?.reason?e.reason:void 0;g=g.then(()=>u?.({code:t,reason:r})).catch(s)},{socket:c,close:h}}function ix(e){let t=!1;return new ReadableStream({async pull(r){if(!t)try{let{value:t,done:a}=await e.next();a?r.close():r.enqueue(t)}catch(e){r.error(e)}},async cancel(r){if(t=!0,e.return)try{await e.return(r)}catch{}}})}let{btoa:i_,atob:iI}=globalThis;function ik(e){let t=iI(e.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(t,e=>e.codePointAt(0))}function iS(e){let t=[];for(let r=0;r<e.length;r+=4096)t.push(String.fromCodePoint(...e.subarray(r,r+4096)));return i_(t.join(""))}function iT(e){return e instanceof Uint8Array?iS(e):e}function iE(e,t={}){let{useArrayBrackets:r=!0}=t,a=new FormData;for(let[t,o]of Object.entries(e))if(null!=o){if(Array.isArray(o)){if(1===o.length){a.append(t,o[0]);continue}let e=r?`${t}[]`:t;for(let t of o)a.append(e,t);continue}a.append(t,o)}return a}function iC({id:e,model:t,created:r}){return{id:e??void 0,modelId:t??void 0,timestamp:null!=r?new Date(1e3*r):void 0}}function iM(){return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0}}let iA=Symbol.for("vercel.ai.providerStreamError");function iO(e){return"object"==typeof e&&null!=e&&!0===e[iA]}var iR=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){return this._promise||(this._promise=new Promise((e,t)=>{"resolved"===this.status.type?e(this.status.value):"rejected"===this.status.type&&t(this.status.error),this._resolve=e,this._reject=t})),this._promise}resolve(e){this.status={type:"resolved",value:e},this._promise&&this._resolve?.(e)}reject(e){this.status={type:"rejected",error:e},this._promise&&this._reject?.(e)}isResolved(){return"resolved"===this.status.type}isRejected(){return"rejected"===this.status.type}isPending(){return"pending"===this.status.type}};function iP(e){return Object.fromEntries([...e.headers])}function i$(e=globalThis){return e.navigator?.userAgent?e.navigator.userAgent.toLowerCase():e.process?.versions?.node?`node.js/${e.process.version}`:e.EdgeRuntime?"vercel-edge":""}function iN(e){return(e instanceof Error||"function"==typeof DOMException&&e instanceof DOMException)&&("AbortError"===e.name||"ResponseAborted"===e.name||"TimeoutError"===e.name)}let iz=["fetch failed","failed to fetch"],ij=new Set(["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"]);function iD({error:e,url:t,requestBodyValues:r}){if(iN(e))return e;if(e instanceof TypeError&&iz.includes(e.message.toLowerCase())){let a=e.cause;if(null!=a)return new C({message:`Cannot connect to API: ${a.message}`,cause:a,url:t,requestBodyValues:r,isRetryable:!0})}let a=function(e){let t=new Set,r=e;for(;r instanceof Error&&!t.has(r);){t.add(r);let e=r;if("string"==typeof e.code&&ij.has(e.code))return e;r=r.cause}}
66(e);return null!=a?new C(C.isInstance(e)?{message:e.message,cause:e.cause,url:e.url,requestBodyValues:e.requestBodyValues,statusCode:e.statusCode,responseHeaders:e.responseHeaders,responseBody:e.responseBody,data:e.data,isRetryable:!0}:{message:`Cannot connect to API: ${e instanceof Error?e.message:a.message}`,cause:e,url:t,requestBodyValues:r,isRetryable:!0}):e}let iq="5.0.57";function iU(e){if(null==e)return{};let t={};if(e instanceof Headers)e.forEach((e,r)=>{t[r.toLowerCase()]=e});else for(let[r,a]of(Array.isArray(e)||(e=Object.entries(e)),e))null!=a&&(t[r.toLowerCase()]=a);return t}function iL(e,...t){let r=new Headers(iU(e)),a=r.get("user-agent")||"";return r.set("user-agent",[a,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}let iF=[{mediaType:"image/gif",bytesPrefix:[71,73,70,56,55,97]},{mediaType:"image/gif",bytesPrefix:[71,73,70,56,57,97]},{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,null,null,null,null,0,0,0,0]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,null,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,null,102,116,121,112,104,101,105,99]}],iZ=[{mediaType:"application/pdf",bytesPrefix:[37,80,68,70]}],iB=[{mediaType:"audio/aac",bytesPrefix:[255,240]},{mediaType:"audio/aac",bytesPrefix:[255,241]},{mediaType:"audio/aac",bytesPrefix:[255,248]},{mediaType:"audio/aac",bytesPrefix:[255,249]},{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],iV=[{mediaType:"video/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]},{mediaType:"video/webm",bytesPrefix:[26,69,223,163]},{mediaType:"video/quicktime",bytesPrefix:[0,0,0,20,102,116,121,112,113,116]},{mediaType:"video/x-msvideo",bytesPrefix:[82,73,70,70]}];function iG(e,t){if("string"!=typeof e)return e.length>t?e.subarray(0,t):e;let r=4*Math.ceil(t/3),a=ik(e.substring(0,Math.min(e.length,r)));return a.length>t?a.subarray(0,t):a}function iH({data:e,signatures:t}){var r,a;let o,n=iG(e,18);for(let i of((r=n).length>10&&73===r[0]&&68===r[1]&&51===r[2]&&(o=(127&(a=iG(e,131084))[6])<<21|(127&a[7])<<14|(127&a[8])<<7|127&a[9],n=a.subarray(o+10)),t))if(n.length>=i.bytesPrefix.length&&i.bytesPrefix.every((e,t)=>null===e||n[t]===e))return i.mediaType}let iJ={image:iF,audio:[...iB,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}],video:iV,application:iZ};function iK({data:e,topLevelType:t}){if(void 0===t)return iH({data:e,signatures:[...iF,...iZ,...iB,...iV]});let r=iJ[t];if(void 0!==r)return iH({data:e,signatures:r})}function iW(e){let t=e.indexOf("/");return -1===t?e:e.substring(0,t)}function iY(e){let t=e.indexOf("/");if(-1===t)return!1;let r=e.substring(t+1);return r.length>0&&"*"!==r}async function iX(e){try{await e.body?.cancel()}catch{}}let iQ="AI_DownloadError",i0=`vercel.ai.error.${iQ}`,i1=Symbol.for(i0);var i2=class extends w{constructor({url:e,statusCode:t,statusText:r,cause:a,message:o=null==a?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${a}`}){super({name:iQ,message:o,cause:a}),this[i1]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return w.hasMarker(e,i0)}};function i4(e,t){try{return new URL(e).origin===new URL(t).origin}catch{return!1}}function i6(e){let t=e.split(".");return 4===t.length&&t.every(e=>{let t=Number(e);return Number.isInteger(t)&&t>=0&&t<=255&&String(t)===e})}function i9(e){let[t,r,a]=e.split(".").map(Number);return 0===t||10===t||100===t&&r>=64&&r<=127||127===t||169===t&&254===r||172===t&&r>=16&&r<=31||192===t&&0===r&&0===a||192===t&&0===r&&2===a||192===t&&168===r||198===t&&(18===r||19===r)||198===t&&51===r&&100===a||203===t&&0===r&&113===a||t>=224||!1}function i3(e){let t=function(e){let t=e.toLowerCase(),r=t.indexOf("%");-1!==r&&(t=t.slice(0,r));let a=t.split("::");if(a.length>2)return null;let o=e=>{if(""===e)return[];let t=[],r=e.split(":");for(let e=0;e<r.length;e++){let a=r[e];if(a.includes(".")){if(e!==r.length-1||!i6(a))return null;let[o,n,i,s]=a.split(".").map(Number);t.push(o<<8|n,i<<8|s);continue}if(!/^[0-9a-f]{1,4}$/.test(a))return null;t.push(parseInt(a,16))}return t},n=o(a[0]);if(null===n)return null;if(2===a.length){let e=o(a[1]);if(null===e)return null;let t=8-n.length-e.length;return t<0?null:[...n,...Array(t).fill(0),...e]}return 8===n.length?n:null}(e);if(null===t)return!0;let r=e=>
66t.slice(0,e).every(e=>0===e);return!!r(7)&&(0===t[7]||1===t[7])||(65024&t[0])==64512||(65472&t[0])==65152||(65472&t[0])==65216||(65280&t[0])==65280||8193===t[0]&&3512===t[1]||16383===t[0]&&(61440&t[1])==0||(!!(r(6)||r(5)&&65535===t[5]||r(4)&&65535===t[4]&&0===t[5])||100===t[0]&&65435===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&1===t[2])&&i9(`${t[6]>>8&255}.${255&t[6]}.${t[7]>>8&255}.${255&t[7]}`)}async function i5(){let e;return(e=globalThis.process,e?.release?.name!=="node"||e.versions?.bun!=null||e.versions?.deno!=null||"workerd"===e.title||null!=globalThis.EdgeRuntime)?globalThis.fetch:r??=Promise.resolve().then(i8)}function i8(){let e=i7("node:module"),{lookup:t}=i7("node:dns"),{Agent:r,fetch:a}=e.createRequire(function e(){let t=Error.prepareStackTrace;try{Error.prepareStackTrace=(e,t)=>t;let t=Error("Capture current module path");Error.captureStackTrace(t,e);let[r]=t.stack,a=r?.getFileName();if(null==a)throw Error("Unable to determine the current module path");return a}finally{Error.prepareStackTrace=t}}())("undici"),o=new r({connect:{lookup:(e,r,a)=>{t(e,{...r,all:!0},(t,o)=>{if(t)return void a(t);try{let[t]=o;if(null==t)throw Error(`Hostname ${e} did not resolve to an address`);for(let{address:t,family:r}of o)!function({address:e,family:t,hostname:r}){if(4===t?!i6(e)||i9(e):6!==t||i3(e))throw new i2({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}({address:t,family:r,hostname:e});!0===r.all?a(null,o):a(null,t.address,t.family)}catch(e){a(e instanceof Error?e:Error(String(e)))}})}}});return(e,t)=>a(e,{...t,dispatcher:o})}function i7(e){let t=globalThis.process?.getBuiltinModule?.(e);if(null==t)throw Error(`Node.js built-in module ${e} is unavailable`);return t}let se=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function st(e){let t=new Headers(e);for(let e of se)t.delete(e);return t}let sr=new Set([301,302,303,307,308]);async function sa(e){return null==e||e===globalThis.fetch?await i5():e}async function so({url:e,headers:t,abortSignal:r,maxRedirects:a=10,fetch:o,trustedOrigin:n}){let i=void 0===t?void 0:st(t),s=e=>{let t={signal:r,redirect:e};return void 0!==i&&(t.headers=new Headers(i)),t},l=e;for(let t=0;t<=a;t++){let t=void 0!==n&&i4(l,n);t||function(e){let t;try{t=new URL(e)}catch{throw new i2({url:e,message:`Invalid URL: ${e}`})}if("data:"===t.protocol)return;if("http:"!==t.protocol&&"https:"!==t.protocol)throw new i2({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new i2({url:e,message:"URL must have a hostname"});if("localhost"===r||r.endsWith(".local")||r.endsWith(".localhost"))throw new i2({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){if(i3(r.slice(1,-1)))throw new i2({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(i6(r)&&i9(r))throw new i2({url:e,message:`URL with IP address ${r} is not allowed`})}(l);let r=t&&null!=o?o:t?globalThis.fetch:await sa(o),a=await r(l,s("manual"));if("opaqueredirect"===a.type){if(!function(e=globalThis){return null!=e.window}())throw new i2({url:e,message:`Redirect from ${l} could not be validated and was blocked`});return await r(l,s("follow"))}let u=a.headers?.get("location");if(sr.has(a.status)&&u){iX(a);let e=new URL(u,l).toString();if(void 0!==i&&!i4(e,l)){let e=i.get("user-agent");i=new Headers(null==e?void 0:{"user-agent":e})}l=e;continue}return a}throw new i2({url:e,message:`Too many redirects (max ${a})`})}let sn=new Set(["accept","accept-language","baggage","cache-control","idempotency-key","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","pragma","range","traceparent","tracestate","user-agent","x-correlation-id","x-request-id"]);async function si({headers:e,credentialedOrigin:t,untrustedFirstHopHeaders:r,...a}){let o;if(void 0!==e){o=st(e);let n=t??a.trustedOrigin;if(void 0===n||!i4(a.url,n)){let e=new Set([...sn,...(r??[]).map(e=>e.toLowerCase())]);o=new Headers([...o].filter(([t])=>e.has(t)))}}return so({...a,headers:o})}async function ss({response:e,url:t,maxBytes:r=0x80000000}){let a=e.headers.get("content-length");if(null!=a){let o=parseInt(a,10);if(!isNaN(o)&&o>r)throw await iX(e),new i2({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${o}).`})}let o=e.body;if(null==o)return new Uint8Array(0);let n=o.getReader(),i=[],s=0;try{for(;;){let{done:e,value:a}=await n.read();if(e)break;if((s+=a.length)>r)throw new i2({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});i.push(a)}}finally{try{await n.cancel()}catch{}finally{n.releaseLock()}}let l=new Uint8Array(s),u=0;
66for(let e of i)l.set(e,u),u+=e.length;return l}async function sl(e,t){try{let r=await si({url:e,abortSignal:t?.abortSignal});if(!r.ok)throw await iX(r),new i2({url:e,statusCode:r.status,statusText:r.statusText});let a=await ss({response:r,url:e,maxBytes:t?.maxBytes??0x80000000}),o=r.headers.get("content-type")??void 0;return new Blob([a],o?{type:o}:void 0)}catch(t){if(i2.isInstance(t))throw t;throw new i2({url:e,cause:t})}}let su=Symbol.for("vercel.ai.embeddingModel.maxInputBytesPerCall"),sd=Symbol.for("vercel.ai.embeddingModel.providerOptionsTransformer");function sc(...e){return e.filter(e=>null!=e)}let sp=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:a="-"}={})=>{let o=()=>{let e=r.length,a=Array(t);for(let o=0;o<t;o++)a[o]=r[Math.random()*e|0];return a.join("")};if(null==e)return o;if(r.includes(a))throw new L({argument:"separator",message:`The separator "${a}" must not be part of the alphabet "${r}".`});return()=>`${e}${a}${o()}`},sh=sp(),sf=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:a,abortSignal:o,fetch:n,validateUrl:i,credentialedOrigin:s,trustedOrigin:l})=>{try{let u=n??globalThis.fetch,d=iL(void 0===s||i4(e,s)?t:{},`ai-sdk-provider-utils/${iq}`,i$()),c=i?await so({url:e,headers:d,abortSignal:o,fetch:n,trustedOrigin:l}):await u(e,{method:"GET",headers:d,signal:o}),p=iP(c);if(!c.ok){let t;try{t=await a({response:c,url:e,requestBodyValues:{}})}catch(t){if(iN(t)||C.isInstance(t))throw t;throw new C({message:"Failed to process error response",cause:t,statusCode:c.status,url:e,responseHeaders:p,requestBodyValues:{}})}throw t.value}try{return await r({response:c,url:e,requestBodyValues:{}})}catch(t){if(t instanceof Error&&(iN(t)||C.isInstance(t)))throw t;throw new C({message:"Failed to process successful response",cause:t,statusCode:c.status,url:e,responseHeaders:p,requestBodyValues:{}})}}catch(t){throw iD({error:t,url:e,requestBodyValues:{}})}};function sm(e){return globalThis.Buffer?.isBuffer(e)??!1}function sg(e){return null!=e}function sy(e){return"object"==typeof e&&null!==e&&!(e instanceof Uint8Array)&&!(e instanceof URL)&&!(e instanceof ArrayBuffer)&&!sm(e)&&!("type"in e)}function sv(e){return null!=e&&"object"==typeof e&&!Array.isArray(e)}function sb({mediaType:e,url:t,supportedUrls:r}){t=t.toLowerCase();let a=!(e=e.toLowerCase()).includes("/");return Object.entries(r).map(([e,t])=>{let r=e.toLowerCase();return"*"===r||"*/*"===r?{mediaTypePrefix:"",regexes:t}:{mediaTypePrefix:r.replace(/\*/,""),regexes:t}}).filter(({mediaTypePrefix:t})=>""===t||(a?`${e}/`===t:t.endsWith("/")?e.startsWith(t):e===t)).flatMap(({regexes:e})=>e).some(e=>(function(e,t){if(!e.global&&!e.sticky)return e.test(t);let r=e.lastIndex;e.lastIndex=0;try{return e.test(t)}finally{e.lastIndex=r}})(e,t))}function sw({settingValue:e,environmentVariableName:t}){return"string"==typeof e?e:null!=e||void 0===g.default?void 0:null!=(e=g.default.env[t])&&"string"==typeof e?e:void 0}function sx(e){return void 0!==e&&"provider-default"!==e}function s_({total:e,pending:t,completed:r,failed:a}){if(sI(e)&&sI(t)&&sI(r)&&sI(a)&&t+r+a===e)return{total:e,pending:t,completed:r,failed:a}}function sI(e){return null!=e&&Number.isSafeInteger(e)&&e>=0}let sk=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,sS=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function sT(e){let t=JSON.parse(e);return null===t||"object"!=typeof t||!1===sk.test(e)&&!1===sS.test(e)?t:function(e){let t=[e];for(;t.length;){let e=t;for(let r of(t=[],e)){if(Object.prototype.hasOwnProperty.call(r,"__proto__")||Object.prototype.hasOwnProperty.call(r,"constructor")&&null!==r.constructor&&"object"==typeof r.constructor&&Object.prototype.hasOwnProperty.call(r.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let e in r){let a=r[e];a&&"object"==typeof a&&t.push(a)}}}return e}(t)}function sE(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return sT(e)}try{return sT(e)}finally{Error.stackTraceLimit=t}}function sC(e){if("object"===e.type||Array.isArray(e.type)&&e.type.includes("object")){let{additionalProperties:t}=e;e.additionalProperties=null!=t&&"boolean"!=typeof t&&sM(t);let{properties:r}=e;if(null!=r)for(let e of Object.keys(r))r[e]=sM(r[e])}null!=e.items&&(e.items=Array.isArray(e.items)?e.items.map(sM):sM(e.items)),null!=e.anyOf&&(e.anyOf=e.anyOf.map(sM)),null!=e.allOf&&(e.allOf=e.allOf.map(sM)),null!=e.oneOf&&(e.oneOf=e.oneOf.map(sM));let{definitions:t}=e;if(null!=t)for(let e of Object.keys(t))t[e]=sM(t[e]);return e}function sM(e){return"boolean"==typeof e?e:sC(e)}let sA=Symbol("Let zodToJsonSchema decide on which parser to use"),sO={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"};function sR(e,t){return sX(e.type._def,t)}let sP=/^[cC][^\s-]{8,}
66$/,s$=/^[0-9a-z]+$/,sN=/^[0-9A-HJKMNP-TV-Z]{26}$/,sz=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9-]*\.)+[a-zA-Z]{2,}$/,sj=()=>(void 0===h&&(h=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),h),sD=/^(?:(?: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])$/,sq=/^(([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])$/,sU=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,sL=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,sF=/^[a-zA-Z0-9_-]{21}$/,sZ=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function sB(e,t){let r={type:"string"};if(e.checks)for(let a of e.checks)switch(a.kind){case"min":r.minLength="number"==typeof r.minLength?Math.max(r.minLength,a.value):a.value;break;case"max":r.maxLength="number"==typeof r.maxLength?Math.min(r.maxLength,a.value):a.value;break;case"email":switch(t.emailStrategy){case"format:email":sH(r,"email",a.message,t);break;case"format:idn-email":sH(r,"idn-email",a.message,t);break;case"pattern:zod":sJ(r,sz,a.message,t)}break;case"url":sH(r,"uri",a.message,t);break;case"uuid":sH(r,"uuid",a.message,t);break;case"regex":sJ(r,a.regex,a.message,t);break;case"cuid":sJ(r,sP,a.message,t);break;case"cuid2":sJ(r,s$,a.message,t);break;case"startsWith":sJ(r,RegExp(`^${sV(a.value,t)}`),a.message,t);break;case"endsWith":sJ(r,RegExp(`${sV(a.value,t)}$`),a.message,t);break;case"datetime":sH(r,"date-time",a.message,t);break;case"date":sH(r,"date",a.message,t);break;case"time":sH(r,"time",a.message,t);break;case"duration":sH(r,"duration",a.message,t);break;case"length":r.minLength="number"==typeof r.minLength?Math.max(r.minLength,a.value):a.value,r.maxLength="number"==typeof r.maxLength?Math.min(r.maxLength,a.value):a.value;break;case"includes":sJ(r,RegExp(sV(a.value,t)),a.message,t);break;case"ip":"v6"!==a.version&&sH(r,"ipv4",a.message,t),"v4"!==a.version&&sH(r,"ipv6",a.message,t);break;case"base64url":sJ(r,sL,a.message,t);break;case"jwt":sJ(r,sZ,a.message,t);break;case"cidr":"v6"!==a.version&&sJ(r,sD,a.message,t),"v4"!==a.version&&sJ(r,sq,a.message,t);break;case"emoji":sJ(r,sj(),a.message,t);break;case"ulid":sJ(r,sN,a.message,t);break;case"base64":switch(t.base64Strategy){case"format:binary":sH(r,"binary",a.message,t);break;case"contentEncoding:base64":r.contentEncoding="base64";break;case"pattern:zod":sJ(r,sU,a.message,t)}break;case"nanoid":sJ(r,sF,a.message,t)}return r}function sV(e,t){return"escape"===t.patternStrategy?function(e){let t="";for(let r=0;r<e.length;r++)sG.has(e[r])||(t+="\\"),t+=e[r];return t}(e):e}let sG=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function sH(e,t,r,a){e.format||e.anyOf?.some(e=>e.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...r&&a.errorMessages&&{errorMessage:{format:r}}})):e.format=t}function sJ(e,t,r,a){e.pattern||e.allOf?.some(e=>e.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:sK(t,a),...r&&a.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=sK(t,a)}function sK(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},a=r.i?e.source.toLowerCase():e.source,o="",n=!1,i=!1,s=!1;for(let e=0;e<a.length;e++){if(n){o+=a[e],n=!1;continue}if(r.i){if(i){if(a[e].match(/[a-z]/)){s?(o+=a[e],o+=`${a[e-2]}-${a[e]}`.toUpperCase(),s=!1):"-"===a[e+1]&&a[e+2]?.match(/[a-z]/)?(o+=a[e],s=!0):o+=`${a[e]}${a[e].toUpperCase()}`;continue}}else if(a[e].match(/[a-z]/)){o+=`[${a[e]}${a[e].toUpperCase()}]`;continue}}if(r.m){if("^"===a[e]){o+=`(^|(?<=[\r 67]))`;continue}else if("$"===a[e]){o+=`($|(?=[\r 68]))`;continue}}if(r.s&&"."===a[e]){o+=i?`${a[e]}\r 69`:`[${a[e]}\r 70]`;continue}o+=a[e],"\\"===a[e]?n=!0:i&&"]"===a[e]?i=!1:i||"["!==a[e]||(i=!0)}try{new RegExp(o)}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 o}function sW(e,t){let r={type:"object",additionalProperties:sX(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(e.keyType?._def.typeName==="ZodString"&&e.keyType._def.checks?.length){let{type:a,...o}=sB(e.keyType._def,t);return{...r,propertyNames:o}}if(e.keyType?._def.typeName==="ZodEnum")return{...r,propertyNames:{enum:e.keyType._def.values}};if(e.keyType?._def.typeName==="ZodBranded"&&"ZodString"===e.keyType._def.type._def.typeName&&e.keyType._def.type._def.checks?.length){let{type:a,...o}=sR(e.keyType._def,t);return{...r,propertyNames:o}}return r}let sY={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function sX(e,t,r=!1){let a=t.seen.get(e);if(t.override){let o=t.override?.(e,t,a,r);if(o!==sA)return o}if(a&&!r){let e=sQ(a,t);
70if(void 0!==e)return e}let o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);let n=((e,t,r)=>{switch(t){case"ZodString":return sB(e,r);case"ZodNumber":let a={type:"number"};if(!e.checks)return a;for(let t of e.checks)switch(t.kind){case"int":a.type="integer";break;case"min":t.inclusive?a.minimum=t.value:a.exclusiveMinimum=t.value;break;case"max":t.inclusive?a.maximum=t.value:a.exclusiveMaximum=t.value;break;case"multipleOf":a.multipleOf=t.value}return a;case"ZodObject":return function(e,t){let r={type:"object",properties:{}},a=[],o=e.shape();for(let e in o){let n=o[e];if(void 0===n||void 0===n._def)continue;let i=function(e){try{return e.isOptional()}catch{return!0}}(n),s=sX(n._def,{...t,currentPath:[...t.currentPath,"properties",e],propertyPath:[...t.currentPath,"properties",e]});void 0!==s&&(r.properties[e]=s,i||a.push(e))}a.length&&(r.required=a);let n=function(e,t){if("ZodNever"!==e.catchall._def.typeName)return sX(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return"strict"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==n&&(r.additionalProperties=n),r}(e,r);case"ZodBigInt":let o={type:"integer",format:"int64"};if(!e.checks)return o;for(let t of e.checks)switch(t.kind){case"min":t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value;break;case"max":t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value;break;case"multipleOf":o.multipleOf=t.value}return o;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function e(t,r,a){let o=a??r.dateStrategy;if(Array.isArray(o))return{anyOf:o.map(a=>e(t,r,a))};switch(o){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var n=t;let i={type:"integer",format:"unix-time"};for(let e of n.checks)switch(e.kind){case"min":i.minimum=e.value;break;case"max":i.maximum=e.value}return i}}(e,r);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let n;return n={type:"array"},e.type?._def&&e.type?._def?.typeName!=="ZodAny"&&(n.items=sX(e.type._def,{...r,currentPath:[...r.currentPath,"items"]})),e.minLength&&(n.minItems=e.minLength.value),e.maxLength&&(n.maxItems=e.maxLength.value),e.exactLength&&(n.minItems=e.exactLength.value,n.maxItems=e.exactLength.value),n;case"ZodUnion":case"ZodDiscriminatedUnion":var i,s;let l,u=e.options instanceof Map?Array.from(e.options.values()):e.options;if(u.every(e=>e._def.typeName in sY&&(!e._def.checks||!e._def.checks.length))){let e=u.reduce((e,t)=>{let r=sY[t._def.typeName];return r&&!e.includes(r)?[...e,r]:e},[]);return{type:e.length>1?e:e[0]}}if(u.every(e=>"ZodLiteral"===e._def.typeName&&!e.description)){let e=u.reduce((e,t)=>{let r=typeof t._def.value;switch(r){case"string":case"number":case"boolean":return[...e,r];case"bigint":return[...e,"integer"];case"object":if(null===t._def.value)return[...e,"null"];default:return e}},[]);if(e.length===u.length){let t=e.filter((e,t,r)=>r.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:u.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(u.every(e=>"ZodEnum"===e._def.typeName))return{type:"string",enum:u.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return i=e,s=r,(l=(i.options instanceof Map?Array.from(i.options.values()):i.options).map((e,t)=>sX(e._def,{...s,currentPath:[...s.currentPath,"anyOf",`${t}`]})).filter(e=>!!e&&(!s.strictUnions||"object"==typeof e&&Object.keys(e).length>0))).length?{anyOf:l}:void 0;case"ZodIntersection":let d,c;return d=[sX(e.left._def,{...r,currentPath:[...r.currentPath,"allOf","0"]}),sX(e.right._def,{...r,currentPath:[...r.currentPath,"allOf","1"]})].filter(e=>!!e),c=[],d.forEach(e=>{if((!("type"in e)||"string"!==e.type)&&"allOf"in e)c.push(...e.allOf);else{let t=e;if("additionalProperties"in e&&!1===e.additionalProperties){let{additionalProperties:r,...a}=e;t=a}c.push(t)}}),c.length?{allOf:c}:void 0;case"ZodTuple":return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((e,t)=>sX(e._def,{...r,currentPath:[...r.currentPath,"items",`${t}`]})).reduce((e,t)=>
70void 0===t?e:[...e,t],[]),additionalItems:sX(e.rest._def,{...r,currentPath:[...r.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,t)=>sX(e._def,{...r,currentPath:[...r.currentPath,"items",`${t}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[])};case"ZodRecord":return sW(e,r);case"ZodLiteral":let p;return"bigint"!=(p=typeof e.value)&&"number"!==p&&"boolean"!==p&&"string"!==p?{type:Array.isArray(e.value)?"array":"object"}:{type:"bigint"===p?"integer":p,const:e.value};case"ZodEnum":return{type:"string",enum:Array.from(e.values)};case"ZodNativeEnum":let h,f,m;return h=e.values,{type:1===(m=Array.from(new Set((f=Object.keys(e.values).filter(e=>"number"!=typeof h[h[e]]).map(e=>h[e])).map(e=>typeof e)))).length?"string"===m[0]?"string":"number":["string","number"],enum:f};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[sY[e.innerType._def.typeName],"null"]};let g=sX(e.innerType._def,{...r,currentPath:[...r.currentPath,"anyOf","0"]});return g&&{anyOf:[g,{type:"null"}]};case"ZodOptional":if(r.currentPath.toString()===r.propertyPath?.toString())return sX(e.innerType._def,r);let y=sX(e.innerType._def,{...r,currentPath:[...r.currentPath,"anyOf","1"]});return y?{anyOf:[{not:{}},y]}:{};case"ZodMap":return"record"===r.mapStrategy?sW(e,r):{type:"array",maxItems:125,items:{type:"array",items:[sX(e.keyType._def,{...r,currentPath:[...r.currentPath,"items","items","0"]})||{},sX(e.valueType._def,{...r,currentPath:[...r.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let v;return v={type:"array",uniqueItems:!0,items:sX(e.valueType._def,{...r,currentPath:[...r.currentPath,"items"]})}
70,e.minSize&&(v.minItems=e.minSize.value),e.maxSize&&(v.maxItems=e.maxSize.value),v;case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return sX(e.type._def,r);case"ZodEffects":return"input"===r.effectStrategy?sX(e.schema._def,r):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...sX(e.innerType._def,r),default:e.defaultValue()};case"ZodBranded":return sR(e,r);case"ZodReadonly":case"ZodCatch":return sX(e.innerType._def,r);case"ZodPipeline":if("input"===r.pipeStrategy)return sX(e.in._def,r);if("output"===r.pipeStrategy)return sX(e.out._def,r);let b=sX(e.in._def,{...r,currentPath:[...r.currentPath,"allOf","0"]});return{allOf:[b,sX(e.out._def,{...r,currentPath:[...r.currentPath,"allOf",b?"1":"0"]})].filter(e=>void 0!==e)};default:return}})(e,e.typeName,t),i="function"==typeof n?sX(n(),t):n;if(i&&s0(e,t,i),t.postProcess){let r=t.postProcess(i,e,t);return o.jsonSchema=i,r}return o.jsonSchema=i,i}let sQ=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:((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("/")})(t.currentPath,e.path)};case"none":case"seen":if(e.path.length<t.currentPath.length&&e.path.every((e,r)=>t.currentPath[r]===e))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),{};return"seen"===t.$refStrategy?{}:void 0}},s0=(e,t,r)=>(e.description&&(r.description=e.description),r),s1=Symbol.for("vercel.ai.schema");function s2(e){let t;return()=>(null==t&&(t=e()),t)}function s4(e,{validate:t}={}){return{[s1]:!0,_type:void 0,get jsonSchema(){return"function"==typeof e&&(e=e()),e},validate:t}}function s6(e){var t;return null==e?s4({type:"object",properties:{},additionalProperties:!1}):"object"==typeof e&&null!==e&&s1 in e&&!0===e[s1]&&"jsonSchema"in e&&"validate"in e?e:"~standard"in e?"zod"===e["~standard"].vendor?s9(e):(t=e,s4(()=>{if(null==t["~standard"].jsonSchema)throw Error(`Standard schema vendor '${t["~standard"].vendor}' does not support JSON Schema conversion.`);return sC(t["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async e=>{let r=await t["~standard"].validate(e);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new eE({value:e,cause:r.issues})}}})):e()}function s9(e,t){let r;if("_zod"in e){let r;return r=t?.useReferences??!1,s4(()=>sC(function(e,t){if("_idmap"in e){let r=nc({...t,processors:ia}),a={};
70for(let t of e._idmap.entries()){let[e,a]=t;nh(a,r)}let o={};for(let n of(r.external={registry:e,uri:t?.uri,defs:a},e._idmap.entries())){let[e,t]=n;nm(r,t),eW(o,e,nw(r,t))}return Object.keys(a).length>0&&(o.__shared={["draft-2020-12"===r.target?"$defs":"definitions"]:a}),{schemas:o}}let r=nc({...t,processors:ia});return nh(e,r),nm(r,e),nw(r,e)}(e,{target:"draft-7",io:"input",reused:r?"ref":"inline"})),{validate:async t=>{let r=await rx(e,t);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}return r=t?.useReferences??!1,s4(()=>((e,t)=>{let r,a,o=(a=void 0!==(r="string"==typeof t?{...sO,name:t}:{...sO,...t}).name?[...r.basePath,r.definitionPath,r.name]:r.basePath,{...r,currentPath:a,propertyPath:void 0,seen:new Map(Object.entries(r.definitions).map(([e,t])=>[t._def,{def:t._def,path:[...r.basePath,r.definitionPath,e],jsonSchema:void 0}]))}),n="object"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>({...e,[t]:sX(r._def,{...o,currentPath:[...o.basePath,o.definitionPath,t]},!0)??{}}),{}):void 0,i="string"==typeof t?t:t?.nameStrategy==="title"?void 0:t?.name,s=sX(e._def,void 0===i?o:{...o,currentPath:[...o.basePath,o.definitionPath,i]},!1)??{},l="object"==typeof t&&void 0!==t.name&&"title"===t.nameStrategy?t.name:void 0;void 0!==l&&(s.title=l);let u=void 0===i?n?{...s,[o.definitionPath]:n}:s:{$ref:[..."relative"===o.$refStrategy?[]:o.basePath,o.definitionPath,i].join("/"),[o.definitionPath]:{...n,[i]:s}};return u.$schema="http://json-schema.org/draft-07/schema#",u})(e,{$refStrategy:r?"root":"none"}),{validate:async t=>{let r=await e.safeParseAsync(t);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}async function s3({value:e,schema:t,context:r}){let a=await s5({value:e,schema:t,context:r});if(!a.success)throw eE.wrap({value:e,cause:a.error,context:r});return a.value}async function s5({value:e,schema:t,context:r}){let a=s6(t);try{if(null==a.validate)return{success:!0,value:e,rawValue:e};let t=await a.validate(e);if(t.success)return{success:!0,value:t.value,rawValue:e};return{success:!1,error:eE.wrap({value:e,cause:t.error,context:r}),rawValue:e}}catch(t){return{success:!1,error:eE.wrap({value:e,cause:t,context:r}),rawValue:e}}}async function s8({text:e,schema:t}){try{let r=sE(e);if(null==t)return r;return await s3({value:r,schema:t})}catch(t){if(Q.isInstance(t)||eE.isInstance(t))throw t;throw new Q({text:e,cause:t})}}async function s7({text:e,schema:t}){try{let r=sE(e);if(null==t)return{success:!0,value:r,rawValue:r};return await s5({value:r,schema:t})}catch(t){return{success:!1,error:Q.isInstance(t)?t:new Q({text:e,cause:t}),rawValue:void 0}}}function le({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new iu).pipeThrough(new TransformStream({async transform({data:e},r){"[DONE]"!==e&&r.enqueue(await s7({text:e,schema:t}))}}))}async function lt({provider:e,providerOptions:t,schema:r}){if(t?.[e]==null)return;let a=await s5({value:t[e],schema:r});if(!a.success)throw new L({argument:"providerOptions",message:`invalid ${e} provider options`,cause:a.error});return a.value}let lr=()=>globalThis.fetch,la=async({url:e,headers:t,body:r,failedResponseHandler:a,successfulResponseHandler:o,abortSignal:n,fetch:i})=>await ln({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:a,successfulResponseHandler:o,abortSignal:n,fetch:i}),lo=async({url:e,headers:t,formData:r,failedResponseHandler:a,successfulResponseHandler:o,abortSignal:n,fetch:i})=>await ln({url:e,headers:t,body:{content:r,values:Object.fromEntries(r.entries())},failedResponseHandler:a,successfulResponseHandler:o,abortSignal:n,fetch:i}),ln=async({url:e,headers:t={},body:r,successfulResponseHandler:a,failedResponseHandler:o,abortSignal:n,fetch:i=lr()})=>{try{let s=await i(e,{method:"POST",headers:iL(t,`ai-sdk-provider-utils/${iq}`,i$()),body:r.content,signal:n}),l=iP(s);if(!s.ok){let t;try{t=await o({response:s,url:e,requestBodyValues:r.values})}catch(t){if(iN(t)||C.isInstance(t))throw t;throw new C({message:"Failed to process error response",cause:t,statusCode:s.status,url:e,responseHeaders:l,requestBodyValues:r.values})}throw t.value}try{return await a({response:s,url:e,requestBodyValues:r.values})}catch(t){if(t instanceof Error&&(iN(t)||C.isInstance(t)))throw t;throw new C({message:"Failed to process successful response",cause:t,statusCode:s.status,url:e,responseHeaders:l,requestBodyValues:r.values})}}catch(t){throw iD({error:t,url:e,requestBodyValues:r.values})}};function li(e){return e}
70function ls({id:e,inputSchema:t,outputSchema:r,supportsDeferredResults:a}){return({onInputStart:o,onInputDelta:n,onInputAvailable:i,...s})=>li({type:"provider",isProviderExecuted:!0,id:e,args:s,inputSchema:t,outputSchema:r,onInputStart:o,onInputDelta:n,onInputAvailable:i,supportsDeferredResults:a})}async function ll(e){return"function"==typeof e&&(e=e()),e}function lu({part:e}){if(iY(e.mediaType))return e.mediaType;if("data"===e.data.type){let t=iK({data:e.data.data,topLevelType:iW(e.mediaType)});if(t)return t;throw new eO({functionality:`file of media type "${e.mediaType}" must specify subtype since it could not be auto-detected`})}throw new eO({functionality:`file of media type "${e.mediaType}" must specify subtype since it is not passed as inline bytes`})}let ld=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:a,shouldRetry:o,getDelayInMs:n=({exponentialBackoffDelay:e})=>e,createRetryError:i=({message:e})=>Error(e)})=>async s=>lc(s,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:a,shouldRetry:o,getDelayInMs:n,createRetryError:i});async function lc(e,{maxRetries:t,delayInMs:r,backoffFactor:a,abortSignal:o,shouldRetry:n,getDelayInMs:i,createRetryError:s},l=[]){try{return await e()}catch(p){if(iN(p)||0===t)throw p;let u=j(p),d=[...l,p],c=d.length;if(c>t)throw s({message:`Failed after ${c} attempts. Last error: ${u}`,reason:"maxRetriesExceeded",errors:d});if(await n(p)&&c<=t)return await im(i({error:p,exponentialBackoffDelay:r}),{abortSignal:o}),lc(e,{maxRetries:t,delayInMs:a*r,backoffFactor:a,abortSignal:o,shouldRetry:n,getDelayInMs:i,createRetryError:s},d);if(1===c)throw p;throw s({message:`Failed after ${c} attempts with non-retryable error: '${u}'`,reason:"errorNotRetryable",errors:d})}}let lp=new TextDecoder,lh=0x4000000;async function lf({response:e,url:t}){return lp.decode(await ss({response:e,url:t}))}let lm=({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:a,url:o,requestBodyValues:n})=>{let i=await lf({response:a,url:o}),s=iP(a);if(""===i.trim())return{responseHeaders:s,value:new C({message:a.statusText,url:o,requestBodyValues:n,statusCode:a.status,responseHeaders:s,responseBody:i,isRetryable:r?.(a)})};try{let l=await s8({text:i,schema:e});return{responseHeaders:s,value:new C({message:t(l),url:o,requestBodyValues:n,statusCode:a.status,responseHeaders:s,responseBody:i,data:l,isRetryable:r?.(a,l)})}}catch{return{responseHeaders:s,value:new C({message:a.statusText,url:o,requestBodyValues:n,statusCode:a.status,responseHeaders:s,responseBody:i,isRetryable:r?.(a)})}}},lg=e=>async({response:t,url:r,requestBodyValues:a})=>{let o=iP(t);if(null==t.body)throw new R({});return{responseHeaders:o,value:le({stream:function({stream:e,url:t,requestBodyValues:r,statusCode:a,responseHeaders:o}){let n=e.getReader(),i=!1,s=()=>{i||(n.releaseLock(),i=!0)};return new ReadableStream({async pull(e){try{let{done:t,value:r}=await n.read();t?(s(),e.close()):e.enqueue(r)}catch(n){if(s(),iN(n))return void e.error(n);e.error(iD({error:new C({message:"Failed to process successful response",cause:n,statusCode:a,url:t,responseHeaders:o,requestBodyValues:r}),url:t,requestBodyValues:r}))}},async cancel(e){try{await n.cancel(e)}finally{s()}}})}({stream:t.body,url:r,requestBodyValues:a,statusCode:t.status,responseHeaders:o}),schema:e})}},ly=e=>async({response:t,url:r,requestBodyValues:a})=>{let o=await lf({response:t,url:r}),n=await s7({text:o,schema:e}),i=iP(t);if(!n.success)throw new C({message:"Invalid JSON response",cause:n.error,statusCode:t.status,responseHeaders:i,responseBody:o,url:r,requestBodyValues:a});return{responseHeaders:i,value:n.value,rawValue:n.rawValue}},lv=(e,{maxLineBytes:t=lh}={})=>{if(!Number.isSafeInteger(t)||t<=0)throw new L({argument:"maxLineBytes",message:"maxLineBytes must be a positive safe integer."});return async({response:r,url:a})=>{let o=iP(r);if(null==r.body)throw new R({});return{responseHeaders:o,value:lb({stream:r.body,schema:e,url:a,maxLineBytes:t})}}};async function*lb({stream:e,schema:t,url:r,maxLineBytes:a}){let o=e.getReader(),n=new TextDecoder,i="",s=0,l=!1;try{for(;;){let{done:e,value:u}=await o.read();if(e){l=!0,i+=n.decode();break}let d=0;for(;d<u.length;){let e=u.indexOf(10,d),o=-1===e?u.length:e;if((s+=o-d)>a)throw new i2({message:`JSON Lines response exceeded maximum line size of ${a} bytes.`,url:r});let l=-1===e?o:e+1;
70if(i+=n.decode(u.subarray(d,l),{stream:!0}),-1===e)break;let c=i.slice(0,-1).replace(/\r$/,"");i="",s=0,d=l,c.trim().length>0&&(yield await s8({text:c,schema:t}))}}let e=i.replace(/\r$/,"");e.trim().length>0&&(yield await s8({text:e,schema:t}))}finally{l||await o.cancel().catch(()=>{}),o.releaseLock()}}function lw(e){if(null==e)return!0;let t=typeof e;return"string"===t||"number"===t||"boolean"===t||"function"!==t&&"symbol"!==t&&"bigint"!==t&&(Array.isArray(e)?e.every(lw):Object.getPrototypeOf(e)===Object.prototype&&Object.values(e).every(lw))}let lx="AI_SerializationError",l_=`vercel.ai.error.${lx}`,lI=Symbol.for(l_);var lk=class extends w{constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:lx,message:e,cause:t}),this[lI]=!0}static isInstance(e){return w.hasMarker(e,l_)}};function lS(e){let t={};for(let[r,a]of Object.entries(e.config))if("headers"===r){let e=function(e){let t=e;if("function"==typeof e&&(t=e()),t instanceof Promise)throw new lk({message:"Cannot serialize asynchronous model options."});return t}(a);lw(e)&&(t[r]=e)}else lw(a)&&(t[r]=a);return{modelId:e.modelId,config:t}}var lT=class{constructor(e=""){this.structure={kind:"undetermined"},this.append(e)}get hasCompleteStructuredValue(){return"structured"===this.structure.kind&&!0===this.structure.complete}append(e){let t=this.structure;for(let r of e){if("undetermined"===t.kind){if(/\s/.test(r))continue;if("{"!==r&&"["!==r){t={kind:"other"};continue}t={kind:"structured",stack:[r],inString:!1,escaped:!1,complete:!1};continue}if("structured"===t.kind&&!t.complete){if(t.inString){t.escaped?t.escaped=!1:"\\"===r?t.escaped=!0:'"'===r&&(t.inString=!1);continue}if('"'===r)t.inString=!0;else if("{"===r||"["===r)t.stack.push(r);else if("}"===r||"]"===r){let e="}"===r?"{":"[";if(t.stack.at(-1)!==e){t={kind:"other"};continue}t.stack.pop(),0===t.stack.length&&(t.complete=!0)}}}this.structure=t}},lE=class{constructor(e,t={}){this.toolCalls=[],this.toolCallsById=new Map,this.toolCallsByIndex=new Map,this.usedToolCallIds=new Set,this.nextGeneratedIdSuffixes=new Map,this.controller=e,this._generateId=t.generateId??sh,this.typeValidation=t.typeValidation??"none",this.extractMetadata=t.extractMetadata,this.buildToolCallProviderMetadata=t.buildToolCallProviderMetadata}processDelta(e){let t,r=e.function?.name,a="string"==typeof r&&0===r.trim().length,o=this.getNonBlankString(e.id),n=this.getNonBlankString(r),i=e.function?.arguments,{index:s}=e,l=this.resolveToolCall({wireId:o,index:s,name:n,hasExplicitCallStart:null!=n&&function(e){if("string"!=typeof e)return!1;let t=e.trimStart()[0];return"{"===t||"["===t}(i),hasEmptyArguments:null==i||0===i.trim().length});if("ambiguous"!==l.kind){if("new"===l.kind){if(a)return;t=this.processNewToolCall(e,{wireId:o,index:s,name:n})}else t=l.toolCall,null!=o&&this.associateWireId(t,o),this.processExistingToolCall(t,e);null!=s&&this.associateIndex(t,s)}}flush(){for(let e of this.toolCalls.every(e=>null!=e.index)?[...this.toolCalls].sort((e,t)=>e.index-t.index||e.sequence-t.sequence):this.toolCalls)e.hasFinished||this.finishToolCall(e)}resolveToolCall({wireId:e,index:t,name:r,hasExplicitCallStart:a,hasEmptyArguments:o}){let n=null!=t?this.toolCallsByIndex.get(t):void 0,i=this.filterToolCallsByName(n,r);if(null!=e){let s=this.toolCallsById.get(e);if(null!=s){if(null!=t){let e=i.filter(e=>s.has(e)),t=this.resolveMatchingToolCall(e,a);return"new"!==t.kind?t:null!=r?{kind:"new"}:null!=n?{kind:"ambiguous"}:this.resolveMatchingToolCall([...s],!1)}if(null!=r){let e=[...s].filter(e=>e.function.name===r);return this.resolveMatchingToolCall(e,a)}return this.resolveMatchingToolCall([...s],!1)}return i.length>0?a?{kind:"new"}:this.resolveMatchingToolCall(i,null!=r&&o):{kind:"new"}}if(null!=n)return this.resolveMatchingToolCall(i,a);if(null!=r)return{kind:"new"};let s=this.toolCalls.filter(e=>!e.hasFinished);return this.resolveMatchingToolCall(s,!1)}filterToolCallsByName(e,t){return null==e?[]:[...e].filter(e=>null==t||e.function.name===t)}resolveMatchingToolCall(e,t){if(0===e.length)return{kind:"new"};let r=e.filter(e=>!e.argumentState.hasCompleteStructuredValue);
70return t||1!==e.length?1===r.length?{kind:"existing",toolCall:r[0]}:r.length>1||!t?{kind:"ambiguous"}:{kind:"new"}:{kind:"existing",toolCall:e[0]}}processNewToolCall(e,{wireId:t,index:r,name:a}){if("required"===this.typeValidation){if("function"!==e.type)throw new K({data:e,message:"Expected 'function' type."})}else if("if-present"===this.typeValidation&&null!=e.type&&"function"!==e.type)throw new K({data:e,message:"Expected 'function' type."});if(null==a)throw new K({data:e,message:"Expected 'function.name' to be a string."});let o=this.createToolCallId(t);this.controller.enqueue({type:"tool-input-start",id:o,toolName:a});let n=this.extractMetadata?.(e),i=e.function?.arguments??"",s={id:o,index:r??void 0,sequence:this.toolCalls.length,type:"function",function:{name:a,arguments:i},argumentState:new lT(i),hasFinished:!1,metadata:n};return this.toolCalls.push(s),null!=t&&this.associateWireId(s,t),s.function.arguments.length>0&&this.controller.enqueue({type:"tool-input-delta",id:s.id,delta:s.function.arguments}),s}associateWireId(e,t){let r=this.toolCallsById.get(t);null==r&&(r=new Set,this.toolCallsById.set(t,r)),r.add(e)}associateIndex(e,t){let r=this.toolCallsByIndex.get(t);null==r&&(r=new Set,this.toolCallsByIndex.set(t,r)),r.add(e)}createToolCallId(e){if(null!=e&&!this.usedToolCallIds.has(e))return this.usedToolCallIds.add(e),e;let t=this.getNonBlankString(this._generateId())??"tool-call";if(!this.usedToolCallIds.has(t))return this.usedToolCallIds.add(t),t;let r=this.nextGeneratedIdSuffixes.get(t)??1,a=r+this.usedToolCallIds.size;for(let e=r;e<=a;e++){let r=`${t}-${e}`;if(!this.usedToolCallIds.has(r))return this.usedToolCallIds.add(r),this.nextGeneratedIdSuffixes.set(t,e+1),r}throw Error("Failed to create a unique tool call ID.")}getNonBlankString(e){return null!=e&&e.trim().length>0?e:void 0}processExistingToolCall(e,t){e.hasFinished||t.function?.arguments!=null&&(e.argumentState.append(t.function.arguments),e.function.arguments+=t.function.arguments,this.controller.enqueue({type:"tool-input-delta",id:e.id,delta:t.function.arguments}))}finishToolCall(e){this.controller.enqueue({type:"tool-input-end",id:e.id});let t=this.buildToolCallProviderMetadata?.(e.metadata);this.controller.enqueue({type:"tool-call",toolCallId:e.id,toolName:e.function.name,input:e.function.arguments,...t?{providerMetadata:t}:{}}),e.hasFinished=!0}};let lC="transcription-stream.start",lM="transcription-stream.audio-done";function lA(e){let t;try{t=sE(e)}catch{return}if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t;switch(r.type){case"stream-start":return Array.isArray(r.warnings)&&r.warnings.every(l$)?r:void 0;case"transcript-delta":return lO(r.delta)&&lP(r.id,lO)&&lP(r.providerMetadata,sv)?r:void 0;case"transcript-partial":return lO(r.text)&&lP(r.id,lO)&&lP(r.startSecond,lR)&&lP(r.durationInSeconds,lR)&&lP(r.channelIndex,lR)&&lP(r.providerMetadata,sv)?r:void 0;case"transcript-final":return lO(r.text)&&lP(r.id,lO)&&lP(r.startSecond,lR)&&lP(r.endSecond,lR)&&lP(r.channelIndex,lR)&&lP(r.providerMetadata,sv)?r:void 0;case"finish":return lO(r.text)&&Array.isArray(r.segments)&&r.segments.every(lN)&&lP(r.language,lO)&&lP(r.durationInSeconds,lR)&&lP(r.usage,sv)&&lP(r.providerMetadata,sv)?r:void 0;case"response-metadata":{if(!(lP(r.modelId,lO)&&lP(r.headers,sv)))return;let e=r.timestamp;if(null==e)return{...r,timestamp:void 0};if("string"!=typeof e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:{...r,timestamp:t}}case"raw":return"rawValue"in r?r:void 0;case"error":return"error"in r?r:void 0;default:return}}function lO(e){return"string"==typeof e}function lR(e){return"number"==typeof e}function lP(e,t){return void 0===e||t(e)}function l$(e){return sv(e)&&lO(e.type)}function lN(e){return sv(e)&&lO(e.text)&&lR(e.startSecond)&&lR(e.endSecond)}function lz(e){return e?.replace(/\/$/,"")}function lj(e){return null!=e&&"function"==typeof e.execute}async function*lD({tool:e,input:t,options:r}){let a=e.execute(t,r);if(null!=a&&"function"==typeof a[Symbol.asyncIterator]){let e;for await(let t of a)e=t,yield{type:"preliminary",output:t};yield{type:"final",output:e}}else yield{type:"final",output:await a}}function lq(e){return e?.experimental_toolCaller}e.s(["Dk",0,0x80000000,"ze",0,iR,"jK",0,i2,"A8",0,su,"dh",0,sd,"zm",0,lM,"pk",0,lC,"lO",0,lE,"jf",0,ip,"lU",0,s6,"Ii",0,iX,"qm",0,ih,"Sd",0,iw,"rP",0,ix,"d_",0,ik,"lH",0,iT,"Ht",0,iE,"t7",0,iS,"Am",0,lg,"Ez",0,sp,"Rn",0,lm,"uM",0,lv,"kc",0,ly,"cL",0,iC,"k0",0,iM,"pG",0,ls,"rw",0,im,"rQ",0,iK,"KL",0,sl,"pl",0,function(e){return{...e,type:"dynamic"}},"Mh",0,lD,"Op",0,lq,"KA",0,lA,"Zo",0,function(e,t){return Object.defineProperty({...e},"experimental_toolCaller",{value:t})},"SE",0,si,"ob",0,sc,"Kf",0,sh,"I_",0,sf,"$J",0,i$,"cv",0,iW,"cq",0,iN,"Ib",0,sm,"Zu",0,sx,"wP",0,lj,"Vx",0,iY,"aH",0,sg,"aO",0,sy,"UZ",0,iO,"Td",0,sb,"Np",0,s4,"Dq",0,s2,"ME",0,sw,"$e",0,s_,"n2",0,iU,"rD",0,le,"Wv",0,lt,"wV",0,lo,"YH",0,la,"QE",0,ss,"R3",0,ll,"Uk",0,lu,"kE",0,ld,"H9",0,s7,"RO",0,s5,"Dw",0,sE,"xj",0,lS,"ka",0,li,"H5",0,s3,"zc",0,ib,"VJ",0,iL,"Kh",0,lz,"uO",0,s9],122199);
70class lU extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform"),this.name="ZodCyclicError"}}let lL="~memo",lF=[];function lZ(e){return null!==e&&"object"==typeof e}function lB(e){return e.map(e=>e.path?{...e,path:e.path.slice()}:{...e})}let lV=new WeakMap,lG=[],lH={alloc(e,t,r){let o=a;if(!o)return r;a=void 0;let n={value:r,issues:null};return o.set(t.value,n),lG.push(n),r},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,r=(e,r)=>{var a,o;let n;if("backward"!==r.direction&&(a=r,o=e.value,void 0!==(n=a[lL]?.backEdges)&&lZ(o)&&n.has(o)))throw new lU;return t(e,r)};e._zod.parse=r,e._zod.run===t&&(e._zod.run=r)})},attach(e){var t;let r,o,n,i=!1;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,s=(l,u)=>{let d;if(void 0===r){let a=function e(t,r,a){var o,n;let i=lV.get(t);if(void 0!==i)return 2*!!i;if(r.has(t))return 2;r.add(t);let s=0,l=t=>{if(2!==s&&t?._zod){let o=e(t,r,a);o>s&&(s=o)}},u=e=>{e>s&&(s=e)},d=t._zod.def;switch(d.type){case"object":{let t=eY(d);u(t?((t,o)=>{let n=0;for(let i of Reflect.ownKeys(t)){let s=Object.getOwnPropertyDescriptor(t,i);if(o&&!s.enumerable)continue;let l=s.get?1:s.value?._zod?e(s.value,r,a):0;l>n&&(n=l)}return n})(t,!0):1),l(d.catchall);break}case"array":l(d.element);break;case"tuple":for(let e of d.items)l(e);l(d.rest);break;case"record":case"map":l(d.keyType),l(d.valueType);break;case"set":l(d.valueType);break;case"union":for(let e of d.options)l(e);break;case"intersection":l(d.left),l(d.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":l(d.innerType);break;case"pipe":l(d.in),l(d.out);break;case"function":l(d.input),l(d.output);break;case"lazy":{let o=d._cachedInner??(a?t._zod.innerType:void 0);u(o?e(o,r,!1):1);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(let e in d){let t=Object.getOwnPropertyDescriptor(d,e);if(!t||t.get)continue;let r=t.value;if(r&&"object"==typeof r){if(r._zod)l(r);else if(Array.isArray(r))for(let e of r)l(e)}}}return r.delete(t),o=t,1!==(n=s)&&lV.set(o,2===n),n}(e,new Set,!1);if(0===a)return e._zod.parse=t,e._zod.run===s&&(e._zod.run=t),t(l,u);2===a||i?r=!0:i=!0}let c=l.value;if(!lZ(c))return t(l,u);let p=u[lL];if(p||(p={buckets:new WeakMap,backEdges:void 0},u[lL]=p),o===u)d=n;else{var h;let t;(t=(h=p).buckets.get(e))||(t=new WeakMap,h.buckets.set(e,t)),d=t,o=u,n=d}let f=d.get(c);if(f)return l.value=f.value,f.issues?f.issues.length&&l.issues.push(...lB(f.issues)):(l.memo=!0,p.backEdges??(p.backEdges=new WeakSet),p.backEdges.add(f.value)),l;a=d;let m=lG.length,g=t(l,u);a=void 0;let y=lG.length>m?lG.pop():void 0;return g instanceof Promise?g.then(e=>(y&&(y.issues=e.issues.length?lB(e.issues):lF),e)):(y&&(y.issues=g.issues.length?lB(g.issues):lF),g)};e._zod.parse=s,e._zod.run===t&&(e._zod.run=s)})}};function lJ(e){return e.checks&&(e.checks=[...e.checks]),e}function lK(e,t){return new ak({check:"less_than",...td(t),value:e,inclusive:!1})}function lW(e,t){return new ak({check:"less_than",...td(t),value:e,inclusive:!0})}function lY(e,t){return new aS({check:"greater_than",...td(t),value:e,inclusive:!1})}function lX(e,t){return new aS({check:"greater_than",...td(t),value:e,inclusive:!0})}function lQ(e,t){return new aT({check:"multiple_of",...td(t),value:e})}function l0(e,t){return new aR({check:"max_length",...td(t),maximum:e})}function l1(e,t){return new aP({check:"min_length",...td(t),minimum:e})}function l2(e,t){return new a$({check:"length_equals",...td(t),length:e})}function l4(e){return new aB({check:"overwrite",tx:e})}e.i(682358);var l6=e.i(922143),l6=l6,l9=l6,l3=l6,l5=l6,l8=l6,l7=l6,ue=l6,ut=l6,ur=l6,ua=l6,uo=l6,un=l6,ui=l6,us=l6,ul=l6,uu=l6;function ud(){t3.memoizer||t5({memoizer:lH})}let uc=t4("ZodType",(e,t)=>(t3.localeError||t5({localeError:(()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}},t={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};function a(e,t){return"number"!==e||"number"!=typeof t||Number.isFinite(t)?r[e]??e:String(t)}return r=>
70{switch(r.code){case"invalid_type":{let e=a(r.expected),t=a(tN(r.input),r.input);return`Invalid input: expected ${e}, received ${t}`}case"invalid_value":if(1===r.values.length)return`Invalid input: expected ${tp(r.values[0])}`;return`Invalid option: expected one of ${eU(r.values,"|")}`;case"too_big":{let t=r.exact?"exactly ":r.inclusive?"<=":"<",a=e[r.origin]??null;if(a)return`Too big: expected ${r.origin??"value"} to have ${t}${r.maximum.toString()} ${a.unit??"elements"}`;return`Too big: expected ${r.origin??"value"} to be ${t}${r.maximum.toString()}`}case"too_small":{let t=r.exact?"exactly ":r.inclusive?">=":">",a=e[r.origin]??null;if(a)return`Too small: expected ${r.origin} to have ${t}${r.minimum.toString()} ${a.unit}`;return`Too small: expected ${r.origin} to be ${t}${r.minimum.toString()}`}case"invalid_format":if("starts_with"===r.format)return`Invalid string: must start with "${r.prefix}"`;if("ends_with"===r.format)return`Invalid string: must end with "${r.suffix}"`;if("includes"===r.format)return`Invalid string: must include "${r.includes}"`;if("regex"===r.format)return`Invalid string: must match pattern ${r.pattern}`;return`Invalid ${t[r.format]??r.format}`;case"not_multiple_of":return`Invalid number: must be a multiple of ${r.divisor}`;case"unrecognized_keys":return`Unrecognized key${r.keys.length>1?"s":""}: ${eU(r.keys,", ")}`;case"invalid_key":return`Invalid key in ${r.origin}`;case"invalid_union":if(r.options&&Array.isArray(r.options)&&r.options.length>0){let e=r.options.map(e=>`'${e}'`).join(" | ");return`Invalid discriminator value. Expected ${e}`}if(!1===r.inclusive)return"Invalid input: more than one option matched";return"Invalid input";case"invalid_element":return`Invalid value in ${r.origin}`;default:return"Invalid input"}}})()}),aH.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(l9.mergeDefs(t,{checks:[...t.checks??[],...e.map(e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return tu(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(function(e,t={}){return new dx({type:"custom",check:"custom",fn:e,...td(t)})}(e,t))},superRefine(e,t){return this.check(function(e,t){var r;let a,o;return r=t=>(t.addIssue=e=>{"string"==typeof e?t.issues.push(tz(e,t.value,a._zod.def)):(e.fatal&&(e.continue=!1),e.code??(e.code="custom"),"input"in e||(e.input=t.value),e.inst??(e.inst=a),e.continue??(e.continue=!a._zod.def.abort),t.issues.push(tz(e)))},e(t.value,t)),(o=new aw({check:"custom",...td(t)}))._zod.check=r,a=o}(e,t))},overwrite(e){return this.check(l4(e))},optional(){return dl(this)},exactOptional(){var e;return e=this,new du({type:"optional",innerType:e})},nullable(){return dc(this)},nullish(){return dl(dc(this))},nonoptional(e){var t,r;return t=this,r=e,new df({type:"nonoptional",innerType:t,...l7.normalizeParams(r)})},array(){return u0(this)},or(e){return u9([this,e])},and(e){var t;return t=this,new u8({type:"intersection",left:t,right:e})},transform(e){return dy(this,new di({type:"transform",transform:e}))},default(e){var t,r;return t=this,r=e,new dp({type:"default",innerType:t,get defaultValue(){return"function"==typeof r?r():uu.shallowClone(r)}})},prefault(e){var t,r;return t=this,r=e,new dh({type:"prefault",innerType:t,get defaultValue(){return"function"==typeof r?r():uu.shallowClone(r)}})},catch(e){var t,r;return t=this,new dm({type:"catch",innerType:t,catchValue:"function"==typeof(r=e)?r:l6.constantCatch(r)})},pipe(e){return dy(this,e)},readonly(){var e;return e=this,new dv({type:"readonly",innerType:e})},describe(e){let t=this.clone();return nu.add(t,{description:e}),t},meta(...e){if(0===e.length)return nu.get(this);let t=this.clone();return nu.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return 0===t.length?e(this):e(this,...t)},get"~standard"(){return l3.hide(this,"~standard",{...aW(this),jsonSchema:{input:nx(this,"input"),output:nx(this,"output")}})},set"~standard"(e){l5.own(this,"~standard",e)},parse:function e(t,r){return rv(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await rb(this,t,r,{callee:e})},safeParse(e,t){return rw(this,e,t)},async safeParseAsync(e,t){return rx(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){l5.own(this,"spa",e)}
70,validate(e,t){let r=this._zod.bag.validator;if(void 0!==r){if(r(e)!==rp)return!0;if(!0===r.definite&&void 0===t)return!1}return function(e,t,r){let a,o=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},n=e._zod.bag.fallbackRun;if(n?(o[rh]=!0,a=n({value:t,issues:[]},o)):a=e._zod.run({value:t,issues:[]},o),a instanceof Promise)throw new t6;return 0===a.issues.length}(this,e,t)},validateAsync(e,t){return rf(this,e,t)},encode:function e(t,r){return r_(this,t,r,{callee:e})},decode:function e(t,r){return rI(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await rk(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await rS(this,t,r,{callee:e})},safeEncode(e,t){return rT(this,e,t)},safeDecode(e,t){return rE(this,e,t)},async safeEncodeAsync(e,t){return rC(this,e,t)},async safeDecodeAsync(e,t){return rM(this,e,t)},toJSONSchema(e){return((e,t={})=>r=>{let a=nc({...r,processors:t});return nh(e,a),nm(a,e),nw(a,e)})(this,{})(e)},get description(){return nu.get(this)?.description},get _def(){return this._zod.def}}),up=t4("_ZodString",(e,t)=>{aY.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nj(e,t,r,a)},l8.derived({format:e=>nP(e).format??null,minLength:e=>nP(e).minimum??null,maxLength:e=>nP(e).maximum??null},{regex(...e){return this.check(function(e,t){return new az({check:"string_format",format:"regex",...td(t),pattern:e})}(...e))},includes(...e){return this.check(function(e,t){return new aq({check:"string_format",format:"includes",...td(t),includes:e})}(...e))},startsWith(...e){return this.check(function(e,t){return new aU({check:"string_format",format:"starts_with",...td(t),prefix:e})}(...e))},endsWith(...e){return this.check(function(e,t){return new aL({check:"string_format",format:"ends_with",...td(t),suffix:e})}(...e))},min(...e){return this.check(l1(...e))},max(...e){return this.check(l0(...e))},length(...e){return this.check(l2(...e))},nonempty(...e){return this.check(l1(1,...e))},lowercase(e){return this.check(new aj({check:"string_format",format:"lowercase",...td(e)}))},uppercase(e){return this.check(new aD({check:"string_format",format:"uppercase",...td(e)}))},trim(){return this.check(l4(e=>e.trim()))},normalize(...e){return this.check(function(e){return l4(t=>t.normalize(e))}(...e))},toLowerCase(){return this.check(l4(e=>e.toLowerCase()))},toUpperCase(){return this.check(l4(e=>e.toUpperCase()))},slugify(){return this.check(l4(e=>e8(e)))}})),uh=t4("ZodString",(e,t)=>{aY.init(e,t),up.init(e,t)},{email(e){return this.check(new uw({type:"string",format:"email",check:"string_format",abort:!1,...td(e)}))},url(e){return this.check(new uI({type:"string",format:"url",check:"string_format",abort:!1,...td(e)}))},jwt(e){return this.check(new uD({type:"string",format:"jwt",check:"string_format",abort:!1,...td(e)}))},emoji(e){return this.check(new uk({type:"string",format:"emoji",check:"string_format",abort:!1,...td(e)}))},guid(e){return this.check(new ux({type:"string",format:"guid",check:"string_format",abort:!1,...td(e)}))},uuid(e){return this.check(new u_({type:"string",format:"uuid",check:"string_format",abort:!1,...td(e)}))},uuidv4(e){return this.check(new u_({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...td(e)}))},uuidv6(e){return this.check(new u_({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...td(e)}))},uuidv7(e){return this.check(new u_({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...td(e)}))},nanoid(e){return this.check(new uS({type:"string",format:"nanoid",check:"string_format",abort:!1,...td(e)}))},cuid(e){return this.check(new uT({type:"string",format:"cuid",check:"string_format",abort:!1,...td(e)}))},cuid2(e){return this.check(new uE({type:"string",format:"cuid2",check:"string_format",abort:!1,...td(e)}))},ulid(e){return this.check(new uC({type:"string",format:"ulid",check:"string_format",abort:!1,...td(e)}))},base64(e){return this.check(new uN({type:"string",format:"base64",check:"string_format",abort:!1,...td(e)}))},base64url(e){return this.check(new uz({type:"string",format:"base64url",check:"string_format",abort:!1,...td(e)}))},xid(e){return this.check(new uM({type:"string",format:"xid",check:"string_format",abort:!1,...td(e)}))},ksuid(e){return this.check(new uA({type:"string",format:"ksuid",check:"string_format",abort:!1,...td(e)}))},ipv4(e){return this.check(new uO({type:"string",format:"ipv4",check:"string_format",abort:!1,...td(e)}))},ipv6(e){return this.check(new uR({type:"string",format:"ipv6",check:"string_format",abort:!1,...td(e)}))},cidrv4(e){return this.check(new uP({type:"string",format:"cidrv4",check:"string_format",abort:!1,...td(e)}))},cidrv6(e){return this.check(new u$({type:"string",format:"cidrv6",check:"string_format",abort:!1,...td(e)}))},e164(e){return this.check(new uj({type:"string",format:"e164",check:"string_format",abort:!1,...td(e)}))},datetime(e){return this.check(new ug({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...td(e)}))},date(e){return this.check(new uy({type:"string",format:"date",check:"string_format",...td(e)}))},time(e){return this.check(new uv({type:"string",format:"time",check:"string_format",precision:null,...td(e)}))},duration(e){return this.check(new ub({type:"string",format:"duration",check:"string_format",...td(e)}))}});function uf(e){return new uh(lJ({type:"string",...td(e)}))}let um=t4("ZodStringFormat",(e,t)=>{aX.init(e,t),up.init(e,t)}),ug=t4("ZodISODateTime",(e,t)=>{oa.init(e,t),um.init(e,t)}),uy=t4("ZodISODate",(e,t)=>{oo.init(e,t),um.init(e,t)}),uv=t4("ZodISOTime",(e,t)=>{on.init(e,t),um.init(e,t)}),ub=t4("ZodISODuration",(e,t)=>{oi.init(e,t),um.init(e,t)}),uw=t4("ZodEmail",(e,t)=>{a1.init(e,t),um.init(e,t)}),ux=t4("ZodGUID",(e,t)=>{aQ.init(e,t),um.init(e,t)}),u_=t4("ZodUUID",(e,t)=>{a0.init(e,t),um.init(e,t)}),uI=t4("ZodURL",(e,t)=>{a9.init(e,t),um.init(e,t)}),uk=t4("ZodEmoji",(e,t)=>{a3.init(e,t),um.init(e,t)}),uS=t4("ZodNanoID",(e,t)=>{a5.init(e,t),um.init(e,t)}),uT=t4("ZodCUID",(e,t)=>{a8.init(e,t),um.init(e,t)}),uE=t4("ZodCUID2",(e,t)=>{a7.init(e,t),um.init(e,t)}
70),uC=t4("ZodULID",(e,t)=>{oe.init(e,t),um.init(e,t)}),uM=t4("ZodXID",(e,t)=>{ot.init(e,t),um.init(e,t)}),uA=t4("ZodKSUID",(e,t)=>{or.init(e,t),um.init(e,t)}),uO=t4("ZodIPv4",(e,t)=>{os.init(e,t),um.init(e,t)}),uR=t4("ZodIPv6",(e,t)=>{od.init(e,t),um.init(e,t)}),uP=t4("ZodCIDRv4",(e,t)=>{oc.init(e,t),um.init(e,t)}),u$=t4("ZodCIDRv6",(e,t)=>{op.init(e,t),um.init(e,t)}),uN=t4("ZodBase64",(e,t)=>{om.init(e,t),um.init(e,t)}),uz=t4("ZodBase64URL",(e,t)=>{oy.init(e,t),um.init(e,t)}),uj=t4("ZodE164",(e,t)=>{ov.init(e,t),um.init(e,t)}),uD=t4("ZodJWT",(e,t)=>{ow.init(e,t),um.init(e,t)}),uq=t4("ZodNumber",(e,t)=>{ox.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nD(e,t,r,a),e.isFinite=!0},l8.derived({minValue:e=>{let{minimum:t,exclusiveMinimum:r}=nP(e);return Math.max(t??-1/0,r??-1/0)},maxValue:e=>{let{maximum:t,exclusiveMaximum:r}=nP(e);return Math.min(t??1/0,r??1/0)},isInt:e=>{let{isInt:t,multipleOf:r}=nP(e);return!!t||!!r?.some(Number.isSafeInteger)},format:e=>nP(e).format??null},{gt(e,t){return this.check(lY(e,t))},gte(e,t){return this.check(lX(e,t))},min(e,t){return this.check(lX(e,t))},lt(e,t){return this.check(lK(e,t))},lte(e,t){return this.check(lW(e,t))},max(e,t){return this.check(lW(e,t))},int(e){return this.check(uF(e))},safe(e){return this.check(uF(e))},positive(e){return this.check(lY(0,e))},nonnegative(e){return this.check(lX(0,e))},negative(e){return this.check(lK(0,e))},nonpositive(e){return this.check(lW(0,e))},multipleOf(e,t){return this.check(lQ(e,t))},step(e,t){return this.check(lQ(e,t))},finite(){return this}}));function uU(e){return new uq(lJ({type:"number",checks:[],...td(e)}))}let uL=t4("ZodNumberFormat",(e,t)=>{o_.init(e,t),uq.init(e,t)});function uF(e){return new uL({type:"number",check:"number_format",abort:!1,format:"safeint",...td(e)})}let uZ=t4("ZodBoolean",(e,t)=>{oI.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nq(e,t,r,a)});function uB(e){return new uZ({type:"boolean",...td(e)})}(e,t)=>{ok.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nU(e,t,r,a)};let uV=t4("ZodNull",(e,t)=>{oS.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nL(e,t,r,a)});function uG(e){return new uV({type:"null",...td(e)})}let uH=t4("ZodAny",(e,t)=>{oT.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nZ(e,t,r,a)});function uJ(){return new uH({type:"any"})}let uK=t4("ZodUnknown",(e,t)=>{oE.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nB(e,t,r,a)});function uW(){return new uK({type:"unknown"})}let uY=t4("ZodNever",(e,t)=>{oC.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nF(e,t,r,a)});function uX(e){return new uY({type:"never",...td(e)})}let uQ=t4("ZodArray",(e,t)=>{ud(),oA.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nK(e,t,r,a),e.element=t.element},{min(e,t){return this.check(l1(e,t))},nonempty(e){return this.check(l1(1,e))},max(e,t){return this.check(l0(e,t))},length(e,t){return this.check(l2(e,t))},unwrap(){return this.element}});function u0(e,t){return new uQ({type:"array",element:e,...td(t)})}let u1=t4("ZodObject",(e,t)=>{ud(),oz.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nY(e,t,r,a),us.installLazyProp(e,"shape",e=>e._zod.def.shape,!1)},{keyof(){return dr(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(l9.mergeDefs(this._zod.def,{catchall:e}))},passthrough(){return this.clone(l9.mergeDefs(this._zod.def,{catchall:uW()}))},loose(){return this.clone(l9.mergeDefs(this._zod.def,{catchall:uW()}))},strict(){return this.clone(l9.mergeDefs(this._zod.def,{catchall:uX()}))},strip(){return this.clone(l9.mergeDefs(this._zod.def,{catchall:void 0}))},extend(e){return ue.extend(this,e)},safeExtend(e){return ut.safeExtend(this,e)},merge(e){return ur.merge(this,e)},pick(e){return ua.pick(this,e)},omit(e){return uo.omit(this,e)},partial(...e){return un.partial(ds,this,e[0])},exactPartial(...e){return un.partial(du,this,e[0],"exactPartial")},required(...e){return ui.required(df,this,e[0])}});function u2(e,t){return new u1({type:"object",shape:e??{},...l7.normalizeParams(t)})}function u4(e,t){return new u1({type:"object",shape:e,catchall:uW(),...l7.normalizeParams(t)})}let u6=t4("ZodUnion",(e,t)=>{oD.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nX(e,t,r,a),e.options=t.options});function u9(e,t){return new u6({type:"union",options:e,...l7.normalizeParams(t)})}let u3=t4("ZodDiscriminatedUnion",(e,t)=>{u6.init(e,t),oU.init(e,t)});function u5(e,t,r){return new u3({type:"union",options:t,discriminator:e,...l7.normalizeParams(r)})}let u8=t4("ZodIntersection",(e,t)=>{oL.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nQ(e,t,r,a)}),u7=t4("ZodRecord",(e,t)=>{ud(),oH.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n1(e,t,r,a),e.keyType=t.keyType,e.valueType=t.valueType});function de(e,t,r){return new u7(t&&t._zod?{type:"record",keyType:e,valueType:t,...l7.normalizeParams(r)}:{type:"record",keyType:uf(),valueType:e,...l7.normalizeParams(t)})}let dt=t4("ZodEnum",(e,t)=>{oW.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nV(e,t,r,a),e.enum=t.entries,e.options=[...e._zod.values];let r=new Set(Object.keys(t.entries));e.extract=(e,a)=>{let o={};for(let a of e)if(r.has(a))o[a]=t.entries[a];else throw Error(`Key ${a} not found in enum`);return new dt({...t,checks:[],...l7.normalizeParams(a),entries:o})},e.exclude=(e,a)=>{let o={...t.entries};for(let t of e)if(r.has(t))delete o[t];else throw Error(`Key ${t} not found in enum`);return new dt({...t,checks:[],...l7.normalizeParams(a),entries:o})}});function dr(e,t){return new dt({type:"enum",entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...l7.normalizeParams(t)})}let da=t4("ZodLiteral",(e,t)=>{oY.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nG(e,t,r,a),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if
70(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function dn(e,t){return new da({type:"literal",values:Array.isArray(e)?e:[e],...l7.normalizeParams(t)})}let di=t4("ZodTransform",(e,t)=>{ud(),oX.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nJ(e,t,r,a),e._zod.parse=(r,a)=>{if("backward"===a.direction)throw new t9(e.constructor.name);r.addIssue=a=>{"string"==typeof a?r.issues.push(ul.issue(a,r.value,t)):(a.fatal&&(a.continue=!1),a.code??(a.code="custom"),"input"in a||(a.input=r.value),a.inst??(a.inst=e),r.issues.push(ul.issue(a)))};let o=t.transform(r.value,r);return o instanceof Promise?o.then(e=>(r.value=e,r)):(r.value=o,r)}}),ds=t4("ZodOptional",(e,t)=>{o0.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>it(e,t,r,a),e.unwrap=()=>e._zod.def.innerType});function dl(e){return new ds({type:"optional",innerType:e})}let du=t4("ZodExactOptional",(e,t)=>{o1.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>it(e,t,r,a),e.unwrap=()=>e._zod.def.innerType}),dd=t4("ZodNullable",(e,t)=>{o2.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n2(e,t,r,a),e.unwrap=()=>e._zod.def.innerType});function dc(e){return new dd({type:"nullable",innerType:e})}let dp=t4("ZodDefault",(e,t)=>{o4.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n3(e,t,r,a),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap}),dh=t4("ZodPrefault",(e,t)=>{o9.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n5(e,t,r,a),e.unwrap=()=>e._zod.def.innerType}),df=t4("ZodNonOptional",(e,t)=>{o3.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n4(e,t,r,a),e.unwrap=()=>e._zod.def.innerType}),dm=t4("ZodCatch",(e,t)=>{o7.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n8(e,t,r,a),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap}),dg=t4("ZodPipe",(e,t)=>{ne.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>n7(e,t,r,a),e.in=t.in,e.out=t.out});function dy(e,t){return new dg({type:"pipe",in:e,out:t})}let dv=t4("ZodReadonly",(e,t)=>{no.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>ie(e,t,r,a),e.unwrap=()=>e._zod.def.innerType}),db=t4("ZodLazy",(e,t)=>{ni.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>ir(e,t,r,a),e.unwrap=()=>e._zod.def.getter()});function dw(e){return new db({type:"lazy",getter:e})}let dx=t4("ZodCustom",(e,t)=>{ns.init(e,t),uc.init(e,t),e._zod.processJSONSchema=(t,r,a)=>nH(e,t,r,a)});function d_(e,t){var r;let a;return r=e??(()=>!0),(a=td(t)).abort??(a.abort=!0),new dx({type:"custom",check:"custom",fn:r,...a})}let dI=t4("ZodInstanceOf",(e,t)=>{dx.init(e,t)},{properties(e,t){return this.check(new aZ({check:"properties",shape:e,...td(t)}))}});function dk(e,t={}){let r=new dI({type:"custom",check:"custom",fn:t=>t instanceof e,abort:!0,...l7.normalizeParams(t)});return r._zod.bag.Class=e,r._zod.check=t=>{t.value instanceof e||t.issues.push({code:"invalid_type",expected:e.name,input:t.value,inst:r,path:[...r._zod.def.path??[]]})},r}function dS(e){let t=dw(()=>u9([uf(e),uU(),uB(),uG(),u0(t),de(uf(),t)]));return t}e.s(["any",0,uJ,"array",0,u0,"boolean",0,uB,"custom",0,d_,"discriminatedUnion",0,u5,"enum",0,dr,"instanceof",0,dk,"json",0,dS,"lazy",0,dw,"literal",0,dn,"looseObject",0,u4,"never",0,uX,"null",0,uG,"number",0,uU,"object",0,u2,"record",0,de,"string",0,uf,"union",0,u9,"unknown",0,uW],362201);var dT=e.i(725150);let dE="ai-gateway-transcription.v1";function dC(e,t,r){let a=[e,`ai-gateway-auth.${t}`];return r?.teamIdOrSlug&&a.push(`ai-gateway-team.${function(e){let t=new TextEncoder().encode(e),r="";for(let e of t)r+=String.fromCharCode(e);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/u,"")}(r.teamIdOrSlug)}`),a}let dM=u0,dA=dr,dO=u9,dR=Symbol.for("vercel.ai.gateway.error");var dP=class e extends Error{constructor({message:e,statusCode:t=500,cause:r,generationId:a,isRetryable:o=null!=t&&(408===t||409===t||429===t||t>=500)}){super(a?`${e} [${a}]`:e),this[dR]=!0,this.statusCode=t,this.cause=r,this.generationId=a,this.isRetryable=o}static isInstance(t){return e.hasMarker(t)}static hasMarker(e){return"object"==typeof e&&null!==e&&dR in e&&!0===e[dR]}};let d$="GatewayAuthenticationError",dN=Symbol.for(`vercel.ai.gateway.error.${d$}`);var dz=class e extends dP{constructor({message:e="Authentication failed",statusCode:t=401,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[dN]=!0,this.name=d$,this.type="authentication_error"}static isInstance(e){return dP.hasMarker(e)&&dN in e}static createContextualError({apiKeyProvided:t,oidcTokenProvided:r,statusCode:a=401,cause:o,generationId:n}){return new e({message:t?`AI Gateway authentication failed: Invalid API key or token. 71 72Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys 73 74Provide an API key or Vercel access token via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`:r?`AI Gateway authentication failed: Invalid OIDC token. 75 76Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token. 77 78Alternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys 79or pass a Vercel access token via the 'apiKey' option.`:`AI Gateway authentication failed: No authentication provided. 80 81Option 1 - API key: 82Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys 83Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable. 84 85Option 2 - Vercel access token: 86Pass a Vercel personal access token or Vercel app access token via the 'apiKey' option. 87 88Option 3 - OIDC token: 89Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,statusCode:a,cause:o,generationId:n})}};let dj="GatewayInvalidRequestError",dD=Symbol.for(`vercel.ai.gateway.error.${dj}`);var dq=class extends dP{constructor({message:e="Invalid request",statusCode:t=400,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[dD]=!0,this.name=dj,this.type="invalid_request_error"}static isInstance(e){return dP.hasMarker(e)&&dD in e}};let dU="GatewayRateLimitError",dL=Symbol.for(`vercel.ai.gateway.error.${dU}`);var dF=class extends dP{constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[dL]=!0,this.name=dU,this.type="rate_limit_exceeded"}static isInstance(e){return dP.hasMarker(e)&&dL in e}};let dZ="GatewayModelNotFoundError",dB=Symbol.for(`vercel.ai.gateway.error.${dZ}`),dV=s2(()=>s9(u2({modelId:uf()})));var dG=class extends dP{constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:a,generationId:o}={}){super({message:e,statusCode:t,cause:a,generationId:o}),this[dB]=!0,this.name=dZ,this.type="model_not_found",this.modelId=r}static isInstance(e){return dP.hasMarker(e)&&dB in e}};let dH="GatewayNotFoundError",dJ=Symbol.for(`vercel.ai.gateway.error.${dH}`);var dK=class extends dP{constructor({message:e="Resource not found",statusCode:t=404,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[dJ]=!0,this.name=dH,this.type="not_found"}static isInstance(e){return dP.hasMarker(e)&&dJ in e}};let dW="GatewayInternalServerError",dY=Symbol.for(`vercel.ai.gateway.error.${dW}`);var dX=class extends dP{constructor({message:e="Internal server error",statusCode:t=500,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[dY]=!0,this.name=dW,this.type="internal_server_error"}static isInstance(e){return dP.hasMarker(e)&&dY in e}};let dQ="GatewayFailedDependencyError",d0=Symbol.for(`vercel.ai.gateway.error.${dQ}`);var d1=class extends dP{constructor({message:e="Failed dependency",statusCode:t=424,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[d0]=!0,this.name=dQ,this.type="failed_dependency"}static isInstance(e){return dP.hasMarker(e)&&d0 in e}};let d2="GatewayForbiddenError",d4=Symbol.for(`vercel.ai.gateway.error.${d2}`),d6=s2(()=>s9(u2({ruleId:uf()})));var d9=class extends dP{constructor({message:e="Forbidden",statusCode:t=403,cause:r,generationId:a,ruleId:o}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[d4]=!0,this.name=d2,this.type="forbidden",this.ruleId=o}static isInstance(e){return dP.hasMarker(e)&&d4 in e}};let d3="GatewayResponseError",d5=Symbol.for(`vercel.ai.gateway.error.${d3}`);var d8=class extends dP{constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:a,cause:o,generationId:n,isRetryable:i}={}){super({message:e,statusCode:t,cause:o,generationId:n,isRetryable:i}),this[d5]=!0,this.name=d3,this.type="response_error",this.response=r,this.validationError=a}static isInstance(e){return dP.hasMarker(e)&&d5 in e}};async function d7({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:a,authMethod:o,isRetryable:n}){let i=await s5({value:e,schema:ce});if(!i.success){let o="object"==typeof e&&null!==e&&"generationId"in e?e.generationId:void 0;return new d8({message:`Invalid error response format: ${r}`,statusCode:t,response:e,validationError:i.error,cause:a,generationId:o,isRetryable:n})}let s=i.value,l=s.error.type,u=s.error.message,d=s.generationId??void 0;switch(l){case"authentication_error":return dz.createContextualError({apiKeyProvided:"api-key"===o,oidcTokenProvided:"oidc"===o,statusCode:t,cause:a,generationId:d});
89case"invalid_request_error":return new dq({message:u,statusCode:t,cause:a,generationId:d});case"rate_limit_exceeded":return new dF({message:u,statusCode:t,cause:a,generationId:d});case"model_not_found":{let e=await s5({value:s.error.param,schema:dV});return new dG({message:u,statusCode:t,modelId:e.success?e.value.modelId:void 0,cause:a,generationId:d})}case"not_found":return new dK({message:u,statusCode:t,cause:a,generationId:d});case"internal_server_error":default:return new dX({message:u,statusCode:t,cause:a,generationId:d});case"failed_dependency":return new d1({message:u,statusCode:t,cause:a,generationId:d});case"forbidden":{let e=await s5({value:s.error.param,schema:d6});return new d9({message:u,statusCode:t,cause:a,generationId:d,ruleId:e.success?e.value.ruleId:void 0})}}}let ce=s2(()=>s9(u2({error:u2({message:uf(),type:uf().nullish(),param:uW().nullish(),code:dO([uf(),uU()]).nullish()}),generationId:uf().nullish()}))),ct="GatewayTimeoutError",cr=Symbol.for(`vercel.ai.gateway.error.${ct}`);var ca=class e extends dP{constructor({message:e="Request timed out",statusCode:t=408,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[cr]=!0,this.name=ct,this.type="timeout_error"}static isInstance(e){return dP.hasMarker(e)&&cr in e}static createTimeoutError({originalMessage:t,statusCode:r=408,cause:a,generationId:o}){return new e({message:`Gateway request timed out: ${t} 90 91 This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:r,cause:a,generationId:o})}};function co(e){if(!(e instanceof Error))return!1;let t=e.code;return"string"==typeof t&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(t)}async function cn(e,t){return dP.isInstance(e)?e:co(e)?ca.createTimeoutError({originalMessage:e instanceof Error?e.message:"Unknown error",cause:e}):C.isInstance(e)?e.cause&&co(e.cause)?ca.createTimeoutError({originalMessage:e.message,cause:e}):await d7({response:function(e){if(void 0!==e.data)return e.data;if(null!=e.responseBody)try{return sE(e.responseBody)}catch{return e.responseBody}return{}}(e),statusCode:e.statusCode??500,defaultMessage:"Gateway request failed",cause:e,authMethod:t,isRetryable:!!e.isRetryable&&(null==e.statusCode||e.statusCode<400)||void 0}):await d7({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}let ci="ai-gateway-auth-method",cs="x-vercel-ai-gateway-team";async function cl(e){let t=await s5({value:e[ci],schema:cu});return t.success?t.value:void 0}let cu=s2(()=>s9(dO([dn("api-key"),dn("oidc")]))),cd=["embedding","decision","evaluation","image","language","realtime","reranking","speech","transcription","video"];var cc=class{constructor(e){this.config=e}async getAvailableModels(){try{let{value:e}=await sf({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await ll(this.config.headers):void 0,successfulResponseHandler:ly(cp),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),fetch:this.config.fetch});return e}catch(e){throw await cn(e)}}async getCredits(){try{let e=new URL(this.config.baseURL),t=this.config.headers?await ll(this.config.headers):void 0,r=new URL("/v1/credits",e.origin),a=function(e){if(e){for(let[t,r]of Object.entries(e))if("x-vercel-ai-gateway-team"===t.toLowerCase())return r?.trim()||void 0}}(t);a&&r.searchParams.set(a.startsWith("team_")?"teamId":"slug",a);let{value:o}=await sf({url:r.toString(),validateUrl:!1,headers:t,successfulResponseHandler:ly(ch),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),fetch:this.config.fetch});return o}catch(e){throw await cn(e)}}};let cp=s2(()=>s9(u2({models:dM(u2({id:uf(),name:uf(),description:uf().nullish(),pricing:u2({input:uf(),output:uf(),input_cache_read:uf().nullish(),input_cache_write:uf().nullish()}).transform(({input:e,output:t,input_cache_read:r,input_cache_write:a})=>({input:e,output:t,...r?{cachedInputTokens:r}:{},...a?{cacheCreationInputTokens:a}:{}})).nullish(),specification:u2({specificationVersion:dn("v4"),provider:uf(),modelId:uf()}),modelType:uf().nullish()})).transform(e=>e.filter(e=>null==e.modelType||cd.includes(e.modelType)))}))),ch=s2(()=>s9(u2({balance:uf(),total_used:uf()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t}))));var cf=class{constructor(e){this.config=e}
91async getSpendReport(e){try{let t=new URL(this.config.baseURL),r=new URLSearchParams;r.set("start_date",e.startDate),r.set("end_date",e.endDate),e.groupBy&&r.set("group_by",e.groupBy),e.datePart&&r.set("date_part",e.datePart),e.userId&&r.set("user_id",e.userId),e.model&&r.set("model",e.model),e.provider&&r.set("provider",e.provider),e.credentialType&&r.set("credential_type",e.credentialType),e.tags&&e.tags.length>0&&r.set("tags",e.tags.join(","));let{value:a}=await sf({url:`${t.origin}/v1/report?${r.toString()}`,validateUrl:!1,headers:this.config.headers?await ll(this.config.headers):void 0,successfulResponseHandler:ly(cm),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),fetch:this.config.fetch});return a}catch(e){throw await cn(e)}}};let cm=s2(()=>s9(u2({results:dM(u2({day:uf().optional(),hour:uf().optional(),user:uf().optional(),model:uf().optional(),tag:uf().optional(),provider:uf().optional(),credential_type:dA(["byok","system"]).optional(),total_cost:uU(),market_cost:uU().optional(),input_tokens:uU().optional(),output_tokens:uU().optional(),cached_input_tokens:uU().optional(),cache_creation_input_tokens:uU().optional(),reasoning_tokens:uU().optional(),request_count:uU().optional()}).transform(({credential_type:e,total_cost:t,market_cost:r,input_tokens:a,output_tokens:o,cached_input_tokens:n,cache_creation_input_tokens:i,reasoning_tokens:s,request_count:l,...u})=>({...u,...void 0!==e?{credentialType:e}:{},totalCost:t,...void 0!==r?{marketCost:r}:{},...void 0!==a?{inputTokens:a}:{},...void 0!==o?{outputTokens:o}:{},...void 0!==n?{cachedInputTokens:n}:{},...void 0!==i?{cacheCreationInputTokens:i}:{},...void 0!==s?{reasoningTokens:s}:{},...void 0!==l?{requestCount:l}:{}})))})));var cg=class{constructor(e){this.config=e}async getGenerationInfo(e){try{let t=new URL(this.config.baseURL),{value:r}=await sf({url:`${t.origin}/v1/generation?id=${encodeURIComponent(e.id)}`,validateUrl:!1,headers:this.config.headers?await ll(this.config.headers):void 0,successfulResponseHandler:ly(cy),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),fetch:this.config.fetch});return r}catch(e){throw await cn(e)}}};let cy=s2(()=>s9(u2({data:u2({id:uf(),total_cost:uU(),upstream_inference_cost:u
91U(),usage:uU(),created_at:uf(),model:uf(),is_byok:uB(),provider_name:uf(),streamed:uB(),finish_reason:uf(),latency:uU(),generation_time:uU(),native_tokens_prompt:uU(),native_tokens_completion:uU(),native_tokens_reasoning:uU(),native_tokens_cached:uU(),native_tokens_cache_creation:uU(),billable_web_search_calls:uU()}).transform(({total_cost:e,upstream_inference_cost:t,created_at:r,is_byok:a,provider_name:o,finish_reason:n,generation_time:i,native_tokens_prompt:s,native_tokens_completion:l,native_tokens_reasoning:u,native_tokens_cached:d,native_tokens_cache_creation:c,billable_web_search_calls:p,...h})=>({...h,totalCost:e,upstreamInferenceCost:t,createdAt:r,isByok:a,providerName:o,finishReason:n,generationTime:i,promptTokens:s,completionTokens:l,reasoningTokens:u,cachedTokens:d,cacheCreationTokens:c,billableWebSearchCalls:p}))}).transform(({data:e})=>e)));var cv=class{constructor(e){this.config=e,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]},this.provider=`${e.provider}.batch`}async doStartBatch({requests:e,providerOptions:t,headers:r,abortSignal:a,webhookUrl:o}){var n=e;for(let e of n){let t=e.type;if("text"!==t)throw new eO({functionality:`batch request type: ${t}`,message:`The AI Gateway Batch API does not support batch requests with type "${t}".`})}let i=function(e){let t=e[0]?.modelId;if(null==t)throw new L({argument:"requests",message:"The AI Gateway Batch API requires at least one request."});for(let r of e)if(r.modelId!==t)throw new L({argument:"requests",message:`The AI Gateway Batch API requires all requests in a batch to use the same model. Found "${t}" and "${r.modelId}".`});return t}(e),s=this.config.headers?await ll(this.config.headers):void 0,l=function(e){let t=e?.gateway;if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t.idempotencyKey;return"string"==typeof r&&r.length>0?r:void 0}(t),u=function(e){let t=e?.gateway;if(null==t||"object"!=typeof t||Array.isArray(t)||!("idempotencyKey"in t))return e;let{idempotencyKey:r,...a}=t,o={...e};if(0===Object.keys(a).length?delete o.gateway:o.gateway=a,0!==Object.keys(o).length)return o}(t);try{let{value:t}=await la({url:this.getBatchUrl("start"),headers:ih(s,r,{"ai-model-id":i},await ll(this.config.o11yHeaders),null!=l?{"idempotency-key":l}:void 0),body:{...null!=o&&{callbackUrl:o},requests:e.map(e=>({id:e.id,type:e.type,modelId:e.modelId,options:function(e){for(let t of e.prompt)if(Array.isArray(t.content)){for(let e of t.content)if("file"===e.type||"reasoning-file"===e.type)e.data=cb(e.data);else if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&(t.data=cb(t.data))}return e}(e.options)})),...null!=u&&{providerOptions:u}},successfulResponseHandler:ly(cC),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...a&&{abortSignal:a},fetch:this.config.fetch});return{batchId:t.batchId,...cx(t),warnings:t.warnings??[]}}catch(e){if(cw(e))throw e;throw await cn(e,await cl(s??{}))}}async doGetBatchStatus({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await ll(this.config.headers):void 0;try{let{value:o}=await la({url:this.getBatchUrl("status"),headers:ih(a,t,await ll(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:ly(cM),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...r&&{abortSignal:r},fetch:this.config.fetch});return cx(o)}catch(e){if(cw(e))throw e;throw await cn(e,await cl(a??{}))}}async doGetBatchResults({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await ll(this.config.headers):void 0;try{let{value:o}=await la({url:this.getBatchUrl("results"),headers:ih(a,t,await ll(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:lv(cI,{maxLineBytes:this.config.maxLineBytes}),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...r&&{abortSignal:r},fetch:this.config.fetch});return ix(c_(o))}catch(e){if(cw(e))throw e;throw await cn(e,await cl(a??{}))}}async doCancelBatch({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await ll(this.config.headers):void 0;try{let{value:o}=await la({url:this.getBatchUrl("cancel"),headers:ih(a,t,await ll(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:ly(cM),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}
91),...r&&{abortSignal:r},fetch:this.config.fetch});return{...null!=o.providerMetadata&&{providerMetadata:o.providerMetadata}}}catch(e){if(cw(e))throw e;throw await cn(e,await cl(a??{}))}}getBatchUrl(e){return`${this.config.baseURL}/batch/${e}`}};function cb(e){if("data"===e.type){let t=e.data;if(t instanceof Uint8Array)return{...e,data:y.Buffer.from(t).toString("base64")}}return e}function cw(e){return!!(e instanceof Error||e instanceof DOMException)&&("AbortError"===e.name||"TimeoutError"===e.name)}function cx(e){let t=s_({total:e.requestCounts?.total,pending:e.requestCounts?.pending,completed:e.requestCounts?.completed,failed:e.requestCounts?.failed});return{status:e.status,...null!=e.rawStatus&&{rawStatus:e.rawStatus},...null!=t&&{requestCounts:t},...null!=e.error&&{error:{message:e.error.message,...null!=e.error.type&&{type:e.error.type},...null!=e.error.code&&{code:e.error.code},...null!=e.error.statusCode&&{statusCode:e.error.statusCode}}},...null!=e.createdAt&&{createdAt:e.createdAt},...null!=e.expiresAt&&{expiresAt:e.expiresAt},...null!=e.providerMetadata&&{providerMetadata:e.providerMetadata}}}async function*c_(e){for await(let t of e){if("succeeded"===t.status){let e=t.result?.response;void 0!==e&&"string"==typeof e.timestamp&&(e.timestamp=new Date(e.timestamp))}yield t}}let cI=u2({type:dn("text"),id:uf(),status:dA(["cancelled","expired","failed","succeeded"])}).catchall(uW()),ck=u2({message:uf(),type:uf().nullish(),code:uf().nullish(),statusCode:uU().nullish()}),cS=u2({total:uU().nullish(),pending:uU().nullish(),completed:uU().nullish(),failed:uU().nullish()}),cT=de(uf(),de(uf(),uW())),cE=u2({status:dA(["completed","failed","pending"]),rawStatus:uf().nullish(),requestCounts:cS.nullish(),error:ck.nullish(),createdAt:uf().nullish(),expiresAt:uf().nullish(),providerMetadata:cT.nullish()}),cC=cE.extend({batchId:uf(),warnings:dM(u2({requestId:uf().nullish(),warning:uW()}).catchall(uW())).nullish()}),cM=cE;var cA=class e{static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(e){let{abortSignal:t,...r}=e;return{args:this.maybeEncodeFileParts(r),warnings:[]}}async doGenerate(e){let{args:t,warnings:r}=await this.getArgs(e),{abortSignal:a}=e,o=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:n,value:i,rawValue:s}=await la({url:this.getUrl(),headers:ih(o,e.headers,this.getModelConfigHeaders(this.modelId,!1),await ll(this.config.o11yHeaders)),body:t,successfulResponseHandler:ly(uJ()),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...a&&{abortSignal:a},fetch:this.config.fetch});return{...i,request:{body:t},response:{headers:n,body:s},warnings:[...i.warnings??[],...r]}}catch(e){throw await cn(e,await cl(o??{}))}}async doStream(e){let{args:t,warnings:r}=await this.getArgs(e),{abortSignal:a}=e,o=this.config.headers?await ll(this.config.headers):void 0;try{let{value:n,responseHeaders:i}=await la({url:this.getUrl(),headers:ih(o,e.headers,this.getModelConfigHeaders(this.modelId,!0),await ll(this.config.o11yHeaders)),body:t,successfulResponseHandler:lg(uJ()),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...a&&{abortSignal:a},fetch:this.config.fetch});return{stream:n.pipeThrough(new TransformStream({start(e){r.length>0&&e.enqueue({type:"stream-start",warnings:r})},transform(t,r){if(t.success){let a=t.value;("raw"!==a.type||e.includeRawChunks)&&("response-metadata"===a.type&&a.timestamp&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp)),r.enqueue(a))}else r.error(t.error)}})),request:{body:t},response:{headers:i}}}catch(e){throw await cn(e,await cl(o??{}))}}maybeEncodeFileParts(e){for(let t of e.prompt)if(Array.isArray(t.content)){for(let e of t.content)if("file"===e.type||"reasoning-file"===e.type)e.data=cO(e.data);else if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&(t.data=cO(t.data))}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"4","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}};function cO(e){if("data"===e.type){let t=e.data;if(t instanceof Uint8Array)return{...e,data:y.Buffer.from(t).toString("base64")}}return e}var cR=class e{static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:a}){let o=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:n,value:i,rawValue:s}=await la({url:this.getUrl(),headers:ih(o,t??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{values:e,...a?{providerOptions:a}:{}},successfulResponseHandler:ly(c$),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}
91),...r&&{abortSignal:r},fetch:this.config.fetch});return{embeddings:i.embeddings,usage:i.usage??void 0,providerMetadata:i.providerMetadata,response:{headers:n,body:s},warnings:i.warnings??[]}}catch(e){throw await cn(e,await cl(o??{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}};let cP=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),c$=s2(()=>s9(u2({embeddings:dM(dM(uU())),usage:u2({tokens:uU()}).nullish(),warnings:dM(cP).optional(),providerMetadata:de(uf(),de(uf(),uW())).optional()})));var cN=class e{static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:r,aspectRatio:a,seed:o,files:n,mask:i,providerOptions:s,headers:l,abortSignal:u}){let d=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:c,value:p}=await la({url:this.getUrl(),headers:ih(d,l??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{prompt:e,n:t,...r&&{size:r},...a&&{aspectRatio:a},...o&&{seed:o},...s&&{providerOptions:s},...n&&{files:n.map(e=>cz(e))},...i&&{mask:cz(i)}},successfulResponseHandler:ly(cU),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...u&&{abortSignal:u},fetch:this.config.fetch});return{images:p.images,...null!=p.isRetryable&&{isRetryable:p.isRetryable},warnings:p.warnings??[],providerMetadata:p.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:c},...null!=p.usage&&{usage:{inputTokens:p.usage.inputTokens??void 0,outputTokens:p.usage.outputTokens??void 0,totalTokens:p.usage.totalTokens??void 0}}}}catch(e){throw await cn(e,await cl(d??{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function cz(e){return"file"===e.type&&e.data instanceof Uint8Array?{...e,data:iS(e.data)}:e}let cj=u2({images:dM(uW()).optional()}).catchall(uW()),cD=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),cq=u2({inputTokens:uU().nullish(),outputTokens:uU().nullish(),totalTokens:uU().nullish()}),cU=u2({images:dM(uf()),isRetryable:uB().optional(),warnings:dM(cD).optional(),providerMetadata:de(uf(),cj).optional(),usage:cq.optional()});var cL=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(e){let{headers:t,abortSignal:r}=e,a=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:o,value:n}=await la({url:this.getUrl(),headers:ih(a,t??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(e),successfulResponseHandler:async({response:e,url:t,requestBodyValues:r})=>{if(null==e.body)throw new C({message:"SSE response body is empty",url:t,requestBodyValues:r,statusCode:e.status});let a=le({stream:e.body,schema:cG}).getReader(),{done:o,value:n}=await a.read();if(a.releaseLock(),o||!n)throw new C({message:"SSE stream ended without a data event",url:t,requestBodyValues:r,statusCode:e.status});if(!n.success)throw new C({message:"Failed to parse video SSE event",cause:n.error,url:t,requestBodyValues:r,statusCode:e.status});let i=n.value;if("error"===i.type)throw new C({message:i.message,statusCode:i.statusCode,url:t,requestBodyValues:r,responseHeaders:Object.fromEntries([...e.headers]),responseBody:JSON.stringify(i),data:{error:{message:i.message,type:i.errorType,param:i.param}}});return{value:{videos:i.videos,warnings:i.warnings,providerMetadata:i.providerMetadata},responseHeaders:Object.fromEntries([...e.headers])}},failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}
91),...r&&{abortSignal:r},fetch:this.config.fetch});return{videos:n.videos,warnings:n.warnings??[],providerMetadata:n.providerMetadata??void 0,response:{timestamp:new Date,modelId:this.modelId,headers:o}}}catch(e){throw await cn(e,await cl(a??{}))}}async handleWebhookOption({webhook:e}){let{url:t,received:r}=await e();return{webhookUrl:t,received:r}}async doStart(e){let{headers:t,abortSignal:r,webhookUrl:a}=e,o=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:n,value:i}=await la({url:this.getStartUrl(),headers:ih(o,t??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{...this.buildRequestBody(e),...a&&{callbackUrl:a}},successfulResponseHandler:ly(cH),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...r&&{abortSignal:r},fetch:this.config.fetch});return{operation:i.operation,warnings:i.warnings??[],providerMetadata:i.providerMetadata??void 0,response:{timestamp:new Date,modelId:this.modelId,headers:n}}}catch(e){throw await cn(e,await cl(o??{}))}}async doStatus({operation:e,abortSignal:t,headers:r}){let a=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:o,value:n}=await la({url:this.getStatusUrl(),headers:ih(a,r??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{operation:e},successfulResponseHandler:ly(cJ),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...t&&{abortSignal:t},fetch:this.config.fetch}),i={timestamp:new Date,modelId:this.modelId,headers:o};if("completed"===n.status)return{status:"completed",videos:n.videos,warnings:n.warnings??[],providerMetadata:n.providerMetadata??void 0,response:i};if("error"===n.status)return{status:"error",error:n.error,providerMetadata:n.providerMetadata??void 0,response:i};if("cancelled"===n.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:n.providerMetadata??void 0,response:i};return{status:"pending",warnings:n.warnings??[],providerMetadata:n.providerMetadata??void 0,response:i}}catch(e){throw await cn(e,await cl(a??{}))}}buildRequestBody({prompt:e,n:t,aspectRatio:r,resolution:a,duration:o,fps:n,seed:i,generateAudio:s,image:l,frameImages:u,inputReferences:d,providerOptions:c}){return{prompt:e,n:t,...r&&{aspectRatio:r},...a&&{resolution:a},...o&&{duration:o},...n&&{fps:n},...i&&{seed:i},...void 0!==s&&{generateAudio:s},...c&&{providerOptions:c},...l&&{image:cF(l)},...u&&{frameImages:u.map(e=>({...e,image:cF(e.image)}))},...d&&{inputReferences:d.map(e=>cF(e))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function cF(e){return"file"===e.type&&e.data instanceof Uint8Array?{...e,data:iS(e.data)}:e}let cZ=u2({videos:dM(uW()).optional()}).catchall(uW()),cB=dO([u2({type:dn("url"),url:uf(),mediaType:uf()}),u2({type:dn("base64"),data:uf(),mediaType:uf()})]),cV=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),cG=u5("type",[u2({type:dn("result"),videos:dM(cB),warnings:dM(cV).optional(),providerMetadata:de(uf(),cZ).optional()}),u2({type:dn("error"),message:uf(),errorType:uf(),statusCode:uU(),param:uW().nullable()})]),cH=u2({operation:uW(),warnings:dM(cV).nullish(),providerMetadata:de(uf(),cZ).nullish()}),cJ=u5("status",[u2({status:dn("pending"),warnings:dM(cV).nullish(),providerMetadata:de(uf(),cZ).nullish()}),u2({status:dn("completed"),videos:dM(cB),warnings:dM(cV).nullish(),providerMetadata:de(uf(),cZ).nullish()}),u2({status:dn("error"),error:uf(),providerMetadata:de(uf(),cZ).nullish()}),u2({status:dn("cancelled"),providerMetadata:de(uf(),cZ).nullish()})]),cK=s2(()=>s9(u2({models:c1.optional()}).catchall(uW()))),cW=uU().finite().min(0).max(1),cY=uf().min(1).max(256),cX=dO([u2({question:cY.optional(),confidenceBelow:cW}).strict(),u2({question:cY.optional(),probabilityBetween:dM(cW).length(2).refine(([e,t])=>e<=t,{message:"probabilityBetween minimum must be less than or equal to maximum"})}).strict()]),cQ=dO([u2({any:uW()}),u2({all:uW()}),u2({atLeast:uW()})]).superRefine((e,t)=>
91{t.addIssue({code:"custom",message:"conditions can be nested at most 5 levels deep"})}),c0=u2({model:uf().min(1),when:function e(t){if(5===t)return dO([cX,cQ]);let r=dM(e(t+1)).min(1).max(20);return dO([cX,u2({any:r}).strict(),u2({all:r}).strict(),u2({atLeast:u2({count:uU().int().min(1),conditions:r}).strict().refine(({count:e,conditions:t})=>e<=t.length,{message:"atLeast count cannot exceed the number of conditions",path:["count"]})}).strict()])}(1)}).strict(),c1=dM(dO([uf(),c0])).superRefine((e,t)=>{let r=e.flatMap((e,t)=>"string"==typeof e?[]:[t]);r.length>1&&t.addIssue({code:"custom",message:"models supports at most one conditional decision fallback"}),void 0!==r[0]&&0!==r[0]&&t.addIssue({code:"custom",message:"a conditional decision fallback must be the first models entry",path:[r[0]]})});var c2=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.supportedQuestionTypes=["choice","score","boolean"]}get provider(){return this.config.provider}doEvaluate(e){return this.doDecide(e)}async doDecide({state:e,questions:t,headers:r,abortSignal:a,providerOptions:o}){let n=e.map(e=>{if("file"===e.type)throw new eO({functionality:"Gateway decision file input"});return"text"===e.type?e.text:e.value}),i=1===n.length&&("string"==typeof n[0]||"object"==typeof n[0]&&null!==n[0])?n[0]:n,s=await lt({provider:"gateway",providerOptions:o,schema:cK}),l=null==s?o:{...o,gateway:s},u=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:e,value:o,rawValue:n}=await la({url:this.getUrl(),headers:ih(u,r??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{state:i,questions:t,...l?{providerOptions:l}:{}},successfulResponseHandler:ly(c9),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...a&&{abortSignal:a},fetch:this.config.fetch});return{answers:o.answers,...o.rounding?{rounding:o.rounding}:{},...o.usage?{usage:o.usage}:{},warnings:o.warnings??[],providerMetadata:o.providerMetadata,response:{modelId:o.model??this.modelId,headers:e,body:n}}}catch(e){throw await cn(e,await cl(u??{}))}}getUrl(){return`${this.config.baseURL}/decision-model`}getModelConfigHeaders(){return{"ai-decision-model-specification-version":"4","ai-model-id":this.modelId}}};let c4=u5("type",[u2({type:dn("choice"),choice:uf(),probabilities:de(uf(),uU()).optional()}),u2({type:dn("score"),score:uU(),probabilities:de(uf(),uU()).optional()}),u2({type:dn("boolean"),probability:uU()}),u2({type:dn("refusal")})]),c6=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),c9=s2(()=>s9(u2({answers:de(uf(),c4),model:uf().optional(),rounding:u2({probabilityDecimals:uU().optional(),scoreDecimals:uU().optional()}).optional(),usage:u2({inputTokens:uU().optional(),outputTokens:uU().optional()}).optional(),warnings:dM(c6).optional(),providerMetadata:de(uf(),de(uf(),uW())).optional()})));var c3=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:e,query:t,topN:r,headers:a,abortSignal:o,providerOptions:n}){let i=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:s,value:l,rawValue:u}=await la({url:this.getUrl(),headers:ih(i,a??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{documents:e,query:t,...null!=r?{topN:r}:{},...n?{providerOptions:n}:{}},successfulResponseHandler:ly(c8),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...o&&{abortSignal:o},fetch:this.config.fetch});return{ranking:l.ranking,providerMetadata:l.providerMetadata,response:{headers:s,body:u},warnings:l.warnings??[]}}catch(e){throw await cn(e,await cl(i??{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}};let c5=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),c8=s2(()=>s9(u2({ranking:dM(u2({index:uU(),relevanceScore:uU()})),warnings:dM(c5).optional(),providerMetadata:de(uf(),de(uf(),uW())).optional()})));var c7=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:e,voice:t,outputFormat:r,instructions:a,speed:o,language:n,providerOptions:i,headers:s,abortSignal:l}){let u=this.config.headers?await ll(this.config.headers):void 0;try{let{responseHeaders:d,value:c,rawValue:p}=await la({url:this.getUrl(),headers:ih(u,s??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{text:e,...t&&{voice:t},...r&&{outputFormat:r},...a&&{instructions:a},...null!=o&&{speed:o},...n&&{language:n},...i&&{providerOptions:i}},successfulResponseHandler:ly(pr),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}
91),...l&&{abortSignal:l},fetch:this.config.fetch});return{audio:c.audio,warnings:c.warnings??[],...null!=c.usage&&{usage:c.usage},providerMetadata:c.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d,body:p}}}catch(e){throw await cn(e,await cl(u??{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}};let pe=u2({}).catchall(uW()),pt=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),pr=u2({audio:uf(),warnings:dM(pt).optional(),usage:de(uf(),dS()).optional(),providerMetadata:de(uf(),pe).optional()});var pa=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:e,mediaType:t,providerOptions:r,headers:a,abortSignal:o}){let n=this.config.headers?await ll(this.config.headers):void 0;try{var i,s;let{responseHeaders:l,value:u,rawValue:d}=await la({url:this.getUrl(),headers:ih(n,a??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),body:{audio:e instanceof Uint8Array?iS(e):e,mediaType:t,...r&&{providerOptions:r}},successfulResponseHandler:ly(ps),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),...o&&{abortSignal:o},fetch:this.config.fetch}),c=[...u.warnings??[]];return((i=this.modelId).startsWith("spacexai/")||i.startsWith("xai/"))&&(s=r,s?.xai?.diarize===!0||s?.spacexai?.diarize===!0)&&!function e(t){return Array.isArray(t)?t.some(e):null!=t&&"object"==typeof t&&Object.entries(t).some(([t,r])=>"speaker"===t&&null!=r||e(r))}(d)&&c.push({type:"unsupported",feature:"providerOptions.xai.diarize",details:"AI Gateway does not currently expose xAI speaker diarization metadata."}),{text:u.text,segments:u.segments??[],language:u.language??void 0,durationInSeconds:u.durationInSeconds??void 0,warnings:c,...null!=u.usage&&{usage:u.usage},providerMetadata:u.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:l,body:d}}}catch(e){throw await cn(e,await cl(n??{}))}}async doStream(e){let t,r,a,o=this.config._internal?.currentDate?.()??new Date,n=ih(await ll(this.config.headers??{}),e.headers??{},this.getModelConfigHeaders(),await ll(this.config.o11yHeaders)),i=await cl(n),s={type:lC,inputAudioFormat:e.inputAudioFormat,...null!=e.providerOptions&&{providerOptions:e.providerOptions},...null!=e.includeRawChunks&&{includeRawChunks:e.includeRawChunks}};return{stream:function({webSocket:e,url:t,protocols:r,headers:a,startFrame:o,audio:n,abortSignal:i,authMethod:s}){let l=!1,u=()=>{};return new ReadableStream({start:d=>{let c,p,h,f=!1,m=!1;u=e=>{null!=c?c.cancel().catch(()=>{}):n.cancel().catch(()=>{}),h?.close(e)};let g=e=>{l||(l=!0,u(),pl(d,e,s))},y=async e=>{let t=n.getReader();c=t;try{for(;;){let{done:r,value:a}=await t.read();if(r||l)break;let o="string"==typeof a?ik(a):a;for(let t=0;t<o.length&&!l;t+=65536)e.send(o.subarray(t,t+65536)),await ib(e)}}finally{t.releaseLock(),c===t&&(c=void 0)}l||m||e.send(JSON.stringify({type:lM}))};h=iw({url:t,protocols:r,headers:a,webSocket:e,abortSignal:i,onAbort:e=>{l||(l=!0,u(),d.error(e))},onProcessingError:g,onOpen:e=>{e.send(JSON.stringify(o)),y(e).catch(g)},onMessageText:e=>{if(l)return;let t=lA(e);
91if(null!=t){if("finish"===t.type){l=!0,d.enqueue(t),d.close(),u(1e3);return}"error"===t.type&&(f=!0,p=t.error,m=!0,null!=c?(c.cancel().catch(()=>{}),c=void 0):n.cancel().catch(()=>{})),d.enqueue(t)}},onSocketError:()=>{g(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(f){if(l)return;pd(p,s).then(g);return}g(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{l||(l=!0,u())}})}({webSocket:this.config.webSocket,url:po(this.config.baseURL,this.modelId),protocols:(r=(t=iU(n)).authorization,null==(a=r?.startsWith("Bearer ")?r.slice(7):void 0)?[dE]:dC(dE,a,{teamIdOrSlug:t[cs]})),headers:n,startFrame:s,audio:e.audio,abortSignal:e.abortSignal,authMethod:i}),request:{body:s},response:{timestamp:o,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function po(e,t){let r=new URL(`${e.replace(/^http/,"ws")}/transcription-model`);return r.searchParams.set("ai-model-id",t),r.toString()}let pn=u2({}).catchall(uW()),pi=u5("type",[u2({type:dn("unsupported"),feature:uf(),details:uf().optional()}),u2({type:dn("compatibility"),feature:uf(),details:uf().optional()}),u2({type:dn("deprecated"),setting:uf(),message:uf()}),u2({type:dn("other"),message:uf()})]),ps=u2({text:uf(),segments:dM(u2({text:uf(),startSecond:uU(),endSecond:uU()})).optional(),language:uf().nullish(),durationInSeconds:uU().nullish(),warnings:dM(pi).optional(),usage:de(uf(),dS()).optional(),providerMetadata:de(uf(),pn).optional()});async function pl(e,t,r){e.error(await cn(t,r))}let pu={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function pd(e,t){return"object"==typeof e&&null!=e&&"message"in e&&"string"==typeof e.message&&"type"in e&&"string"==typeof e.type&&e.type in pu?d7({response:{error:{message:e.message,type:e.type}},statusCode:pu[e.type],authMethod:t}):Error(`AI Gateway transcription stream failed: ${null!=e&&"object"==typeof e&&"message"in e&&"string"==typeof e.message?e.message:j(e)}`)}var pc=class{constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){var t,r;let a,o=await this.config.createClientSecret({modelId:this.modelId,...e?.expiresAfterSeconds!=null&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:o.token,url:(t=this.config.baseURL,r=this.modelId,(a=new URL(`${t.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",r),a.toString()),...null!=o.expiresAt&&{expiresAt:o.expiresAt}}}getWebSocketConfig(e){return{url:e.url,protocols:dC("ai-gateway-realtime.v1",e.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(e){return e}serializeClientEvent(e){return e}buildSessionConfig(e){return e}};let pp=de(uf(),uW()),ph=ls({id:"gateway.browserbase_fetch",inputSchema:s2(()=>s9(u2({url:uf().url().describe("URL of the page to fetch."),allow_redirects:uB().optional().describe("Whether to follow HTTP redirects (default: false)."),allow_insecure_ssl:uB().optional().describe("Whether to bypass TLS certificate verification (default: false). Only use for trusted hosts."),proxies:uB().optional().describe("Whether to route the request through Browserbase proxies (default: false)."),format:dA(["raw","json","markdown"]).optional().describe("Output format. raw returns the response body unchanged, markdown returns page content as Markdown, and json returns structured content using schema."),schema:pp.optional().describe("JSON Schema for structured extraction. Only use with format set to json.")}
vendor: 7,775 bytes, line 91
91))),outputSchema:s2(()=>s9(dO([u2({id:uf(),content:dO([uf(),pp]),contentType:uf(),encoding:uf(),headers:de(uf(),uf()),statusCode:uU()}),u2({error:dA(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown"]),statusCode:uU().optional(),message:uf()})])))}),pf=ls({id:"gateway.browserbase_search",inputSchema:s2(()=>s9(u2({query:uf().min(1).max(200).describe("Web search query. Must be between 1 and 200 characters."),num_results:uU().int().min(1).max(25).optional().describe("Maximum number of results to return (1-25, default: 10).")}))),outputSchema:s2(()=>s9(dO([u2({query:uf(),requestId:uf(),results:dM(u2({id:uf(),title:uf(),url:uf(),author:uf().optional(),favicon:uf().optional(),image:uf().optional(),publishedDate:uf().optional()}))}),u2({error:dA(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown"]),statusCode:uU().optional(),message:uf()})])))}),pm=ls({id:"gateway.exa_search",inputSchema:s2(()=>s9(u2({query:uf().describe("Natural-language web search query. This is required."),type:dA(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:uU().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:dA(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:uf().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:dM(uf()).optional().describe("Only return results from these domains."),exclude_domains:dM(uf()).optional().describe("Exclude results from these domains."),start_published_date:uf().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:uf().optional().describe("Only return links published before this ISO 8601 date."),contents:u2({text:dO([uB(),u2({max_characters:uU().optional(),include_html_tags:uB().optional(),verbosity:dA(["compact","standard","full"]).optional(),include_sections:dM(dA(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:dM(dA(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:dO([uB(),u2({query:uf().optional(),max_characters:uU().optional()})]).optional(),max_age_hours:uU().optional(),livecrawl_timeout:uU().optional(),subpages:uU().optional(),subpage_target:dO([uf(),dM(uf())]).optional(),extras:u2({links:uU().optional(),image_links:uU().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:s2(()=>s9(dO([u2({requestId:uf(),searchType:uf().optional(),resolvedSearchType:uf().optional(),results:dM(u2({title:uf(),url:uf(),id:uf(),publishedDate:uf().nullable().optional(),author:uf().nullable().optional(),image:uf().nullable().optional(),favicon:uf().nullable().optional(),text:uf().optional(),highlights:dM(uf()).optional(),highlightScores:dM(uU()).optional(),summary:uf().optional(),subpages:dM(uJ()).optional(),extras:u2({links:dM(uf()).optional(),imageLinks:dM(uf()).optional()}).optional()})),costDollars:u2({total:uU().optional(),search:de(uf(),uU()).optional()}).optional()}),u2({error:dA(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:uU().optional(),message:uf()})])))}),pg=ls({id:"gateway.parallel_search",inputSchema:s2(()=>s9(u2({objective:uf().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:dM(uf()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:dA(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:uU().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:u2({include_domains:dM(uf()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:dM(uf()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:uf().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:u2({max_chars_per_result:uU().optional().describe("Maximum characters per result."),max_chars_total:uU().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:u2({max_age_seconds:uU().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:s2(()=>s9(dO([u2({searchId:uf(),results:dM(u2({url:uf(),title:uf(),excerpt:uf(),publishDate:uf().nullable().optional(),relevanceScore:uU().optional()}))}),u2({error:dA(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:uU().optional(),message:uf()})])))}),py=ls({id:"gateway.perplexity_search",inputSchema:s2(()=>s9(u2({query:dO([uf(),dM(uf())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:uU().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:uU().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:uU().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:uf().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:dM(uf()).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:dM(uf()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:uf().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:uf().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:uf().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:uf().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:dA(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}
91))),outputSchema:s2(()=>s9(dO([u2({results:dM(u2({title:uf(),url:uf(),snippet:uf(),date:uf().optional(),lastUpdated:uf().optional()})),id:uf()}),u2({error:dA(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:uU().optional(),message:uf()})])))}),pv=u2({count:uU().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:uB().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:dA(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:dA(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:uU().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:dM(uf()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:uB().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),pb=u2({count:uU().optional().describe("Maximum number of web results to return (1-20)."),include_contents:uB().optional().describe("Inline extracted web page text. This can add a data charge."),category:dA(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:dM(uf()).optional().describe("Only return results from these bare domains."),exclude_domains:dM(uf()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:uU().optional().describe("Maximum characters in each web-result snippet."),highlights:uB().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:uU().optional().describe("Maximum extracted characters per web page when including contents."),published_after:uf().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:uf().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),pw=s2(()=>s9(u2({query:uf().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:dA(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:u2({data:pv.optional(),web:pb.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:u2({latitude:uU().describe("Latitude between -90 and 90."),longitude:uU().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:uf().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:uf().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:uf().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:u2({image_dark_mode:uB().optional().describe("Render card preview images in dark mode."),force_refresh:uB().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:uU().optional().describe("Maximum related search suggestions to include (1-20).")}))),px=dO([uB(),uU(),uf()]).nullable(),p_=u2({content_format:dA(["card_json","csv","json_compact","json_records"]).nullish(),cost:uU().optional(),data:uf().nullish(),records:dM(de(uf(),px)).nullish(),dataset:u2({columns:dM(u2({name:uf(),type:dA(["boolean","date","datetime","number","string"]),unit:uf().nullish()})),rows:dM(dM(px)),total_rows:uU(),truncated:uB(),ref:uf(),sources:dM(u2({name:uf(),index:dA(["data","web"]).optional()})),provenance:dA(["query","web_extraction"]).optional()}).nullish(),card_data:u2({}).passthrough().nullish(),card_data_schema:u2({}).passthrough().nullish(),url:uf().nullish(),expires_at:uf().nullish(),total_rows:uU().nullish(),truncated:uB().optional(),export_pricing:u2({baseline_usd:uU(),free_rows:uU(),max_rows_ceiling:uU(),row_cpm_usd:uU()}).nullish(),manifest:dM(u2({dtype:dA(["boolean","date","datetime","number","string"]).nullish(),entity:uf().nullish(),metric:uf().nullish(),name:uf().nullish(),unit:uf().nullish()})).nullish()}).passthrough(),pI=u2({card_id:uf().nullish(),title:uf().nullish(),description:uf().nullish(),semantic_description:uf().nullish(),webpage_url:uf().nullish(),image_url:uf().nullish(),embed_url:uf().nullish(),sources:dM(u2({source_name:uf().nullish(),source_description:uf().nullish(),source_index:dA(["data","web"]),source_text:uf().nullish(),url:uf().nullish()})).nullish(),methodologies:dM(u2({methodology_name:uf().nullable(),methodology_description:uf().nullable()})).nullish(),source_indexes:dM(dA(["data","web"])).nullish(),card_type:uf().nullish(),relevance:dA(["High","Low","Medium"]).nullish(),content:p_.nullish(),exportable:uB().optional(),nodes:dM(u2({id:uf(),type:dA(["entity","metric"]),name:uf(),description:uf().nullish()})).nullish(),metric_definitions:dM(u2({name:uf(),definition:uf()})).nullish(),data_freshness:u2({coverage_end:uf().nullish(),data_as_of:uf().nullish(),last_updated:uf().nullish()}).nullish()}).passthrough(),pk=u2({title:uf(),url:uf(),snippet:uf().nullish(),source_name:uf().nullish(),publish_date:uf().nullish(),content:p_.nullish()}).passthrough(),pS=ls({id:"gateway.tako_search",inputSchema:pw,outputSc
91hema:s2(()=>s9(dO([u2({request_id:uf(),cards:dM(pI).optional(),web_results:dM(pk).optional(),usage:u2({total_cost_usd:uU(),compute:u2({cost_usd:uU()}).nullish(),data:u2({cost_usd:uU(),datasets:uU()}).nullish()}).nullish(),related:dM(u2({}).passthrough()).nullish()}).passthrough(),u2({error:dA(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:uU().optional(),message:uf()})])))}),pT={browserbaseFetch:(e={})=>ph(e),browserbaseSearch:(e={})=>pf(e),exaSearch:(e={})=>pm(e),parallelSearch:(e={})=>pg(e),perplexitySearch:(e={})=>py(e),takoSearch:(e={})=>pS(e)};async function pE(){return(0,dT.getContext)().headers?.["x-vercel-id"]}let pC=u2({token:uf(),expiresAt:uU().nullish()}),pM=function(e={}){let t=null,r=null,a=e.metadataCacheRefreshMillis??3e5,o=0,n=lz(e.baseURL)??"https://ai-gateway.vercel.sh/v4/ai",i=t=>iL({Authorization:`Bearer ${t.token}`,"ai-gateway-protocol-version":"0.0.1",[ci]:t.authMethod,...null!=e.teamIdOrSlug?{[cs]:e.teamIdOrSlug}:{},...e.headers},"ai-sdk-gateway/4.0.108"),s=async()=>{try{return i(await pA(e))}catch(e){throw dz.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},l=async()=>{try{return await pA(e)}catch(e){throw dz.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},u=async t=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let r=i(await l()),a=new URL("/v1/realtime/client-secrets",n).toString();try{let{value:o}=await la({url:a,headers:r,body:{model:t.modelId,...null!=t.routeKind&&{routeKind:t.routeKind},...null!=t.expiresAfterSeconds&&{expiresIn:t.expiresAfterSeconds}},successfulResponseHandler:ly(pC),failedResponseHandler:lm({errorSchema:uJ(),errorToMessage:e=>j(e)??"unknown error"}),fetch:e.fetch});return{token:o.token,...null!=o.expiresAt&&{expiresAt:o.expiresAt}}}catch(e){throw await cn(e,await cl(r))}},d=()=>{let e=sw({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),t=sw({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),r=sw({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),a=sw({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let o=await pE();return{...e&&{"ai-o11y-deployment-id":e},...t&&{"ai-o11y-environment":t},...r&&{"ai-o11y-region":r},...o&&{"ai-o11y-request-id":o},...a&&{"ai-o11y-project-id":a}}}},c=t=>new cA(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()}),p=async()=>{let i=e._internal?.currentDate?.().getTime()??Date.now();return(!t||i-o>a)&&(o=i,t=new cc({baseURL:n,headers:s,fetch:e.fetch}).getAvailableModels().then(e=>(r=e,e)).catch(async e=>{throw await cn(e,await cl(await s()))})),r?Promise.resolve(r):t},h=async()=>new cc({baseURL:n,headers:s,fetch:e.fetch}).getCredits().catch(async e=>{throw await cn(e,await cl(await s()))}),f=async t=>new cf({baseURL:n,headers:s,fetch:e.fetch}).getSpendReport(t).catch(async e=>{throw await cn(e,await cl(await s()))}),m=async t=>new cg({baseURL:n,headers:s,fetch:e.fetch}).getGenerationInfo(t).catch(async e=>{throw await cn(e,await cl(await s()))}),g=function(e){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return c(e)};g.specificationVersion="v4",g.getAvailableModels=p,g.getCredits=h,g.getSpendReport=f,g.getGenerationInfo=m,g.imageModel=t=>new cN(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()}),g.languageModel=c,g.experimental_batch=()=>new cv({provider:"gateway",maxLineBytes:e.batchResultDownloads?.maxLineBytes,baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()});let y=t=>new cR(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()});g.embeddingModel=y,g.textEmbeddingModel=y,g.videoModel=t=>new cL(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()});let v=t=>new c3(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()});g.rerankingModel=v,g.reranking=v;let b=t=>new c2(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()});g.decisionModel=b,g.decision=b,g.evaluationModel=b,g.evaluation=b;let w=t=>new c7(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d()});g.speechModel=w,g.speech=w;let x=t=>new pa(t,{provider:"gateway",baseURL:n,headers:s,fetch:e.fetch,o11yHeaders:d(),webSocket:e.webSocket});g.transcriptionModel=x,g.transcription=x,g.experimental_transcription=Object.assign(e=>x(e),{getToken:async e=>{let t=await u({modelId:e.model,routeKind:"transcription",...null!=e.expiresAfterSeconds&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:t.token,url:po(n,e.model),...null!=t.expiresAt&&{expiresAt:t.expiresAt}}}});let _=t=>new pc(t,{provider:"gateway.realtime",baseURL:n,teamIdOrSlug:e.teamIdOrSlug,createClientSecret:u});return g.experimental_realtime=Object.assign(e=>_(e),{getToken:async e=>{let{model:t,...r}=e,a=await _(t).doCreateClientSecret(r);return{token:a.token,url:a.url,...null!=a.expiresAt&&{expiresAt:a.expiresAt}}}}),g.chat=g.languageModel,g.embedding=g.embeddingModel,g.image=g.imageModel,g.video=g.videoModel,g.tools=pT,g}();async function pA(e){let t=sw({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await (0,dT.getVercelOidcToken)(),authMethod:"oidc"}}let pO="AI_InvalidArgumentError",pR=`vercel.ai.error.${pO}`,pP=Symbol.for(pR);var p$=class extends w{constructor({parameter:e,value:t,message:r}){super({name:pO,message:`Invalid argument for parameter ${e}: ${r}`}),this[pP]=!0,this.parameter=e,this.value=t}static isInstance(e){return w.hasMarker(e,pR)}};Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");let pN="AI_InvalidToolApprovalError",pz=`vercel.ai.error.${pN}`,pj=Symbol.for(pz);var pD=class extends w{constructor({approvalId:e}){super({name:pN,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[pj]=!0,this.approvalId=e}static isInstance(e){return w.hasMarker(e,pz)}};let pq="AI_InvalidToolApprovalSignatureError",pU=`vercel.ai.error.${pq}`,pL=Symbol.for(pU);var pF=class extends w{constructor({approvalId:e,toolCallId:t,reason:r}){super({name:pq,message:`Tool approval signature verification failed for approval "${e}" (tool call "${t}"): ${r}`}),this[pL]=!0,this.approvalId=e,this.toolCallId=t}static isInstance(e){return w.hasMarker(e,pU)}};
91let pZ="AI_InvalidToolInputError",pB=`vercel.ai.error.${pZ}`,pV=Symbol.for(pB);var pG=class extends w{constructor({toolInput:e,toolName:t,cause:r,message:a=`Invalid input for tool ${t}: ${j(r)}`}){super({name:pZ,message:a,cause:r}),this[pV]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return w.hasMarker(e,pB)}};let pH="AI_ToolCallNotFoundForApprovalError",pJ=`vercel.ai.error.${pH}`,pK=Symbol.for(pJ);var pW=class extends w{constructor({toolCallId:e,approvalId:t}){super({name:pH,message:`Tool call "${e}" not found for approval request "${t}".`}),this[pK]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return w.hasMarker(e,pJ)}};let pY="AI_MissingToolResultsError",pX=`vercel.ai.error.${pY}`,pQ=Symbol.for(pX);var p0=class extends w{constructor({toolCallIds:e}){super({name:pY,message:`Tool result${e.length>1?"s are":" is"} missing for tool call${e.length>1?"s":""} ${e.join(", ")}.`}),this[pQ]=!0,this.toolCallIds=e}static isInstance(e){return w.hasMarker(e,pX)}};Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");let p1="AI_NoObjectGeneratedError",p2=`vercel.ai.error.${p1}`,p4=Symbol.for(p2),p6="AI_NoOutputGeneratedError",p9=`vercel.ai.error.${p6}`,p3=Symbol.for(p9);var p5=class extends w{constructor({message:e="No output generated.",cause:t}={}){super({name:p6,message:e,cause:t}),this[p3]=!0}static isInstance(e){return w.hasMarker(e,p9)}};Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError"),Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError"),Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError"),Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");let p8="AI_NoSuchToolError",p7=`vercel.ai.error.${p8}`,he=Symbol.for(p7);var ht=class extends w{constructor({toolName:e,availableTools:t,message:r=`Model tried to call unavailable tool '${e}'. ${void 0===t?"No tools are available.":`Available tools: ${t.join(", ")}.`}`}){super({name:p8,message:r}),this[he]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return w.hasMarker(e,p7)}};let hr="AI_StreamProviderError",ha=`vercel.ai.error.${hr}`,ho=Symbol.for(ha);var hn=class extends w{constructor({message:e,type:t,code:r,statusCode:a,isRetryable:o=function(e){return null!=e&&(408===e||409===e||429===e||e>=500)}(a),data:n,cause:i}){super({name:hr,message:e,cause:i}),this[ho]=!0,this.type=t,this.code=r,this.statusCode=a,this.isRetryable=o,this.data=n}static isInstance(e){return w.hasMarker(e,ha)}};let hi="AI_ToolCallRepairError",hs=`vercel.ai.error.${hi}`,hl=Symbol.for(hs);var hu=class extends w{constructor({cause:e,originalError:t,message:r=`Error repairing tool call: ${j(e)}`}){super({name:hi,message:r,cause:e}),this[hl]=!0,this.originalError=t}static isInstance(e){return w.hasMarker(e,hs)}};let hd="AI_ToolChoiceViolationError",hc=`vercel.ai.error.${hd}`,hp=Symbol.for(hc);var hh=class extends w{constructor({toolChoice:e,finishReason:t,provider:r,modelId:a,content:o,message:n="required"===e.type?"Model response did not contain a tool call even though tool choice was required.":`Model response did not contain a call to the required tool '${e.toolName}'.`}){super({name:hd,message:n}),this[hp]=!0,this.toolChoice=e,this.finishReason=t,this.provider=r,this.modelId=a,this.content=o}static isInstance(e){return w.hasMarker(e,hc)}},hf=class extends w{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}};let hm="AI_UIMessageStreamError",hg=`vercel.ai.error.${hm}`,hy=Symbol.for(hg);var hv=class extends w{constructor({chunkType:e,chunkId:t,message:r}){super({name:hm,message:r}),this[hy]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return w.hasMarker(e,hg)}};let hb="AI_InvalidDataContentError",hw=`vercel.ai.error.${hb}`,hx=Symbol.for(hw);var h_=class extends w{constructor({content:e,cause:t,message:r=`Invalid data content. Expected a base64 string, Uint8Array, ArrayBuffer, or Buffer, but got ${typeof e}.`}){super({name:hb,message:r,cause:t}),this[hx]=!0,this.content=e}static isInstance(e){return w.hasMarker(e,hw)}};let hI="AI_InvalidMessageRoleError",hk=`vercel.ai.error.${hI}`,hS=Symbol.for(hk);var hT=class extends w{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:hI,message:t}),this[hS]=!0,this.role=e}static isInstance(e){return w.hasMarker(e,hk)}};let hE="AI_MessageConversionError",hC=`vercel.ai.error.${hE}`,hM=Symbol.for(hC);var hA=class extends w{constructor({originalMessage:e,message:t}){super({name:hE,message:t}),this[hM]=!0,this.originalMessage=e}static isInstance(e){return w.hasMarker(e,hC)}};let hO="AI_RetryError",hR=`vercel.ai.error.${hO}
91`,hP=Symbol.for(hR);var h$=class extends w{constructor({message:e,reason:t,errors:r}){super({name:hO,message:e}),this[hP]=!0,this.reason=t,this.errors=r,this.lastError=r[r.length-1]}static isInstance(e){return w.hasMarker(e,hR)}};let hN=new Map([["generateObject","AISDK_DEP_GENERATE_OBJECT"],["streamObject","AISDK_DEP_STREAM_OBJECT"],["experimental_generateSpeech","AISDK_DEP_EXPERIMENTAL_GENERATE_SPEECH"],["experimental_transcribe","AISDK_DEP_EXPERIMENTAL_TRANSCRIBE"],['"image" content part',"AISDK_DEP_IMAGE_CONTENT_PART"],['"tool-result" content of type "file-data"',"AISDK_DEP_TOOL_RESULT_FILE_DATA"],['"tool-result" content of type "file-url"',"AISDK_DEP_TOOL_RESULT_FILE_URL"],['"tool-result" content of type "file-id"',"AISDK_DEP_TOOL_RESULT_FILE_ID"],['"tool-result" content of type "file-reference"',"AISDK_DEP_TOOL_RESULT_FILE_REFERENCE"],['"tool-result" content of type "image-data"',"AISDK_DEP_TOOL_RESULT_IMAGE_DATA"],['"tool-result" content of type "image-url"',"AISDK_DEP_TOOL_RESULT_IMAGE_URL"],['"tool-result" content of type "image-file-id"',"AISDK_DEP_TOOL_RESULT_IMAGE_FILE_ID"],['"tool-result" content of type "image-file-reference"',"AISDK_DEP_TOOL_RESULT_IMAGE_FILE_REFERENCE"],["rawInput in output-error UI message parts","AISDK_DEP_UI_MESSAGE_RAW_INPUT"]]);function hz(e){return e.replace(/[^a-zA-Z0-9]/g,e=>`_${e.charCodeAt(0).toString(16).toUpperCase().padStart(4,"0")}`)}let hj=!1,hD=new Set;function hq({message:e,type:t,code:r}){void 0!==g.default&&"function"==typeof g.default.emitWarning?g.default.emitWarning(e,null==r?{type:t}:{type:t,code:r}):console.warn(null==r?e:`[${r}] ${e}`)}let hU=e=>{if(0===e.warnings.length)return;let t=globalThis.AI_SDK_LOG_WARNINGS;if(!1!==t){if("function"==typeof t)return void t(e);for(let t of(hj||(hj=!0,hq({message:"AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",type:"Warning"})),e.warnings)){let r="deprecated"===t.type?function({setting:e,provider:t}){return null==t?hN.get(e)??`AISDK_DEP_SETTING_${hz(e)}`:`AISDK_DEP_PROVIDER_${hz(t)}__${hz(e)}`}({setting:t.setting,provider:e.provider}):void 0;if(null!=r){if(hD.has(r))continue;hD.add(r)}hq({message:function({warning:e,provider:t,model:r}){let a=`AI SDK Warning${null!=t&&null!=r?` (${t} / ${r})`:""}:`;switch(e.type){case"unsupported":{let t=`${a} The feature "${e.feature}" is not supported.`;return e.details&&(t+=` ${e.details}`),t}case"compatibility":{let t=`${a} The feature "${e.feature}" is used in a compatibility mode.`;return e.details&&(t+=` ${e.details}`),t}case"deprecated":return`${a} Deprecated: "${e.setting}". ${e.message}`;case"other":return`${a} ${e.message}`;default:return`${a} ${JSON.stringify(e,null,2)}`}}({warning:t,provider:e.provider,model:e.model}),type:"deprecated"===t.type?"DeprecationWarning":"Warning",code:r})}}};function hL({provider:e,modelId:t}){hU({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:e,model:t})}function hF(e){return"v3"===e.specificationVersion?e:(hL({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get:(e,t)=>"specificationVersion"===t?"v3":e[t]}))}function hZ(e){return"v4"===e.specificationVersion?e:new Proxy("v2"===e.specificationVersion?hF(e):e,{get:(e,t)=>"specificationVersion"===t?"v4":e[t]})}function hB(e){return"v3"===e.specificationVersion?e:(hL({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get:(e,t)=>"specificationVersion"===t?"v3":e[t]}))}function hV(e){return"v3"===e.specificationVersion?e:(hL({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(e,t){switch(t){case"specificationVersion":return"v3";case"doGenerate":return async(...t)=>{let r=await e.doGenerate(...t);return{...r,finishReason:hG(r.finishReason),usage:hH(r.usage)}};case"doStream":return async(...t)=>{let r=await e.doStream(...t);return{...r,stream:r.stream.pipeThrough(new TransformStream({transform(e,t){"finish"===e.type?t.enqueue({...e,finishReason:hG(e.finishReason),usage:hH(e.usage)}):t.enqueue(e)}}))}};default:return e[t]}}}))}function hG(e){return{unified:"unknown"===e?"other":e,raw:void 0}}function hH(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},raw:null==e.totalTokens?void 0:{totalTokens:e.totalTokens}}}
91function hJ(e){return"v4"===e.specificationVersion?e:new Proxy("v2"===e.specificationVersion?hV(e):e,{get(e,t){switch(t){case"specificationVersion":return"v4";case"doGenerate":return async t=>{let r=await e.doGenerate({...t,prompt:hK(t.prompt)});return{...r,content:r.content.map(hW)}};case"doStream":return async t=>{let r=await e.doStream({...t,prompt:hK(t.prompt)});return{...r,stream:r.stream.pipeThrough(new TransformStream({transform(e,t){t.enqueue("file"===e.type?{...e,data:{type:"data",data:e.data}}:e)}}))}};default:return e[t]}}})}function hK(e){return e.map(e=>"system"===e.role?e:{...e,content:e.content.map(e=>{switch(e.type){case"file":return{...e,data:function(e){switch(e.type){case"data":return e.data;case"url":return e.url;case"reference":case"text":return e}}(e.data)};case"tool-result":var t;return{...e,output:"content"!==(t=e.output).type?t:{...t,value:t.value.map(e=>{if("file"!==e.type)return e;switch(e.data.type){case"data":return{type:"file-data",data:"string"==typeof e.data.data?e.data.data:iS(e.data.data),mediaType:e.mediaType,filename:e.filename,providerOptions:e.providerOptions};case"url":return{type:"file-url",url:e.data.url.toString(),providerOptions:e.providerOptions};case"reference":return{type:"file-id",fileId:e.data.reference,providerOptions:e.providerOptions};case"text":return e}})}};default:return e}})})}function hW(e){return"file"===e.type?{...e,data:{type:"data",data:e.data}}:e}function hY(e){return"v3"===e.specificationVersion?e:(hL({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get:(e,t)=>"specificationVersion"===t?"v3":e[t]}))}function hX(e){return"v3"===e.specificationVersion?e:(hL({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get:(e,t)=>"specificationVersion"===t?"v3":e[t]}))}function hQ(e){if("string"==typeof e)return h1().languageModel(e);if(!["v4","v3","v2"].includes(e.specificationVersion))throw new hf({version:e.specificationVersion,provider:e.provider,modelId:e.modelId});return hJ(e)}function h0(e){if("string"==typeof e)return h1().embeddingModel(e);if(!["v4","v3","v2"].includes(e.specificationVersion))throw new hf({version:e.specificationVersion,provider:e.provider,modelId:e.modelId});return hZ(e)}function h1(){var e=globalThis.AI_SDK_DEFAULT_PROVIDER??pM;if("specificationVersion"in e&&"v4"===e.specificationVersion)return e;let t="specificationVersion"in e&&"v3"===e.specificationVersion||"specificationVersion"in e&&"v3"===e.specificationVersion?e:{specificationVersion:"v3",languageModel:t=>hV(e.languageModel(t)),embeddingModel:t=>hF(e.textEmbeddingModel(t)),imageModel:t=>hB(e.imageModel(t)),transcriptionModel:e.transcriptionModel?t=>hX(e.transcriptionModel(t)):void 0,speechModel:e.speechModel?t=>hY(e.speechModel(t)):void 0,rerankingModel:void 0};return{specificationVersion:"v4",languageModel:e=>hJ(t.languageModel(e)),embeddingModel:e=>hZ(t.embeddingModel(e)),imageModel:e=>{var r;return"v4"===(r=t.imageModel(e)).specificationVersion?r:new Proxy("v2"===r.specificationVersion?hB(r):r,{get:(e,t)=>"specificationVersion"===t?"v4":e[t]})},transcriptionModel:t.transcriptionModel?e=>{var r;return"v4"===(r=t.transcriptionModel(e)).specificationVersion?r:new Proxy("v2"===r.specificationVersion?hX(r):r,{get:(e,t)=>"specificationVersion"===t?"v4":e[t]})}:void 0,speechModel:t.speechModel?e=>{var r;return"v4"===(r=t.speechModel(e)).specificationVersion?r:new Proxy("v2"===r.specificationVersion?hY(r):r,{get:(e,t)=>"specificationVersion"===t?"v4":e[t]})}:void 0,rerankingModel:t.rerankingModel?e=>{var r;return"v4"===(r=t.rerankingModel(e)).specificationVersion?r:new Proxy(r,{get:(e,t)=>"specificationVersion"===t?"v4":e[t]})}:void 0}}function h2(e){return e.map(e=>(function e(t){return t instanceof URL?new URL(t.href):Array.isArray(t)?t.map(t=>e(t)):t instanceof Uint8Array?new Uint8Array(t):t instanceof ArrayBuffer?t.slice(0):t instanceof Date?new Date(t):null!=t&&"object"==typeof t?Object.fromEntries(Object.entries(t).map(([t,r])=>[t,e(r)])):t})(e))}let h4="7.0.134",h6=async({url:e,maxBytes:t,abortSignal:r})=>{let a=e.toString();try{let e=iL({},`ai-sdk/${h4}`,i$()),o=await si({url:a,headers:e,abortSignal:r});if(!o.ok)throw await iX(o),new i2({url:a,statusCode:o.status,statusText:o.statusText});return{data:await ss({response:o,url:a,maxBytes:t??0x80000000}),mediaType:o.headers.get("content-type")??void 0}}catch(e){if(i2.isInstance(e))throw e;throw new i2({url:a,cause:e})}};function h9(e,t){if(void 0===e&&void 0===t)return;if(void 0===e)return t;if(void 0===t)return e;let r={...e};for(let a in t)if("__proto__"!==a&&"constructor"!==a&&"prototype"!==a&&Object.prototype.hasOwnProperty.call(t,a)){let o=t[a];if(void 0===o)continue;let n=a in e?e[a]:void 0,i=null!==o&&"object"==typeof o&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),s=null!=n&&"object"==typeof n&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof RegExp);i&&s?r[a]=h9(n,o):r[a]=o}return r}function h3(e,t){if("data:"===e.protocol){let{mediaType:t,base64Content:r}=function(e){try{let[t,r]=e.split(",");return{mediaType:t.split(";")[0].split(":")[1],base64Content:r}}catch{return{mediaType:void 0,base64Content:void 0}}}(e.toString());if(null==t||null==r)throw new h_({content:e,message:`Invalid data URL format in content ${e.toString()}`});return{data:{type:"data",data:r},mediaType:t}}return{data:{type:"url",url:e,...null!=t?{originalUrl:t}:{}},mediaType:void 0}}function h5(e){return e instanceof Uint8Array?{data:{type:"data",data:e},mediaType:void 0}:e instanceof ArrayBuffer||sm(e)?{data:{type:"data",data:new Uint8Array(e)},mediaType:void 0}:{data:{type:"data",data:e},mediaType:void 0}}function h8(e){if(function(e){if("object"!=typeof e||null===e)return!1;let t=e.type;return"data"===t||"url"===t||"reference"===t||"text"===t}(e))switch(e.type){case"data":if("string"==typeof e.data&&e.data.startsWith("data:"))throw new h_({content:e.data,message:'Data URLs are not valid inline data. Pass them as { type: "url", url } instead.'});return h5(e.data);case"url":return h3(e.url,e.originalUrl);case"reference":return{data:{type:"reference",reference:e.reference},mediaType:void 0};case"text":return{data:{type:"text",text:e.text},mediaType:void 0}}if(e instanceof URL)return h3(e);if("string"==typeof e)try{let t;return t=h3(new URL(e)),"url"===t.data.type&&t.data.url.toString()!==e&&(t.data.originalUrl=e),t}catch{return h5(e)}return sy(e)?{data:{type:"reference",reference:e},mediaType:void 0}:h5(e)}async function h7({prompt:e,supportedUrls:t,download:r,abortSignal:a,provider:o}){let n=await ft(e.messages,r??((e=h6,t)=>r=>Promise.all(r.map(async r=>r.isUrlSupportedByModel?null:await e({...r,abortSignal:t}))))(void 0,a),t),i=new Map;for(let t of e.messages)if("assistant"===t.role&&Array.isArray(t.content))for(let e of t.content)"tool-approval-request"===e.type&&"approvalId"in e&&"toolCallId"in e&&i.set(e.approvalId,e.toolCallId);let s=new Set;for(let t of e.messages)if("tool"===t.role){for(let e of t.content)if("tool-approval-response"===e.type){let t=i.get(e.approvalId);t&&s.add(t)}}let l=[...null!=e.instructions?"string"==typeof e.instructions?[{role:"system",content:e.instructions}]:ip(e.instructions).map(e=>({role:"system",content:e.content,providerOptions:e.providerOptions})):[],...e.messages.map(e=>(function({message:e,downloadedAssets:t,provider:r}){let a=[],o=e.role;switch(o){case"system":return{role:"system",content:e.content,providerOptions:e.providerOptions};case"user":{if("string"==typeof e.content)return{role:"user",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions};let r={role:"user",content:e.content.map(e=>("image"===e.type&&a.push({type:"deprecated",setting:'"image" content part',message:'The "image" content part type is deprecated. Use a "file" part with mediaType: \'image\' (or a more specific image/* subtype) instead.'}),fe(e))).map(e=>fr(e,t)).filter(e=>"text"!==e.type||""!==e.text),providerOptions:e.providerOptions};return a.length>0&&hU({warnings:a}),r}
91case"assistant":{if("string"==typeof e.content)return{role:"assistant",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions};let o={role:"assistant",content:e.content.filter(e=>"text"!==e.type||""!==e.text||null!=e.providerOptions).filter(e=>"tool-approval-request"!==e.type).map(e=>{let o=e.providerOptions;switch(e.type){case"custom":return{type:"custom",kind:e.kind,providerOptions:o};case"file":{let{data:t,mediaType:r}=h8(e.data);return{type:"file",data:t,filename:e.filename,mediaType:r??e.mediaType,providerOptions:o}}case"reasoning":return{type:"reasoning",text:e.text,providerOptions:o};case"reasoning-file":{let{data:t,mediaType:r}=h8(e.data);if("data"!==t.type&&"url"!==t.type)throw Error(`Unsupported reasoning-file data type: ${t.type}`);return{type:"reasoning-file",data:t,mediaType:r??e.mediaType,providerOptions:o}}case"text":return{type:"text",text:e.text,providerOptions:o};case"tool-call":return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,providerExecuted:e.providerExecuted,providerOptions:o};case"tool-result":return{type:"tool-result",toolCallId:e.toolCallId,toolName:e.toolName,output:fa({output:e.output,provider:r,warnings:a,downloadedAssets:t}),providerOptions:o}}}),providerOptions:e.providerOptions};return a.length>0&&hU({warnings:a}),o}case"tool":{let o={role:"tool",content:e.content.filter(e=>"tool-approval-response"!==e.type||e.providerExecuted).map(e=>{switch(e.type){case"tool-result":return{type:"tool-result",toolCallId:e.toolCallId,toolName:e.toolName,output:fa({output:e.output,provider:r,warnings:a,downloadedAssets:t}),providerOptions:e.providerOptions};case"tool-approval-response":return{type:"tool-approval-response",approvalId:e.approvalId,approved:e.approved,reason:e.reason}}}),providerOptions:e.providerOptions};return a.length>0&&hU({warnings:a}),o}default:throw new hT({role:o})}})({message:e,downloadedAssets:n,provider:o}))],u=[];for(let e of l){if("tool"!==e.role){u.push(e);continue}let t=u.at(-1);if(t?.role==="tool"){let r=t.content.at(-1);null!=r&&null!=t.providerOptions&&(r.providerOptions=h9(t.providerOptions,r.providerOptions)),t.content.push(...e.content),t.providerOptions=null==r?h9(t.providerOptions,e.providerOptions):e.providerOptions}else u.push(e)}let d=new Set;for(let e of u)switch(e.role){case"assistant":for(let t of e.content)"tool-call"!==t.type||t.providerExecuted||d.add(t.toolCallId);break;case"tool":for(let t of e.content)"tool-result"===t.type&&d.delete(t.toolCallId);break;case"user":case"system":for(let e of s)d.delete(e);if(d.size>0)throw new p0({toolCallIds:Array.from(d)})}for(let e of s)d.delete(e);if(d.size>0)throw new p0({toolCallIds:Array.from(d)});return u.filter(e=>"tool"!==e.role||e.content.length>0)}function fe(e){return"image"!==e.type?e:{type:"file",data:e.image,mediaType:e.mediaType??"image",providerOptions:e.providerOptions}}async function ft(e,t,r){let a=[];for(let t of e){if("user"===t.role&&Array.isArray(t.content))for(let e of t.content){let t=fe(e);"file"===t.type&&a.push(t)}if("tool"===t.role){for(let e of t.content)if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&a.push(t)}if("assistant"===t.role&&Array.isArray(t.content)){for(let e of t.content)if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&a.push(t)}}let o=a.map(e=>{let t=e.mediaType,{data:r}=h8(e.data);return{mediaType:t,data:r}}).filter(e=>"url"===e.data.type).map(e=>({url:e.data.url,isUrlSupportedByModel:null!=e.mediaType&&sb({url:e.data.url.toString(),mediaType:e.mediaType,supportedUrls:r})}));return Object.fromEntries((await t(o)).map((e,t)=>null==e?null:[o[t].url.toString(),{data:e.data,mediaType:e.mediaType}]).filter(e=>null!=e))}function fr(e,t){if("text"===e.type)return{type:"text",text:e.text,providerOptions:e.providerOptions};let{data:r,mediaType:a}=h8(e.data),o=a??e.mediaType,n=r;if("url"===n.type){let e=t[n.url.toString()];e&&(n={type:"data",data:e.data},null==e.mediaType||null!=o&&iY(o)||(o=e.mediaType))}if("data"===n.type&&(n.data instanceof Uint8Array||"string"==typeof n.data)){let e=iK({data:n.data,topLevelType:"image"});null!=e&&(o=e)}if(null==o)throw Error("Media type is missing for file part");return{type:"file",mediaType:o,filename:e.filename,data:n,providerOptions:e.providerOptions}}function fa({output:e,provider:t,warnings:r=[],downloadedAssets:a}){return"content"!==e.type?e:{type:"content",value:e.value.map(e=>{switch(e.type){case"file":{let t=fr(e,a);if("file"!==t.type)throw Error("Expected tool result file content to convert to file.");return t}case"file-data":return r.push({type:"deprecated",setting:'"tool-result" content of type "file-data"',message:'The "file-data" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'data\', data } instead.'}),{type:"file",data:{type:"data",data:e.data},filename:e.filename,mediaType:e.mediaType,providerOptions:e.providerOptions};case"file-url":{let t=e.mediaType??function(e,t="application/octet-stream"){try{let t=new URL(e).pathname.split(".").pop()?.toLowerCase();if(t&&Object.hasOwn(fn,t))return fn[t]}catch{}return t}(e.url),a=new URL(e.url),o='The "file-url" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'url\', url } instead.';
91if(!e.mediaType){let r="application/octet-stream"===t?"Unable to infer media type from URL. Defaulting to 'application/octet-stream'.":`Inferred media type '${t}' from URL.`;o=`The "file-url" tool result content part with URL "${e.url}" is missing a "mediaType". ${r} ${o}`}return r.push({type:"deprecated",setting:'"tool-result" content of type "file-url"',message:o}),{type:"file",data:{type:"url",url:a,...a.toString()!==e.url?{originalUrl:e.url}:{}},mediaType:t,providerOptions:e.providerOptions}}case"file-id":return r.push({type:"deprecated",setting:'"tool-result" content of type "file-id"',message:'The "file-id" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'reference\', reference } instead.'}),{type:"file",data:{type:"reference",reference:fo({fileId:e.fileId,provider:t})},mediaType:"application",providerOptions:e.providerOptions};case"file-reference":return r.push({type:"deprecated",setting:'"tool-result" content of type "file-reference"',message:'The "file-reference" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'reference\', reference } instead.'}),{type:"file",data:{type:"reference",reference:e.providerReference},mediaType:"application",providerOptions:e.providerOptions};case"image-data":return r.push({type:"deprecated",setting:'"tool-result" content of type "image-data"',message:'The "image-data" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'data\', data } instead.'}),{type:"file",data:{type:"data",data:e.data},mediaType:e.mediaType,providerOptions:e.providerOptions};case"image-url":{let t=new URL(e.url);return r.push({type:"deprecated",setting:'"tool-result" content of type "image-url"',message:"The \"image-url\" type for tool result content is deprecated. Use the \"file\" type with mediaType 'image' (or a specific image/* subtype) and { type: 'url', url } instead."}),{type:"file",data:{type:"url",url:t,...t.toString()!==e.url?{originalUrl:e.url}:{}},mediaType:"image",providerOptions:e.providerOptions}}case"image-file-id":return r.push({type:"deprecated",setting:'"tool-result" content of type "image-file-id"',message:'The "image-file-id" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'reference\', reference } instead.'}),{type:"file",data:{type:"reference",reference:fo({fileId:e.fileId,provider:t})},mediaType:"image",providerOptions:e.providerOptions};case"image-file-reference":return r.push({type:"deprecated",setting:'"tool-result" content of type "image-file-reference"',message:'The "image-file-reference" type for tool result content is deprecated. Use the "file" type with mediaType and { type: \'reference\', reference } instead.'}),{type:"file",data:{type:"reference",reference:e.providerReference},mediaType:"image",providerOptions:e.providerOptions};default:return e}})}}function fo({fileId:e,provider:t}){if("object"==typeof e)return e;if(null==t)throw Error("Cannot convert string fileId to provider reference without a provider ID. Use a Record<string, string> fileId or switch to the file-reference type.");return{[t]:e}}let fn={jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",avif:"image/avif",heic:"image/heic",bmp:"image/bmp",tiff:"image/tiff",tif:"image/tiff",pdf:"application/pdf",mp4:"video/mp4",webm:"video/webm",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg"};async function fi({toolCallId:e,input:t,output:r,tool:a,errorMode:o}){return"text"===o?{type:"error-text",value:j(r)}:"json"===o?{type:"error-json",value:fs(r)}:a?.toModelOutput?await a.toModelOutput({toolCallId:e,input:t,output:r}):"string"==typeof r?{type:"text",value:r}:{type:"json",value:fs(r)}}function fs(e){if(void 0===e)return null;let t=JSON.stringify(e);return void 0===t?null:JSON.parse(t)}function fl({maxOutputTokens:e,temperature:t,topP:r,topK:a,presencePenalty:o,frequencyPenalty:n,seed:i,stopSequences:s,reasoning:l}){if(null!=e){if(!Number.isInteger(e))throw new p$({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be an integer"});if(e<1)throw new p$({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be >= 1"})}if(null!=t&&"number"!=typeof t)throw new p$({parameter:"temperature",value:t,message:"temperature must be a number"});if(null!=r&&"number"!=typeof r)throw new p$({parameter:"topP",value:r,message:"topP must be a number"});if(null!=a&&"number"!=typeof a)throw new p$({parameter:"topK",value:a,message:"topK must be a number"});if(null!=o&&"number"!=typeof o)throw new p$({parameter:"presencePenalty",value:o,message:"presencePenalty must be a number"});if(null!=n&&"number"!=typeof n)throw new p$({parameter:"frequencyPenalty",value:n,message:"frequencyPenalty must be a number"});if(null!=i&&!Number.isInteger(i))throw new p$({parameter:"seed",value:i,message:"seed must be an integer"});return{maxOutputTokens:e,temperature:t,topP:r,topK:a,presencePenalty:o,frequencyPenalty:n,stopSequences:s,seed:i,reasoning:l}}function fu({toolChoice:e}){return null==e?{type:"auto"}
91:"string"==typeof e?{type:e}:{type:"tool",toolName:e.toolName}}async function fd({tools:e,toolOrder:t,toolsContext:r={},experimental_sandbox:a}){if(!(null!=e&&Object.keys(e).length>0))return;let o=[];for(let[n,i]of function({tools:e,toolOrder:t}){if(null==t)return Object.entries(e);let r=Object.entries(e);return[...r.filter(([e])=>t.includes(e)).sort(([e],[r])=>t.indexOf(e)-t.indexOf(r)),...r.filter(([e])=>!t.includes(e)).sort(([e],[t])=>e<t?-1:+(e>t))]}({tools:e,toolOrder:t})){let e=i.type;switch(e){case void 0:case"dynamic":case"function":{let e=fc({tool:i,toolName:n,toolsContext:r,experimental_sandbox:a}),t=i.providerOptions,s=i.inputExamples,l=i.strict;o.push({type:"function",name:n,inputSchema:await s6(i.inputSchema).jsonSchema,...null!=e?{description:e}:{},...null!=s?{inputExamples:s}:{},...null!=t?{providerOptions:t}:{},...null!=l?{strict:l}:{}});break}case"provider":o.push({type:"provider",name:n,id:i.id,args:i.args});break;default:throw Error(`Unsupported tool type: ${e}`)}}return o}function fc({tool:e,toolName:t,toolsContext:r,experimental_sandbox:a}){return void 0===e.description?void 0:"string"==typeof e.description?e.description:e.description({context:r[t],experimental_sandbox:a})}function fp(e){if(null!=e)return"number"==typeof e?e:e.totalMs}function fh(e){if(null!=e&&"number"!=typeof e)return e.stepMs}function ff(e){if(null!=e&&"number"!=typeof e)return e.firstChunkMs}function fm(e){if(null!=e&&"number"!=typeof e)return e.chunkMs}let fg=u0,fy=dr,fv=u9,fb=dw(()=>fv([uG(),uf(),uU(),uB(),de(uf(),fb.optional()),fg(fb)])),fw=de(uf(),de(uf(),fb.optional())),fx=fv([uf(),dk(Uint8Array),dk(ArrayBuffer),d_(sm,{message:"Must be a Buffer"})]),f_=de(uf(),uf()),fI=u2({type:dn("text"),text:uf(),providerOptions:fw.optional()}),fk=u2({type:dn("image"),image:fv([fx,dk(URL),f_]),mediaType:uf().optional(),providerOptions:fw.optional()}),fS=u5("type",[u2({type:dn("data"),data:fx}),u2({type:dn("url"),url:dk(URL)}),u2({type:dn("reference"),reference:f_}),u2({type:dn("text"),text:uf()})]),fT=u5("type",[u2({type:dn("data"),data:fx}),u2({type:dn("url"),url:dk(URL)})]),fE=u2({type:dn("file"),data:fv([fS,fx,dk(URL),f_]),filename:uf().optional(),mediaType:uf(),providerOptions:fw.optional()}),fC=u2({type:dn("reasoning"),text:uf(),providerOptions:fw.optional()}),fM=u2({type:dn("custom"),kind:uf().transform(e=>e),providerOptions:fw.optional()}),fA=u2({type:dn("reasoning-file"),data:fv([fT,fx,dk(URL)]),mediaType:uf(),providerOptions:fw.optional()}),fO=u2({type:dn("tool-call"),toolCallId:uf(),toolName:uf(),input:uW(),providerOptions:fw.optional(),providerExecuted:uB().optional()}),fR=u5("type",[u2({type:dn("text"),value:uf(),providerOptions:fw.optional()}),u2({type:dn("json"),value:fb,providerOptions:fw.optional()}),u2({type:dn("execution-denied"),reason:uf().optional(),providerOptions:fw.optional()}),u2({type:dn("error-text"),value:uf(),providerOptions:fw.optional()}),u2({type:dn("error-json"),value:fb,providerOptions:fw.optional()}),u2({type:dn("content"),value:fg(fv([u2({type:dn("text"),text:uf(),providerOptions:fw.optional()}),u2({type:dn("file"),data:fS,mediaType:uf(),filename:uf().optional(),providerOptions:fw.optional()}),u2({type:dn("file-data"),data:uf(),mediaType:uf(),filename:uf().optional(),providerOptions:fw.optional()}),u2({type:dn("file-url"),url:uf(),mediaType:uf().optional(),providerOptions:fw.optional()}),u2({type:dn("file-id"),fileId:fv([uf(),de(uf(),uf())]),providerOptions:fw.optional()}),u2({type:dn("file-reference"),providerReference:de(uf(),uf()),providerOptions:fw.optional()}),u2({type:dn("image-data"),data:uf(),mediaType:uf(),providerOptions:fw.optional()}),u2({type:dn("image-url"),url:uf(),providerOptions:fw.optional()}),u2({type:dn("image-file-id"),fileId:fv([uf(),de(uf(),uf())]),providerOptions:fw.optional()}),u2({type:dn("image-file-reference"),providerReference:de(uf(),uf()),providerOptions:fw.optional()}),u2({type:dn("custom"),providerOptions:fw.optional()})]))})]),fP=u2({type:dn("tool-result"),toolCallId:uf(),toolName:uf(),output:fR,providerOptions:fw.optional()}),f$=u2({type:dn("tool-approval-request"),approvalId:uf(),toolCallId:uf(),reason:uf().optional(),isAutomatic:uB().optional(),signature:uf().optional(),inputSchemaInput:uW().optional()}),fN=u2({type:dn("tool-approval-response"),approvalId:uf(),approved:uB(),reason:uf().optional()}),fz=u2({role:dn("system"),content:uf(),providerOptions:fw.optional()}),fj=u2({role:dn("user"),content:fv([uf(),fg(fv([fI,fk,fE]))]),providerOptions:fw.optional()}),fD=u2({role:dn("assistant"),content:fv([uf(),fg(fv([fI,fM,fE,fC,fA,fO,fP,f$]))]),providerOptions:fw.optional()}),fq=u2({role:dn("tool"),content:fg(fv([fP,fN])),providerOptions:fw.optional()}),fU=fv([fz,fj,fD,fq]);async function fL({allowSystemInMessages:e=!1,system:t,instructions:r=t,prompt:a,messages:o}){if(null==a&&null==o)throw new V({prompt:a,message:"prompt or messages must be defined"});if(null!=a&&null!=o)throw new V({prompt:a,message:"prompt and messages cannot be defined at the same time"});if("string"!=typeof r&&!ip(r).every(e=>"system"===e.role))throw new V({prompt:a,message:"instructions must be a string, SystemModelMessage, or array of SystemModelMessage"});if(null!=a&&"string"==typeof a)o=[{role:"user",content:a}];else if(null!=a&&Array.isArray(a))o=a;else if(null==o)throw new V({prompt:a,message:"prompt or messages must be defined"});if(0===o.length)throw new V({prompt:a,message:"messages must not be empty"});if(!e&&o.some(e=>"system"===e.role))throw new V({prompt:a,message:"System messages are not allowed in the prompt or messages fields. Use the instructions option instead."});let n=await s5({value:o,schema:fg(fU)});if(!n.success)throw new V({prompt:a,message:"The messages do not match the ModelMessage[] schema.",cause:n.error});return{messages:o,instructions:r}}function fF(e){if(!dz.isInstance(e))return e;let t=g.default?.env.NODE_ENV==="production",r="https://ai-sdk.dev/unauthenticated-ai-gateway";return t?new w({name:"GatewayError",message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${r}`}):Object.assign(Error(`\x1b[1m\x1b[31mUnauthenticated request to AI Gateway.\x1b[0m 92 93To authenticate, set the \x1b[33mAI_GATEWAY_API_KEY\x1b[0m environment variable with your API key. 94 95Alternatively, you can use a provider module instead of the AI Gateway. 96 97Learn more: \x1b[34m${r}\x1b[0m 98 99`),{name:"GatewayAuthenticationError"})}function fZ(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:fH(e.inputTokens.total,e.outputTokens.total),raw:e.raw}}function fB(){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 fV(e,t){let r=fG(e)?t.raw:fG(t)?e.raw:void 0;return{inputTokens:fH(e.inputTokens,t.inputTokens),inputTokenDetails:{noCacheTokens:fH(e.inputTokenDetails?.noCacheTokens,t.inputTokenDetails?.noCacheTokens),cacheReadTokens:fH(e.inputTokenDetails?.cac
99heReadTokens,t.inputTokenDetails?.cacheReadTokens),cacheWriteTokens:fH(e.inputTokenDetails?.cacheWriteTokens,t.inputTokenDetails?.cacheWriteTokens)},outputTokens:fH(e.outputTokens,t.outputTokens),outputTokenDetails:{textTokens:fH(e.outputTokenDetails?.textTokens,t.outputTokenDetails?.textTokens),reasoningTokens:fH(e.outputTokenDetails?.reasoningTokens,t.outputTokenDetails?.reasoningTokens)},totalTokens:fH(e.totalTokens,t.totalTokens),...null==r?{}:{raw:r}}}function fG(e){return null==e.inputTokens&&e.inputTokenDetails?.noCacheTokens==null&&e.inputTokenDetails?.cacheReadTokens==null&&e.inputTokenDetails?.cacheWriteTokens==null&&null==e.outputTokens&&e.outputTokenDetails?.textTokens==null&&e.outputTokenDetails?.reasoningTokens==null&&null==e.totalTokens&&null==e.raw}function fH(e,t){return null==e&&null==t?void 0:(e??0)+(t??0)}function fJ(e,t){return null!=e&&Object.hasOwn(e,t)?e[t]:void 0}function fK(...e){let t=sc(...e).map(e=>"number"==typeof e?AbortSignal.timeout(e):e);return 0===t.length?void 0:1===t.length?t[0]:AbortSignal.any(t)}function fW(){return globalThis?.performance?.now()??Date.now()}async function fY(e){await Promise.all(ip(e.callbacks).map(async t=>{try{await t?.(e.event)}catch{}}))}function fX({maxRetries:e,abortSignal:t,additionalRetryableError:r,parameter:a="maxRetries",defaultMaxRetries:o=2}){if(null!=e){if(!Number.isInteger(e))throw new p$({parameter:a,value:e,message:`${a} must be an integer`});if(e<0)throw new p$({parameter:a,value:e,message:`${a} must be >= 0`})}let n=e??o;return{maxRetries:n,retry:(({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:a,additionalRetryableError:o}={})=>ld({maxRetries:e,initialDelayInMs:t,backoffFactor:r,abortSignal:a,shouldRetry:async e=>e instanceof Error&&(C.isInstance(e)&&!0===e.isRetryable||dP.isInstance(e)&&!0===e.isRetryable)||null!=o&&await o(e),getDelayInMs:({error:e,exponentialBackoffDelay:t})=>(function({error:e,exponentialBackoffDelay:t}){let r,a=C.isInstance(e)?e.responseHeaders:C.isInstance(e.cause)?e.cause.responseHeaders:void 0;if(!a)return t;let o=a["retry-after-ms"];if(o){let e=parseFloat(o);Number.isNaN(e)||(r=e)}let n=a["retry-after"];if(n&&void 0===r){let e=parseFloat(n);r=Number.isNaN(e)?Date.parse(n)-Date.now():1e3*e}return null!=r&&!Number.isNaN(r)&&0<=r&&(r<6e4||r<t)?r:t})({error:e,exponentialBackoffDelay:t}),createRetryError:({message:e,reason:t,errors:r})=>new h$({message:e,reason:t,errors:r})}))({maxRetries:n,abortSignal:t,additionalRetryableError:r})}}function fQ({abortController:e,label:t,timeoutMs:r}){if(null!=e&&null!=r)return setTimeout(()=>e.abort(new DOMException(`${t} timeout of ${r}ms exceeded`,"TimeoutError")),r)}function f0({tokens:e,durationMs:t}){let r=1e3*(e??0)/(t??0);return Number.isFinite(r)?r:0}function f1({messages:e}){let t=e.at(-1);if(t?.role!="tool")return{approvedToolApprovals:[],deniedToolApprovals:[]};let r=Object.create(null);for(let t of e)if("assistant"===t.role&&"string"!=typeof t.content)for(let e of t.content)"tool-call"===e.type&&(r[e.toolCallId]=e);let a=Object.create(null);for(let t of e)if("assistant"===t.role&&"string"!=typeof t.content)for(let e of t.content)"tool-approval-request"===e.type&&(a[e.approvalId]=e);let o=Object.create(null);for(let e of t.content)"tool-result"===e.type&&(o[e.toolCallId]=e);let n=[],i=[];for(let e of t.content.filter(e=>"tool-approval-response"===e.type)){let t=a[e.approvalId];if(null==t)throw new pD({approvalId:e.approvalId});let s=o[t.toolCallId];if(null!=s&&(e.approved||"execution-denied"!==s.output.type))continue;let l=r[t.toolCallId];if(null==l)throw new pW({toolCallId:t.toolCallId,approvalId:t.approvalId});let u={approvalRequest:t,approvalResponse:e,toolCall:l,...null!=s?{existingToolResult:s}:{}};e.approved?n.push(u):i.push(u)}return{approvedToolApprovals:n,deniedToolApprovals:i}}var f2=class{constructor({data:e,mediaType:t,providerMetadata:r}){let a=e instanceof Uint8Array;this.base64Data=a?void 0:e,this.uint8ArrayData=a?e:void 0,this.mediaType=t,this.providerMetadata=r}get base64(){return null==this.base64Data&&(this.base64Data=iS(this.uint8ArrayData)),this.base64Data}get uint8Array(){return null==this.uint8ArrayData&&(this.uint8ArrayData=ik(this.base64Data)),this.uint8ArrayData}
99},f4=class extends f2{constructor(...e){super(...e),this.type="file"}};async function f6({data:e,abortSignal:t,cache:r}){if("data"===e.type)return e.data;let a=r?.get(e);if(null!=a)return a;let o=(await h6({url:e.url,abortSignal:t})).data;return r?.set(e,o),o}async function f9({content:e,toolCalls:t,toolOutputs:r,toolApprovalRequests:a,toolApprovalResponses:o,tools:n,abortSignal:i,generatedFileDataCache:s}){let l=[],u=[],d=[],c=new Set(o.map(e=>e.toolCall.toolCallId));for(let r of e)switch(r.type){case"text":case"reasoning":case"custom":case"source":l.push(r);break;case"file":case"reasoning-file":l.push({type:r.type,file:new f2({data:await f6({data:r.data,abortSignal:i,cache:s}),mediaType:r.mediaType}),...null!=r.providerMetadata?{providerMetadata:r.providerMetadata}:{}});break;case"tool-call":{let e=t.find(e=>e.toolCallId===r.toolCallId);if(null==e)throw Error(`Tool call ${r.toolCallId} not found.`);l.push(e);break}case"tool-result":{let e=t.find(e=>e.toolCallId===r.toolCallId);if(null==e){let e=fJ(n,r.toolName);if(!(e?.type==="provider"&&e.supportsDeferredResults))throw Error(`Tool call ${r.toolCallId} not found.`);r.isError?l.push({type:"tool-error",toolCallId:r.toolCallId,toolName:r.toolName,input:void 0,error:r.result,providerExecuted:!0,dynamic:r.dynamic,...null!=r.providerMetadata?{providerMetadata:r.providerMetadata}:{},...e?.metadata!=null?{toolMetadata:e.metadata}:{}}):l.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,input:void 0,output:r.result,providerExecuted:!0,dynamic:r.dynamic,...null!=r.providerMetadata?{providerMetadata:r.providerMetadata}:{},...e?.metadata!=null?{toolMetadata:e.metadata}:{}});break}r.isError?l.push({type:"tool-error",toolCallId:r.toolCallId,toolName:r.toolName,input:e.input,error:r.result,providerExecuted:!0,dynamic:e.dynamic,...null!=r.providerMetadata?{providerMetadata:r.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{}}):l.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,input:e.input,output:r.result,providerExecuted:!0,dynamic:e.dynamic,...null!=r.providerMetadata?{providerMetadata:r.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{}});break}case"tool-approval-request":{let e=t.find(e=>e.toolCallId===r.toolCallId);if(null==e)throw new pW({toolCallId:r.toolCallId,approvalId:r.approvalId});l.push({type:"tool-approval-request",approvalId:r.approvalId,toolCall:e})}}for(let e of r)c.has(e.toolCallId)?u.push(e):d.push(e);return[...l,...d,...a,...o,...u]}function f3({tools:e,toolCallers:t}){if(null==e||null==t)return;let r={};for(let[a,o]of Object.entries(t)){if(!Object.prototype.hasOwnProperty.call(e,a))throw new p$({parameter:"experimental_toolCallers",value:t,message:`unknown tool "${a}".`});if(!Array.isArray(o))throw new p$({parameter:"experimental_toolCallers",value:t,message:`callers for tool "${a}" must be an array.`});r[a]=o.map(r=>{if("AI_SDK_DIRECT_TOOL_CALL"===r)return r;if("string"!=typeof r||!Object.prototype.hasOwnProperty.call(e,r)||null==lq(e[r]))throw new p$({parameter:"experimental_toolCallers",value:t,message:`tool "${a}" contains an invalid caller.`});return r})}return r}function f5({tools:e,toolCallers:t}){if(null==e||null==t)return{executionTools:e,modelTools:e,toolCallerMessages:[]};let r={...e},a={...e},o=new Map,n=[];for(let[e,n]of Object.entries(t)){let t=r[e];if(null==t)continue;let i=!1,s=!1,l=t;for(let t of n){if("AI_SDK_DIRECT_TOOL_CALL"===t){i=!0;continue}let a=lq(r[t]);if(null!=a)if("provider"===a.type)s=!0,l={...l,providerOptions:a.prepareProviderOptions(l.providerOptions)};else{let r=o.get(t)??{};r[e]=l,o.set(t,r)}}r[e]=l,i||s?a[e]=l:delete a[e]}for(let[e,t]of Object.entries(r)){let i=lq(t);if(i?.type!=="local")continue;let s=o.get(e)??{},l=i.bind(s);if(r[e]=l,Object.prototype.hasOwnProperty.call(a,e))if(null==i.prepareModelMessage)a[e]=l;else{let e=i.prepareModelMessage(s);null!=e&&n.push({role:"user",content:e})}}return{executionTools:r,modelTools:a,toolCallerMessages:n}}function f8({messages:e,toolCallerMessages:t}){if(0===t.length)return e;let r=e.findLast(e=>"user"===e.role&&"string"==typeof e.content)?.content,a=new Set(null==r?[]:[r]),o=t.filter(e=>!("string"!=typeof e.content||a.has(e.content))&&(a.add(e.content),!0));return 0===o.length?e:[...e,...o]}let f7=Symbol.for("vercel.ai.toolSearch"),me=Symbol.for("vercel.ai.toolSearch.search"),mt=Symbol.for("vercel.ai.toolSearch.maxResults");function mr(e){return!0===e[f7]}function ma({tools:e,toolCallers:t}){let r=Object.entries(e??{}).filter(([,e])=>e.deferLoading||mr(e));if(0===r.length)return e=>e;let a=new Set,o=e=>fJ(t,e)??["AI_SDK_DIRECT_TOOL_CALL"];for(let[t,a]of r)if(o(t).some(t=>{if("AI_SDK_DIRECT_TOOL_CALL"===t)return!1;let r=lq(e?.[t]);return r?.type!=="local"||null==r.prepareModelMessage})||mr(a)&&a.deferLoading)throw new p$({parameter:"tools",value:t,message:`tool "${t}" must be callable directly or through code mode with toolDiscovery: 'conversation'. The search tool itself must not defer loading.`});return(e,{toolsContext:t={},experimental_sandbox:r}={})=>
99{if(null==e)return;let n=Object.entries(e);return Object.fromEntries(n.filter(([e,t])=>!t.deferLoading||a.has(e)).map(([i,s])=>{if(!mr(s))return[i,s];let l=o(i).filter(t=>"AI_SDK_DIRECT_TOOL_CALL"===t||Object.hasOwn(e,t)),u=n.filter(([e,t])=>t.deferLoading&&!mr(t)&&l.some(t=>o(e).includes(t)));return[i,{...s,execute:async({query:e})=>{let o=u.map(([e,a])=>{let o=fc({tool:a,toolName:e,toolsContext:t,experimental_sandbox:r});return{name:e,...null==o?{}:{description:o}}}),n=new Map(o.map(e=>[e.name,e])),i=s[me],l=[...new Set(mo(e))],d=[...new Set(i?await i({query:e,tools:o.map(e=>({...e}))}):o.map(({name:e,description:t})=>{let r=mo(e),a=mo(t??"");return{name:e,score:l.reduce((e,t)=>e+2*!!r.includes(t)+ +!!a.includes(t),0)}}).filter(e=>e.score>0).sort((e,t)=>t.score-e.score).map(e=>e.name))].flatMap(e=>{let t=n.get(e);return null==t?[]:[t]}).slice(0,s[mt]??5);for(let{name:e}of d)a.add(e);return{tools:d}}}]}))}}function mo(e){return e.replace(/([a-z\d])([A-Z])/g,"$1 $2").toLowerCase().match(/[\p{L}\p{N}]+/gu)??[]}async function mn({toolName:e,context:t,contextSchema:r}){return null==r?t:await s3({value:t,schema:r,context:{field:"tool context",entityName:e}})}async function mi({toolCall:e,tools:t,toolsContext:r,callId:a,messages:o,abortSignal:n,timeout:i,experimental_sandbox:s,onPreliminaryToolResult:l,onToolExecutionStart:u,onToolExecutionEnd:d,executeToolInTelemetryContext:c=async({execute:e})=>await e(),runInTracingChannelSpan:p=async({execute:e})=>await e()}){let{toolName:h,toolCallId:f,input:m}=e,g=fJ(t,h);if(!lj(g))return;let y=await mn({toolName:h,context:fJ(r,h),contextSchema:g.contextSchema}),v={toolCall:e,messages:o,toolContext:y},b={callId:a,...v};return await p({type:"executeTool",event:b,execute:async()=>{let t;await fY({event:b,callbacks:u});let r=fK(n,function(e,t){if(null!=e&&"number"!=typeof e)return e.tools?.[`${t}Ms`]??e.toolMs}(i,h)),p=0;try{await c({callId:a,toolCallId:f,...v,execute:async()=>{let a=fW();try{for await(let a of lD({tool:g,input:m,options:{toolCallId:f,messages:o,abortSignal:r,context:y,experimental_sandbox:s}}))"preliminary"===a.type?l?.({...e,type:"tool-result",output:a.output,preliminary:!0}):t=a.output}finally{p=fW()-a}}})}catch(r){let t={type:"tool-error",toolCallId:f,toolName:h,input:m,error:r,dynamic:"dynamic"===g.type,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{}};return await fY({event:{...b,toolOutput:t,toolExecutionMs:p},callbacks:d}),{output:t,toolExecutionMs:p}}let w={type:"tool-result",toolCallId:f,toolName:h,input:m,output:t,dynamic:"dynamic"===g.type,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{}};return await fY({event:{...b,toolOutput:w,toolExecutionMs:p},callbacks:d}),{output:w,toolExecutionMs:p}}})}function ms({tools:e,activeTools:t}){return null==e||null==t?e:Object.fromEntries(Object.entries(e).filter(([e])=>t.includes(e)))}function ml(e){return e.map(e=>{var t;if("reasoning"===e.type)return{type:"reasoning",text:e.text,...null!=e.providerOptions?{providerMetadata:e.providerOptions}:{}};let r="object"==typeof(t=e.data)&&null!==t&&"type"in t?"data"===t.type?t.data:t.url:t;return{type:"reasoning-file",file:new f2({data:r instanceof ArrayBuffer?new Uint8Array(r):r instanceof URL?r.toString():r,mediaType:e.mediaType}),...null!=e.providerOptions?{providerMetadata:e.providerOptions}:{}}})}var mu=class{constructor(e){this.initialResponseMessages=e.initialResponseMessages,this.steps=e.steps,this._output=e.output,this.totalUsage=e.totalUsage}get finalStep(){return this.steps.at(-1)}get content(){return this.steps.flatMap(e=>e.content)}get text(){return this.finalStep.text}get files(){return this.steps.flatMap(e=>e.files)}get reasoningText(){return this.finalStep.reasoningText}get reasoning(){return ml(this.finalStep.reasoning)}get toolCalls(){return this.steps.flatMap(e=>e.toolCalls)}get staticToolCalls(){return this.steps.flatMap(e=>e.staticToolCalls)}get dynamicToolCalls(){return this.steps.flatMap(e=>e.dynamicToolCalls)}get toolResults(){return this.steps.flatMap(e=>e.toolResults)}get staticToolResults(){return this.steps.flatMap(e=>e.staticToolResults)}get dynamicToolResults(){return this.steps.flatMap(e=>e.dynamicToolResults)}get sources(){return this.steps.flatMap(e=>e.sources)}get finishReason(){return this.finalStep.finishReason}get rawFinishReason(){return this.finalStep.rawFinishReason}get warnings(){return this.steps.flatMap(e=>e.warnings??[])}get providerMetadata(){return this.finalStep.providerMetadata}get response(){return this.finalStep.response}get responseMessages(){return[...this.initialResponseMessages,...this.steps.flatMap(e=>e.response.messages)]}get request(){return this.finalStep.request}get usage(){return this.totalUsage}get output(){if(null==this._output)throw new p5;return this._output}};function md(e){return"stop"===e||"tool-calls"===e}async function mc(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await s7({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await s7({text:function(e){let t=["ROOT"],r=-1,a=null,o=0;function n(e,o,n){switch(e){case'"':r=o,t.pop(),t.push(n),t.push("INSIDE_STRING");break;case"f":case"t":case"n":r=o,a=o,t.pop(),t.push(n),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(n),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=o,t.pop(),t.push(n),t.push("INSIDE_NUMBER");break;case"{":r=o,t.pop(),t.push(n),t.push("INSIDE_OBJECT_START");break;case"[":r=o,t.pop(),t.push(n),t.push("INSIDE_ARRAY_START")}}function i(e,a){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":r=a,t.pop()}}function s(e,a){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":r=a,t.pop()}}for(let l=0;l<e.length;l++){let u=e[l];switch(t[t.length-1]){case"ROOT":n(u,l,"FINISH");break;case"INSIDE_OBJECT_START":switch(u){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":r=l,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===u&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===u&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===u&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":n(u,l,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":i(u,l);break;case"INSIDE_STRING":switch(u){case'"':t.pop(),r=l;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:r=l}break;case"INSIDE_ARRAY_START":"]"===u?(r=l,t.pop()):(r=l,n(u,l,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(u){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":r=l,t.pop();break;default:r=l}break;case"INSIDE_ARRAY_AFTER_COMMA":n(u,l,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),"u"===u?(o=0,t.push("INSIDE_STRING_UNICODE_ESCAPE")):r=l;break;case"INSIDE_STRING_UNICODE_ESCAPE":(u>="0"&&u<="9"||u>="A"&&u<="F"||u>="a"&&u<="f")&&4==++o&&(t.pop(),r=l);break;case"INSIDE_NUMBER":switch(u){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":r=l;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&s(u,l),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&i(u,l);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&i(u,l);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&s(u,l);break;default:t.pop()}break;case"INSIDE_LITERAL":{let o=e.substring(a,l+1);"false".startsWith(o)||"true".startsWith(o)||"null".startsWith(o)?r=l:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?i(u,l):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&s(u,l))}}}let l=e.slice(0,r+1);for(let r=t.length-1;r>=0;r--)switch(t[r]){case"INSIDE_STRING":l+='"';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":l+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":l+="]";break;case"INSIDE_LITERAL":{let t=e.substring(a,e.length);"true".startsWith(t)?l+="true".slice(t.length):"false".startsWith(t)?l+="false".slice(t.length):"null".startsWith(t)&&(l+="null".slice(t.length))}}return l}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}let mp=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:e})=>e,parsePartialOutput:async({text:e})=>({partial:e}),createElementStreamTransform(){}}),mh=Symbol("ai-sdk-tool-call-input-schema-input");function mf(e,t){return Object.defineProperty(e,mh,{value:t}),e}function mm(e){return mh in e?{value:e[mh]}:void 0}async function mg({toolCall:e,tools:t,repairToolCall:r,refineToolInput:a,messages:o,instructions:n,abortSignal:i}){try{if(null==t){if(e.providerExecuted&&e.dynamic)return await mv({toolCall:await mb(e),refineToolInput:a});throw new ht({toolName:e.toolName})}try{return await mv({toolCall:await mw({toolCall:e,tools:t}),refineToolInput:a})}catch(u){if(null==r||!(ht.isInstance(u)||pG.isInstance(u)))throw u;let s=null;try{i?.throwIfAborted(),s=await my({promise:r({toolCall:e,tools:t,inputSchema:async({toolName:e})=>{let r=fJ(t,e)?.inputSchema;return await s6(r).jsonSchema},instructions:n,system:n,messages:o,error:u,abortSignal:i}),abortSignal:i})}catch(e){throw i?.throwIfAborted(),new hu({cause:e,originalError:u})}if(null==s)throw u;let l=await mv({toolCall:await mw({toolCall:s,tools:t}),refineToolInput:a});return i?.throwIfAborted(),l}}catch(n){i?.throwIfAborted();let r=await s7({text:e.input}),a=r.success?r.value:e.input,o=fJ(t,e.toolName);return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:a,dynamic:!0,invalid:!0,error:n,title:o?.title,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,...o?.metadata!=null?{toolMetadata:o.metadata}:{}}}}async function my({promise:e,abortSignal:t}){return null==t?await e:await new Promise((r,a)=>{let o=()=>{t.removeEventListener("abort",n)},n=()=>{o(),a(t.reason)};Promise.resolve(e).then(e=>{o(),r(e)}).catch(e=>{o(),a(e)}),t.addEventListener("abort",n,{once:!0}),t.aborted&&n()})}async function mv({toolCall:e,refineToolInput:t}){let r=fJ(t,e.toolName);if(null==r)return e;let a={...e,input:await r(e.input)},o=mm(e);return null==o?a:mf(a,o.value)}async function mb(e){let t=""===e.input.trim()?{success:!0,value:{}}:await s7({text:e.input});if(!1===t.success)throw new pG({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 mw({toolCall:e,tools:t}){let r=e.toolName,a=fJ(t,r);
99if(null==a){if(e.providerExecuted&&e.dynamic)return await mb(e);throw new ht({toolName:e.toolName,availableTools:Object.keys(t)})}let o=s6(a.inputSchema),n=""===e.input.trim()?await s5({value:{},schema:o}):await s7({text:e.input,schema:o});if(!1===n.success)throw new pG({toolName:r,toolInput:e.input,cause:n.error});return mf("dynamic"===a.type?{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:n.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,...null!=a.metadata?{toolMetadata:a.metadata}:{},dynamic:!0,title:a.title}:{type:"tool-call",toolCallId:e.toolCallId,toolName:r,input:n.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,...null!=a.metadata?{toolMetadata:a.metadata}:{},title:a.title},n.rawValue)}function mx({callSettings:e,stepSettings:t}){return fl({maxOutputTokens:t?.maxOutputTokens??e.maxOutputTokens,temperature:t?.temperature??e.temperature,topP:t?.topP??e.topP,topK:t?.topK??e.topK,presencePenalty:t?.presencePenalty??e.presencePenalty,frequencyPenalty:t?.frequencyPenalty??e.frequencyPenalty,stopSequences:t?.stopSequences??e.stopSequences,seed:t?.seed??e.seed,reasoning:t?.reasoning??e.reasoning})}async function m_({tools:e,toolCall:t,toolApproval:r,messages:a,toolsContext:o,runtimeContext:n}){if(null!=r&&"function"==typeof r)return mI(await r({toolCall:t,tools:e,toolsContext:o,messages:a,runtimeContext:n}));let i=t.toolName,s=fJ(e,i),l=t.input,u=fJ(r,i);return null!=u?mI("function"==typeof u?await u(l,{toolCallId:t.toolCallId,messages:a,toolContext:await mn({toolName:i,context:fJ(o,i),contextSchema:s?.contextSchema}),runtimeContext:n}):u):s?.needsApproval==null?{type:"not-applicable"}:("function"==typeof s.needsApproval?await s.needsApproval(l,{toolCallId:t.toolCallId,messages:a,context:await mn({toolName:i,context:fJ(o,i),contextSchema:s?.contextSchema})}):s.needsApproval)?{type:"user-approval"}:{type:"not-applicable"}}function mI(e){return void 0===e?{type:"not-applicable"}:"string"==typeof e?{type:e}:e}function mk({context:e,includeContext:t}){return null==e?{}:Object.fromEntries(Object.entries(e).filter(([e])=>t?.[e]===!0))}function mS({toolsContext:e,includeToolsContext:t}){return null==t?{}:Object.fromEntries(Object.entries(e).map(([e,r])=>[e,mT({toolName:e,toolContext:r,includeToolsContext:t})]))}function mT({toolName:e,toolContext:t,includeToolsContext:r}){return mk({context:t,includeContext:r?.[e]})}function mE(...e){return async t=>{await Promise.allSettled(e.map(async e=>{await e?.(t)}))}}let mC="ai:telemetry";function mM(){return void 0!==g.default&&g.default.release?.name==="node"}async function mA(){if(mM())return null==o&&(o=Promise.resolve(mO("node:diagnostics_channel"))),o}function mO(e){let t=globalThis.process;try{return t?.getBuiltinModule?.(e)}catch{return}}async function mR(e,t){let r,a,o,n=(await mA())?.tracingChannel?.(mC);if(null==n||!1===n.hasSubscribers)return await t();let i=!1,s=!1;try{return await n.tracePromise(()=>{try{r=Promise.resolve(t())}catch(e){r=Promise.reject(e)}return r=r.then(e=>(a=e,i=!0,e),e=>{throw o=e,s=!0,e})},e)}catch{if(s)throw o;if(i)return a;if(null!=r)return await r;return await t()}}function mP(e,t,r=!1){let a=Object.assign(Object.create(Object.getPrototypeOf(e)),e,{recordInputs:t.recordInputs,recordOutputs:t.recordOutputs,functionId:t.functionId});return r&&null!=e&&"object"==typeof e&&"runtimeContext"in e&&(a.runtimeContext=mk({context:e.runtimeContext,includeContext:t.includeRuntimeContext})),r&&null!=e&&"object"==typeof e&&("toolsContext"in e?a.toolsContext=mS({toolsContext:e.toolsContext,includeToolsContext:t.includeToolsContext}):"toolContext"in e&&null!=e.toolContext&&"toolCall"in e&&null!=e.toolCall&&"object"==typeof e.toolCall&&"toolName"in e.toolCall&&(a.toolContext=mT({toolName:e.toolCall.toolName,toolContext:e.toolContext,includeToolsContext:t.includeToolsContext}))),a}function m$({telemetry:e}){if(e?.isEnabled===!1)return{};let t=e?.integrations,r=null!=t?ip(t):globalThis.AI_SDK_TELEMETRY_INTEGRATIONS??[],a={recordInputs:e?.recordInputs,recordOutputs:e?.recordOutputs,functionId:e?.functionId,includeRuntimeContext:e?.includeRuntimeContext,includeToolsContext:e?.includeToolsContext},o=(e,t)=>{let o=r.map(r=>{let a=r[e]??(null==t?void 0:r[t]);return"function"==typeof a?a.bind(r):void 0}
99).filter(Boolean).map(e=>t=>e(mP(t,a)));if(0===o.length)return;let n=mE(...o);return async e=>{await n(e)}},n=o("onStepEnd"),i=o("onStepFinish"),s=r.map(e=>e.executeLanguageModelCall?.bind(e)).filter(Boolean),l=r.map(e=>e.executeTool?.bind(e)).filter(Boolean);return{runInTracingChannelSpan:async({type:e,event:t,execute:r})=>await mR({type:e,event:mP(t,a,!0)},r),startTracingChannelContext:({type:e,event:t,completion:r})=>(function({message:e,completion:t}){let r;if(!mM())return void Promise.resolve(t).catch(()=>{});let a=mO("node:diagnostics_channel"),o=mO("node:async_hooks"),n=a?.tracingChannel?.(mC);if(null==n||!1===n.hasSubscribers||null==o)return void Promise.resolve(t).catch(()=>{});let i=!1,s=e=>{try{e()}catch{}},l=({result:t,error:r})=>{i||(i=!0,void 0!==r&&(e.error=r,s(()=>n.error.publish(e))),void 0!==t&&(e.result=t),s(()=>n.asyncEnd.publish(e)))};return s(()=>{n.start.runStores(e,()=>{r=new o.AsyncResource("ai.telemetry")})}),s(()=>n.end.publish(e)),Promise.resolve(t).then(e=>l({result:e}),e=>l({error:e})),{run:e=>null==r?e():r.runInAsyncScope(e)}})({message:{type:e,event:mP(t,a,!0)},completion:r}),onStart:o("onStart"),onStepStart:o("onStepStart"),onLanguageModelCallStart:o("onLanguageModelCallStart"),onLanguageModelCallEnd:o("onLanguageModelCallEnd"),onToolExecutionStart:o("onToolExecutionStart"),onToolExecutionEnd:o("onToolExecutionEnd"),onStepEnd:null==n&&null==i?void 0:mE(n,i),onObjectStepStart:o("onObjectStepStart"),onObjectStepEnd:o("onObjectStepEnd"),onEmbedStart:o("onEmbedStart"),onEmbedEnd:o("onEmbedEnd"),onRerankStart:o("onRerankStart"),onRerankEnd:o("onRerankEnd"),experimental_onDecideStart:o("experimental_onDecideStart","experimental_onEvaluateStart"),experimental_onDecisionModelCallStart:o("experimental_onDecisionModelCallStart","experimental_onEvaluationModelCallStart"),experimental_onDecisionModelCallEnd:o("experimental_onDecisionModelCallEnd","experimental_onEvaluationModelCallEnd"),experimental_onDecideEnd:o("experimental_onDecideEnd","experimental_onEvaluateEnd"),experimental_onStreamTranscriptionStart:o("experimental_onStreamTranscriptionStart"),experimental_onStreamTranscriptionEnd:o("experimental_onStreamTranscriptionEnd"),onEnd:o("onEnd"),onAbort:o("onAbort"),onError:o("onError"),executeLanguageModelCall:async({execute:e,...t})=>{let r=mP(t,a),o=e;for(let e of s){let t=o;o=()=>e({...r,execute:t})}return await mR({type:"languageModelCall",event:r},o)},executeTool:async({execute:e,...t})=>{let r=mP(t,a),o=e;for(let e of l){let t=o;o=()=>e({...r,execute:t})}return await o()}}}var mN=class{constructor({callId:e,stepNumber:t,provider:r,modelId:a,runtimeContext:o,toolsContext:n,content:i,finishReason:s,rawFinishReason:l,usage:u,performance:d,warnings:c,request:p,response:h,providerMetadata:f}){this.callId=e,this.stepNumber=t,this.model={provider:r,modelId:a},this.runtimeContext=o,this.toolsContext=n,this.content=i,this.finishReason=s,this.rawFinishReason=l,this.usage=u,this.performance=d,this.warnings=c,this.request=p,this.response=h,this.providerMetadata=f}get text(){return this.content.filter(e=>"text"===e.type).map(e=>e.text).join("")}get reasoning(){return this.content.filter(e=>"reasoning"===e.type||"reasoning-file"===e.type).map(e=>"reasoning"===e.type?{type:"reasoning",text:e.text,...null!=e.providerMetadata?{providerOptions:e.providerMetadata}:{}}:{type:"reasoning-file",data:e.file.base64,mediaType:e.file.mediaType,...null!=e.providerMetadata?{providerOptions:e.providerMetadata}:{}})}get reasoningText(){let e;return(e=this.reasoning.map(e=>"text"in e?e.text:"").join("")).length>0?e:void 0}get files(){return this.content.filter(e=>"file"===e.type).map(e=>e.file)}get sources(){return this.content.filter(e=>"source"===e.type)}get toolCalls(){return this.content.filter(e=>"tool-call"===e.type)}get staticToolCalls(){return this.toolCalls.filter(e=>!0!==e.dynamic)}get dynamicToolCalls(){return this.toolCalls.filter(e=>!0===e.dynamic)}get toolResults(){return this.content.filter(e=>"tool-result"===e.type)}get staticToolResults(){return this.toolResults.filter(e=>!0!==e.dynamic)}get dynamicToolResults(){return this.toolResults.filter(e=>!0===e.dynamic)}};function mz({step:e,includeRuntimeContext:t,includeToolsContext:r}){return new mN({callId:e.callId,stepNumber:e.stepNumber,provider:e.model.provider,modelId:e.model.modelId,runtimeContext:mk({context:e.runtimeContext,includeContext:t}),toolsContext:mS({toolsContext:e.toolsContext,includeToolsContext:r}),content:e.content,finishReason:e.finishReason,rawFinishReason:e.rawFinishReason,usage:e.usage,performance:e.performance,warnings:e.warnings,request:e.request,response:e.response,providerMetadata:e.providerMetadata})}function mj({telemetry:e,includeRuntimeContext:t,includeToolsContext:r}){let a=m$({telemetry:e});return{...a,onStart:e=>a.onStart?.({...e,runtimeContext:mk({context:e.runtimeContext,includeContext:t}),toolsContext:mS({toolsContext:e.toolsContext,includeToolsContext:r})}),onStepStart:e=>a.onStepStart?.({...e,runtimeContext:mk({context:e.runtimeContext,includeContext:t}),steps:e.steps.map(e=>mz({step:e,includeRuntimeContext:t,includeToolsContext:r})),toolsContext:mS({toolsContext:e.toolsContext,includeToolsContext:r})}),onStepEnd:e=>a.onStepEnd?.(mz({step:e,includeRuntimeContext:t,includeToolsContext:r})),onStepFinish:e=>a.onStepEnd?.(mz({step:e,includeRuntimeContext:t,includeToolsContext:r})),onEnd:e=>{let o;return a.onEnd?.((o=e.steps.map(e=>mz({step:e,includeRuntimeContext:t,includeToolsContext:r})),{...e,runtimeContext:mk({context:e.runtimeContext,includeContext:t}),steps:o,finalStep:o.at(-1),toolsContext:mS({toolsContext:e.toolsContext,includeToolsContext:r})}))},onAbort:e=>a.onAbort?.({...e,steps:e.steps.map(e=>mz({step:e,includeRuntimeContext:t,includeToolsContext:r}))}),onToolExecutionStart:e=>a.onToolExecutionStart?.({...e,toolContext:mT({toolName:e.toolCall.toolName,toolContext:e.toolContext,includeToolsContext:r})}),onToolExecutionEnd:e=>a.onToolExecutionEnd?.({...e,toolContext:mT({toolName:e.toolCall.toolName,toolContext:e.toolContext,includeToolsContext:r})})}}function mD(e){return({steps:t})=>t.length===e}async function mq({stopConditions:e,steps:t}){return(await Promise.all(e.map(e=>e({steps:t})))).some(e=>e)}function mU(e,t){return null==e&&null==t?void 0:(e??0)+(t??0)}function mL(e,t){if(e===t)return!0;
99if(null==e||null==t)return!1;if("object"!=typeof e&&"object"!=typeof t)return e===t;if(e.constructor!==t.constructor)return!1;if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(Array.isArray(e)){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!mL(e[r],t[r]))return!1;return!0}let r=Object.keys(e),a=Object.keys(t);if(r.length!==a.length)return!1;for(let o of r)if(!a.includes(o)||!mL(e[o],t[o]))return!1;return!0}async function mF({content:e,tools:t}){let r=[],a=new Map,o=[];for(let r of e)if("source"!==r.type&&("tool-result"!==r.type&&"tool-error"!==r.type||r.providerExecuted)&&("text"!==r.type||0!==r.text.length))switch(r.type){case"text":o.push({type:"text",text:r.text,providerOptions:r.providerMetadata});break;case"custom":o.push({type:"custom",kind:r.kind,providerOptions:r.providerMetadata});break;case"reasoning":o.push({type:"reasoning",text:r.text,providerOptions:r.providerMetadata});break;case"file":o.push({type:"file",data:r.file.base64,mediaType:r.file.mediaType,providerOptions:r.providerMetadata});break;case"reasoning-file":o.push({type:"reasoning-file",data:r.file.base64,mediaType:r.file.mediaType,providerOptions:r.providerMetadata});break;case"tool-call":a.has(r.toolCallId)||a.set(r.toolCallId,a.size),o.push({type:"tool-call",toolCallId:r.toolCallId,toolName:r.toolName,input:r.invalid&&"object"!=typeof r.input?{}:r.input,providerExecuted:r.providerExecuted,providerOptions:r.providerMetadata});break;case"tool-result":{let e=await fi({toolCallId:r.toolCallId,input:r.input,tool:fJ(t,r.toolName),output:r.output,errorMode:"none"});o.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,output:e,providerOptions:r.providerMetadata});break}case"tool-error":{let e=await fi({toolCallId:r.toolCallId,input:r.input,tool:fJ(t,r.toolName),output:r.error,errorMode:"json"});o.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,output:e,providerOptions:r.providerMetadata});break}case"tool-approval-request":let e=mm(r.toolCall);o.push({type:"tool-approval-request",approvalId:r.approvalId,toolCallId:r.toolCall.toolCallId,...null!=r.reason?{reason:r.reason}:{},isAutomatic:r.isAutomatic,...null!=r.signature?{signature:r.signature}:{},...null!=e&&!mL(e.value,r.toolCall.input)?{inputSchemaInput:e.value}:{}})}o.length>0&&r.push({role:"assistant",content:o});let n=[];for(let r of e){if("tool-approval-response"!==r.type&&"tool-result"!==r.type&&"tool-error"!==r.type)continue;if("tool-approval-response"===r.type){n.push({type:"tool-approval-response",approvalId:r.approvalId,approved:r.approved,reason:r.reason,providerExecuted:r.providerExecuted}),!1===r.approved&&n.push({type:"tool-result",toolCallId:r.toolCall.toolCallId,toolName:r.toolCall.toolName,output:{type:"execution-denied",reason:r.reason}});continue}if(r.providerExecuted)continue;let e=await fi({toolCallId:r.toolCallId,input:r.input,tool:fJ(t,r.toolName),output:"tool-result"===r.type?r.output:r.error,errorMode:"tool-error"===r.type?"text":"none"});n.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,output:e,...null!=r.providerMetadata?{providerOptions:r.providerMetadata}:{}})}return n.length>0&&r.push({role:"tool",content:function({toolResultContent:e,toolCallOrder:t}){let r=e.filter(e=>"tool-result"===e.type).map((e,t)=>({part:e,index:t})).sort((e,r)=>{let a=t.get(e.part.toolCallId),o=t.get(r.part.toolCallId);return null==a&&null==o?e.index-r.index:null==a?1:null==o?-1:a-o||e.index-r.index}).map(({part:e})=>e),a=0;return e.map(e=>"tool-result"===e.type?r[a++]:e)}({toolResultContent:n,toolCallOrder:a})}),r}let mZ=new TextEncoder;function mB(e){return iS(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}async function mV(e){return mB(new Uint8Array(await crypto.subtle.digest("SHA-256",mZ.encode(function e(t){return null==t||"object"!=typeof t?JSON.stringify(t):Array.isArray(t)?`[${t.map(t=>void 0===t?"null":e(t)).join(",")}]`:`{${Object.keys(t).sort().map(r=>`${JSON.stringify(r)}:${e(t[r])}`).join(",")}}`}(e)))))}let mG=new TextEncoder;async function mH(e){let t="string"==typeof e?mG.encode(e):e;return crypto.subtle.importKey("raw",t,{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}function mJ(e,t,r,a){return mG.encode(JSON.stringify(["ai-sdk-tool-approval-v1",e,t,r,a]))}async function mK({secret:e,approvalId:t,toolCallId:r,toolName:a,input
99:o}){let n=await mH(e),i=mJ(t,r,a,await mV(o));return mB(new Uint8Array(await crypto.subtle.sign("HMAC",n,i)))}async function mW({secret:e,signature:t,approvalId:r,toolCallId:a,toolName:o,input:n}){let i=await mH(e),s=await mV(n),l=ik(t),u=mJ(r,a,o,s);if(await crypto.subtle.verify("HMAC",i,l,u))return!0;if(!r.includes("\n")&&!a.includes("\n")&&!o.includes("\n")){let e=mG.encode(`${r} 100${a} 101${o} 102${s}`);return crypto.subtle.verify("HMAC",i,l,e)}return!1}async function mY({secret:e,approvalId:t,toolCallId:r,toolName:a,input:o}){if(null!=e)return mK({secret:e,approvalId:t,toolCallId:r,toolName:a,input:o})}async function mX({approvedToolApprovals:e,tools:t,toolApproval:r,messages:a,toolsContext:o,runtimeContext:n,toolApprovalSecret:i,refineToolInput:s}){let l=[],u=[],d=[];for(let c of e){let{approvalRequest:e,toolCall:p}=c,h=fJ(t,p.toolName);if(null!=i){if(null==e.signature)throw new pF({approvalId:e.approvalId,toolCallId:p.toolCallId,reason:"missing signature"});if(!await mW({secret:i,signature:e.signature,approvalId:e.approvalId,toolCallId:p.toolCallId,toolName:p.toolName,input:p.input}))throw new pF({approvalId:e.approvalId,toolCallId:p.toolCallId,reason:"invalid signature"})}if(lj(h)&&null!=h.inputSchema){let t,r=Object.prototype.hasOwnProperty.call(e,"inputSchemaInput"),a=await s5({value:r?e.inputSchemaInput:p.input,schema:s6(h.inputSchema)});if(a.success)try{let e=await mv({toolCall:{...p,input:a.value},refineToolInput:s});mL(structuredClone(e.input),structuredClone(p.input))||(t=Error("Approved tool input does not match the validated schema output."))}catch(e){t=e}else t=a.error;if(null!=t){d.push({...c,error:new pG({toolName:p.toolName,toolInput:JSON.stringify(p.input),cause:t})});continue}}let f=await m_({tools:t,toolApproval:r,toolCall:p,messages:a,toolsContext:o,runtimeContext:n});"denied"===f.type?u.push({...c,approvalResponse:{...c.approvalResponse,approved:!1,reason:f.reason??c.approvalResponse.reason}}):l.push(c)}return{approvedToolApprovals:l,deniedToolApprovals:u,invalidToolApprovals:d}}let mQ=sp({prefix:"aitxt",size:24}),m0=sp({prefix:"call",size:24});async function m1({model:e,tools:t,toolChoice:r,instructions:a,system:o,prompt:n,messages:i,allowSystemInMessages:s,maxRetries:l,abortSignal:u,timeout:d,headers:c,stopWhen:p=mD(1),experimental_sandbox:h,output:f,toolApproval:m,experimental_toolCallers:g,experimental_toolApprovalSecret:y,experimental_telemetry:v,telemetry:b=v,providerOptions:w,activeTools:x,toolOrder:_,prepareStep:I,experimental_repairToolCall:k,repairToolCall:S=k,experimental_refineToolInput:T,experimental_download:E,runtimeContext:C={},toolsContext:M={},experimental_include:A,include:O=A,_internal:{generateId:R=mQ,generateCallId:P=m0,now:$=fW}={},onStart:N,experimental_onStart:z,onStepStart:D,experimental_onStepStart:q,onLanguageModelCallStart:U,experimental_onLanguageModelCallStart:L,onLanguageModelCallEnd:F,experimental_onLanguageModelCallEnd:Z,onToolExecutionStart:B,onToolExecutionEnd:V,experimental_onToolCallStart:G,experimental_onToolCallFinish:H,onStepEnd:J,onStepFinish:K,onFinish:W,onEnd:Y=W,...X}){O={requestBody:O?.requestBody??!1,requestMessages:O?.requestMessages??!1,responseBody:O?.responseBody??!1};let Q=hQ(e),ee=f3({tools:t,toolCallers:g}),et=ma({tools:t,toolCallers:ee}),er=ip(p),ea=N??z,eo=D??q,en=U??L,ei=F??Z,es=B??G,el=V??H,eu=J??K,ed=[];null!=ff(d)&&ed.push({type:"unsupported",feature:"timeout.firstChunkMs",details:"The firstChunkMs timeout is only supported by streaming functions."}),null!=fm(d)&&ed.push({type:"unsupported",feature:"timeout.chunkMs",details:"The chunkMs timeout is only supported by streaming functions."}),ed.length>0&&hU({warnings:ed,provider:Q.provider,model:Q.modelId});let ec=fp(d),ep=fh(d),eh=null!=ep?new AbortController:void 0,ef=fK(u,ec,eh?.signal),{maxRetries:em,retry:eg}=fX({maxRetries:l,abortSignal:ef}),ey=fl(X),ev=iL(c??{},`ai/${h4}`),eb=await fL({instructions:a,system:o,prompt:n,messages:i,allowSystemInMessages:s}),ew=P(),ex=mj({telemetry:b,includeRuntimeContext:b?.includeRuntimeContext,includeToolsContext:b?.includeToolsContext}),e_=ex.runInTracingChannelSpan??(async({execute:e})=>await e()),eI={callId:ew,operationId:"ai.generateText",provider:Q.provider,modelId:Q.modelId,instructions:eb.instructions,messages:eb.messages,tools:t,toolChoice:r,activeTools:x,toolOrder:_,maxOutputTokens:ey.maxOutputTokens,temperature:ey.temperature,topP:ey.topP,topK:ey.topK,presencePenalty:ey.presencePenalty,frequencyPenalty:ey.frequencyPenalty,stopSequences:ey.stopSequences,seed:ey.seed,reasoning:ey.reasoning,maxRetries:em,timeout:d,headers:ev,providerOptions:w,output:f,runtimeContext:C,toolsContext:M},ek=async()=>{await fY({event:eI,callbacks:[ea,ex.onStart]});try{let e,a,o=eb.messages,n=[],{approvedToolApprovals:i,deniedToolApprovals:s}=f1({messages:o}),{approvedToolApprovals:l,deniedToolApprovals:u,invalidToolApprovals:c}=await mX({approvedToolApprovals:i.filter(e=>!e.toolCall.providerExecuted),tools:t,toolApproval:m,messages:o,toolsContext:M,runtimeContext:C,toolApprovalSecret:y,refineToolInput:T}),p=[...s,...u].filter(e=>null==e.existingToolResult);if(p.length>0||l.length>0||c.length>0){let e=await m2({toolCalls:l.map(e=>e.toolCall),tools:t,callId:ew,messages:o,abortSignal:ef,timeout:d,experimental_sandbox:h,toolsContext:M,onToolExecutionStart:e=>fY({event:e,callbacks:[es,ex.onToolExecutionStart]}),onToolExecutionEnd:e=>fY({event:e,callbacks:[el,ex.onToolExecutionEnd]}),executeToolInTelemetryContext:ex.executeTool,runInTracingChannelSpan:e_}),r=[];for(let a of e){let e=a.output,o=await fi({toolCallId:e.toolCallId,input:e.input,tool:fJ(t,e.toolName),output:"tool-result"===e.type?e.output:e.error,errorMode:"tool-error"===e.type?"text":"none"});
102r.push({type:"tool-result",toolCallId:e.toolCallId,toolName:e.toolName,output:o})}for(let e of c)r.push({type:"tool-result",toolCallId:e.toolCall.toolCallId,toolName:e.toolCall.toolName,output:await fi({toolCallId:e.toolCall.toolCallId,input:e.toolCall.input,tool:fJ(t,e.toolCall.toolName),output:e.error,errorMode:"text"})});for(let e of p)r.push({type:"tool-result",toolCallId:e.toolCall.toolCallId,toolName:e.toolCall.toolName,output:{type:"execution-denied",reason:e.approvalResponse.reason,...e.toolCall.providerExecuted&&{providerOptions:{openai:{approvalId:e.approvalResponse.approvalId}}}}});n.push({role:"tool",content:r})}let g=fl(X),v=[],b=[],k=[],A=[],P=[],N=eb.instructions,z=[...o,...n],D=new Map;do{P.length>0&&ef?.throwIfAborted();let a=fQ({abortController:eh,label:"Step",timeoutMs:ep}),i=P.length;try{await e_({type:"step",event:{callId:ew,stepNumber:i},execute:async()=>{let a=[...n,...P.flatMap(e=>e.response.messages)],s=z,l=await I?.({model:Q,steps:P,stepNumber:P.length,instructions:N,initialInstructions:eb.instructions,messages:s,initialMessages:o,responseMessages:a,runtimeContext:C,toolsContext:M,experimental_sandbox:h}),u=l?.experimental_sandbox??h,c=hQ(l?.model??Q),p=l?.instructions??l?.system??N;C=l?.runtimeContext??C,M=l?.toolsContext??M;let{executionTools:q,modelTools:U,toolCallerMessages:L}=f5({tools:et(ms({tools:t,activeTools:l?.activeTools??x}),{toolsContext:M,experimental_sandbox:u}),toolCallers:ee}),F=l?.toolOrder??_,Z=await fd({tools:U,toolOrder:F,toolsContext:M,experimental_sandbox:u}),B=fu({toolChoice:l?.toolChoice??r}),V=f8({messages:l?.messages??s,toolCallerMessages:L}),G=await h7({prompt:{instructions:p,messages:V},supportedUrls:await c.supportedUrls,download:E,abortSignal:ef,provider:c.provider.split(".")[0]}),H=h9(w,l?.providerOptions),J=mx({callSettings:g,stepSettings:l});await fY({event:{callId:ew,provider:c.provider,modelId:c.modelId,stepNumber:i,instructions:p,messages:V,tools:t,toolChoice:l?.toolChoice??r,activeTools:l?.activeTools??x,toolOrder:F,steps:[...P],providerOptions:H,output:f,runtimeContext:C,promptMessages:G,stepTools:Z,stepToolChoice:B,toolsContext:M},callbacks:[eo,ex.onStepStart]});let K={callId:ew,...{provider:c.provider,modelId:c.modelId,instructions:p,messages:V,tools:Z,...J}},W=$();await fY({event:K,callbacks:[en,ex.onLanguageModelCallStart]});let Y=ex.executeLanguageModelCall??(async({execute:e})=>await e());e=await eg(async()=>{let e=await Y({...K,execute:async()=>await c.doGenerate({...J,tools:Z,toolChoice:B,responseFormat:await f?.responseFormat,prompt:G,providerOptions:H,abortSignal:ef,headers:ev})}),t={id:e.response?.id??R(),timestamp:e.response?.timestamp??new Date,modelId:e.response?.modelId??c.modelId,headers:e.response?.headers,body:e.response?.body};return{...e,response:t}});let X=$()-W,er=fZ(e.usage),ea=await Promise.all(e.content.filter(e=>"tool-call"===e.type).map(e=>mg({toolCall:e,tools:U,repairToolCall:S,refineToolInput:T,instructions:p,messages:V,abortSignal:ef}))),ed={},ec={},ep=new Set,eh=new WeakMap,em=await f9({content:e.content,toolCalls:ea,toolOutputs:[],toolApprovalRequests:[],toolApprovalResponses:[],tools:t,abortSignal:ef,generatedFileDataCache:eh});await fY({event:{callId:ew,provider:c.provider,modelId:e.response.modelId,finishReason:e.finishReason.unified,usage:er,content:em,responseId:e.response.id,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},performance:{responseTimeMs:X,effectiveOutputTokensPerSecond:f0({tokens:er.outputTokens,durationMs:X}),outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:f0({tokens:mU(er.inputTokens,er.outputTokens),durationMs:X}),timeToFirstOutputMs:void 0}},callbacks:[ei,ex.onLanguageModelCallEnd]});let ey="required"===B.type||"tool"===B.type?B:void 0;if(null!=ey&&!ea.some(e=>"required"===ey.type||e.toolName===ey.toolName))throw new hh({toolChoice:ey,finishReason:e.finishReason.unified,provider:c.provider,modelId:c.modelId,content:e.content});for(let e of ea){if(e.invalid)continue;let t=fJ(q,e.toolName);if(null==t)continue;if(null!=t.onInputStart||null!=t.onInputAvailable){let r=await mn({toolName:e.toolName,context:fJ(M,e.toolName),contextSchema:t.contextSchema});null!=t.onInputStart&&await t.onInputStart({toolCallId:e.toolCallId,messages:V,abort
102Signal:ef,context:r}),null!=t.onInputAvailable&&await t.onInputAvailable({input:e.input,toolCallId:e.toolCallId,messages:V,abortSignal:ef,context:r})}let r=await m_({tools:q,toolApproval:m,toolCall:e,messages:V,toolsContext:M,runtimeContext:C});if("not-applicable"===r.type)continue;let a=R(),o=await mY({secret:y,approvalId:a,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input});switch(r.type){case"user-approval":ed[e.toolCallId]={type:"tool-approval-request",approvalId:a,toolCall:e,...null!=r.reason?{reason:r.reason}:{},...null!=o?{signature:o}:{}},ep.add(e.toolCallId);break;case"approved":ed[e.toolCallId]={type:"tool-approval-request",approvalId:a,toolCall:e,isAutomatic:!0,...null!=o?{signature:o}:{}},ec[e.toolCallId]={type:"tool-approval-response",approvalId:a,toolCall:e,approved:!0,reason:r.reason,providerExecuted:e.providerExecuted};break;case"denied":ed[e.toolCallId]={type:"tool-approval-request",approvalId:a,toolCall:e,isAutomatic:!0,...null!=o?{signature:o}:{}},ec[e.toolCallId]={type:"tool-approval-response",approvalId:a,toolCall:e,approved:!1,reason:r.reason,providerExecuted:e.providerExecuted},ep.add(e.toolCallId)}}let eI=ea.filter(e=>e.invalid&&e.dynamic&&!e.providerExecuted);for(let e of(b=[],eI))b.push({type:"tool-error",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,error:j(e.error),dynamic:!0});v=ea.filter(e=>!e.providerExecuted),A=(k=Object.values(ec)).filter(e=>!1===e.approved);let ek={};if(null!=q&&md(e.finishReason.unified))for(let e of(await m2({toolCalls:v.filter(e=>!e.invalid&&!ep.has(e.toolCallId)),tools:q,callId:ew,messages:V,abortSignal:ef,timeout:d,experimental_sandbox:u,toolsContext:M,onToolExecutionStart:e=>fY({event:e,callbacks:[es,ex.onToolExecutionStart]}),onToolExecutionEnd:e=>fY({event:e,callbacks:[el,ex.onToolExecutionEnd]}),executeToolInTelemetryContext:ex.executeTool,runInTracingChannelSpan:e_})))ek[e.output.toolCallId]=e.toolExecutionMs,b.push(e.output);let eS=$()-W,eT={effectiveOutputTokensPerSecond:f0({tokens:er.outputTokens,durationMs:X}),outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:f0({tokens:mU(er.inputTokens,er.outputTokens),durationMs:X}),stepTimeMs:eS,responseTimeMs:X,toolExecutionMs:ek,timeToFirstOutputMs:void 0};for(let t of ea){if(!t.providerExecuted)continue;let r=fJ(q,t.toolName);r?.type==="provider"&&r.supportsDeferredResults&&!e.content.some(e=>"tool-result"===e.type&&e.toolCallId===t.toolCallId)&&D.set(t.toolCallId,{toolName:t.toolName})}for(let t of e.content)"tool-result"===t.type&&D.delete(t.toolCallId);let eE=await f9({content:e.content,toolCalls:ea,toolOutputs:b,toolApprovalRequests:Object.values(ed),toolApprovalResponses:k,tools:t,abortSignal:ef,generatedFileDataCache:eh}),eC=await mF({content:eE,tools:t}),eM={...e.request,body:O.requestBody?e.request?.body:void 0,messages:O.requestMessages?h2(V):void 0},eA={...e.response,messages:h2(eC),body:O.responseBody?e.response?.body:void 0},eO=new mN({callId:ew,stepNumber:i,provider:c.provider,modelId:c.modelId,runtimeContext:C,content:eE,finishReason:e.finishReason.unified,rawFinishReason:e.finishReason.raw,usage:er,performance:eT,warnings:e.warnings,providerMetadata:e.providerMetadata,request:eM,response:eA,toolsContext:M});return hU({warnings:e.warnings??[],provider:c.provider,model:c.modelId}),P.push(eO),N=p,z=[...V,...eC],await fY({event:eO,callbacks:[eu,ex.onStepEnd]}),eO}})}finally{null!=a&&clearTimeout(a)}}while(b.length+A.length===v.length&&(v.length>0||D.size>0)&&!await mq({stopConditions:er,steps:P}))let q=P[P.length-1],U=P.reduce((e,t)=>fV(e,t.usage),{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}),L=P.flatMap(e=>e.files),F=P.flatMap(e=>e.sources),Z=P.flatMap(e=>e.toolCalls),B=P.flatMap(e=>e.staticToolCalls),V=P.flatMap(e=>e.dynamicToolCalls),G=P.flatMap(e=>e.toolResults),H=P.flatMap(e=>e.staticToolResults),J=P.flatMap(e=>e.dynamicToolResults),K=P.flatMap(e=>e.warnings??[]);return await fY({event:{callId:ew,stepNumber:q.stepNumber,model:q.model,runtimeContext:q.runtimeContext,finishReason:q.finishReason,rawFinishReason:q.rawFinishReason,usage:U,totalUsage:U,content:P.flatMap(e=>e.content),text:q.text,reasoning:q.reasoning,reasoningText:q.reasoningText,files:L,sources:F,toolCalls:Z,staticToolCalls:B,dynamicToolCalls:V,toolResults:G,staticToolResults:H,dynamicToolResults:J,responseMessages:[...n,...P.flatMap(e=>e.response.messages)],warnings:K,request:q.request,response:q.response,providerMetadata:q.providerMetadata,steps:P,finalStep:q,toolsContext:M},callbacks:[Y,ex.onEnd]}),("stop"===q.finishReason||"tool-calls"!==q.finishReason&&q.text.length>0)&&(a=await (f??mp()).parseCompleteOutput({text:q.text},{response:q.response,usage:q.usage,finishReason:q.finishReason})),new mu({initialResponseMessages:n,steps:P,totalUsage:U,output:a})}catch(e){throw await ex.onError?.({callId:ew,error:e}),fF(e)}};return await e_({type:"generateText",event:eI,execute:ek})}async function m2({toolCalls:e,tools:t,callId:r,messages:a,abortSignal:o,timeout:n,experimental_sandbox:i,toolsContext:s,onToolExecutionStart:l,onToolExecutionEnd:u,executeToolInTelemetryContext:d,runInTracingChannelSpan:c}){return(await Promise.all(e.map(async e=>await mi({toolCall:e,tools:t,callId:r,messages:a,abortSignal:o,timeout:n,experimental_sandbox:i,toolsContext:s,onToolExecutionStart:l,onToolExecutionEnd:u,executeToolInTelemetryContext:d,runInTracingChannelSpan:c})))).filter(e=>null!=e)}function m4(e,t){let r=new Headers(e??{});for(let[e,a]of Object.entries(t))r.has(e)||r.set(e,a);return r}function m6({response:e,status:t,statusText:r,headers:a,stream:o}){let n,i=t??200;null!=a&&e.setHeaders(a),void 0!==r?e.writeHead(i,r):e.writeHead(i);let s=o.getReader(),l=!1,u=()=>{e.writableFinished||(l=!0,n?.(),s.cancel(Error("Client disconnected.")).catch(()=>{}))};return e.once("close",u),e.destroyed&&u(),(async()=>{try{for(;;){let{done:t,value:r}=await s.read();if(t||l||e.destroyed)break;let a=e.write(r),o=e.flush;"function"==typeof o&&o.call(e),a||(await new Promise(t=>{n=t,e.once("drain",t)}),n=void 0)}}finally{e.off("close",u),l||e.destroyed?s.cancel().catch(()=>{}):e.end()}})()}
102function m9({stream:e,keepAliveMs:t}){let r;if(null==t)return e;if(!Number.isFinite(t)||t<=0||t>0x7fffffff)throw Error("keepAliveMs must be a positive finite timer duration no greater than 2147483647");let a=e.getReader(),o=!1,n=()=>{clearTimeout(r),r=void 0},i=e=>{n(),r=setTimeout(()=>{o||(null!=e.desiredSize&&e.desiredSize>0&&e.enqueue(": keep-alive\n\n"),i(e))},t)};return new ReadableStream({start(e){e.enqueue(": stream-open\n\n"),i(e)},pull:e=>a.read().then(t=>{n(),o||(t.done?e.close():(e.enqueue(t.value),i(e)))},e=>{if(n(),!o)throw e}),async cancel(e){o=!0,n(),await a.cancel(e)}})}var m3=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)} 103 104`)},flush(e){e.enqueue("data: [DONE]\n\n")}})}};let m5={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"},m8=de(uf(),fb.optional()),m7=s2(()=>s9(fv([u4({type:dn("text-start"),id:uf(),providerMetadata:fw.optional()}),u4({type:dn("text-delta"),id:uf(),delta:uf(),providerMetadata:fw.optional()}),u4({type:dn("text-end"),id:uf(),providerMetadata:fw.optional()}),u4({type:dn("error"),errorText:uf()}),u4({type:dn("tool-input-start"),toolCallId:uf(),toolName:uf(),providerExecuted:uB().optional(),providerMetadata:fw.optional(),toolMetadata:m8.optional(),dynamic:uB().optional(),title:uf().optional()}),u4({type:dn("tool-input-delta"),toolCallId:uf(),inputTextDelta:uf()}),u4({type:dn("tool-input-available"),toolCallId:uf(),toolName:uf(),input:uW(),providerExecuted:uB().optional(),providerMetadata:fw.optional(),toolMetadata:m8.optional(),dynamic:uB().optional(),title:uf().optional()}),u4({type:dn("tool-input-error"),toolCallId:uf(),toolName:uf(),input:uW(),providerExecuted:uB().optional(),providerMetadata:fw.optional(),toolMetadata:m8.optional(),dynamic:uB().optional(),errorText:uf(),title:uf().optional()}),u4({type:dn("tool-approval-request"),approvalId:uf(),toolCallId:uf(),approvalDescriptor:uW().optional(),inputSchemaInput:uW().optional(),reason:uf().optional(),isAutomatic:uB().optional(),signature:uf().optional()}),u4({type:dn("tool-approval-response"),approvalId:uf(),approved:uB(),reason:uf().optional(),providerExecuted:uB().optional(),providerMetadata:fw.optional()}),u4({type:dn("tool-output-available"),toolCallId:uf(),output:uW(),providerExecuted:uB().optional(),providerMetadata:fw.optional(),toolMetadata:m8.optional(),dynamic:uB().optional(),preliminary:uB().optional()}),u4({type:dn("tool-output-error"),toolCallId:uf(),errorText:uf(),providerExecuted:uB().optional(),providerMetadata:fw.optional(),toolMetadata:m8.optional(),dynamic:uB().optional()}),u4({type:dn("tool-output-denied"),toolCallId:uf()}),u4({type:dn("reasoning-start"),id:uf(),providerMetadata:fw.optional()}),u4({type:dn("reasoning-delta"),id:uf(),delta:uf(),providerMetadata:fw.optional()}),u4({type:dn("reasoning-end"),id:uf(),providerMetadata:fw.optional()}),u4({type:dn("custom"),kind:uf().transform(e=>e),providerMetadata:fw.optional()}),u4({type:dn("source-url"),sourceId:uf(),url:uf(),title:uf().optional(),providerMetadata:fw.optional()}),u4({type:dn("source-document"),sourceId:uf(),mediaType:uf(),title:uf(),filename:uf().optional(),providerMetadata:fw.optional()}),u4({type:dn("file"),url:uf(),mediaType:uf(),providerMetadata:fw.optional()}),u4({type:dn("reasoning-file"),url:uf(),mediaType:uf(),providerMetadata:fw.optional()}),u4({type:d_(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:uf().optional(),data:uW(),transient:uB().optional()}),u4({type:dn("start-step")}),u4({type:dn("finish-step")}),u4({type:dn("reset-step")}),u4({type:dn("start"),messageId:uf().optional(),messageMetadata:uW().optional()}),u4({type:dn("finish"),finishReason:fy(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:uW().optional()}),u4({type:dn("abort"),reason:uf().optional()}),u4({type:dn("message-metadata"),messageMetadata:uW()})])));function ge(){return Object.create(null)}function gt(e){return e.type.startsWith("data-")}function gr(e){return"text"===e.type}function ga(e){return"custom"===e.type}function go(e){return"file"===e.type}function gn(e){return"reasoning-file"===e.type}function gi(e){return"reasoning"===e.type}function gs(e){return e.type.startsWith("tool-")}function gl(e){return"dynamic-tool"===e.type}function gu(e){return gs(e)||gl(e)}function gd(e){return e.type.split("-").slice(1).join("-")}function gc(e){return gl(e)?e.toolName:gd(e)}function gp({lastMessage:e,messageId:t}){let r=e?.role==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},a=ge(),o=r.parts.findLastIndex(e=>"step-start"===e.type),n=0;for(let e of r.parts.slice(o+1)){if(!gu(e))continue;let t=n;gs(e)&&n++,"input-streaming"===e.state&&(a[e.toolCallId]={text:e.rawInput??"",index:t,toolName:"dynamic-tool"===e.type?e.toolName:gd(e),dynamic:"dynamic-tool"===e.type,title:e.title,toolMetadata:e.toolMetadata})}return{message:r,activeTextParts:ge(),activeReasoningParts:ge(),partialToolCalls:a}}function gh({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:a,onError:o,onToolCall:n,onData:i,resetStateOnMessageIdChange:s=!1}){return e.pipeThrough(new TransformStream({async transform(e,l){await a(async({state:a,write:u})=>{function d(){let e=a.message.parts,t=e.length-1;for(;t>=0&&"step-start"!==e[t].type;)t--;return e.slice(t+1)}function c(e){let t=d().filter(gu).find(t=>t.toolCallId===e);if(null==t){let r=a.message.parts;for(let a=r.length-1;a>=0;a--){let o=r[a];if(gu(o)&&o.toolCallId===e){t=o;break}}}if(null==t)throw new hv({chunkType:"tool-invocation",chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function p(e,t){let r=t??d().find(t=>gs(t)&&t.toolCallId===e.toolCallId);if(null!=r){r.state=e.state,r.input=e.input,r.output=e.output,r.errorText=e.errorText,r.rawInput=e.rawInput,r.preliminary=e.preliminary,void 0!==e.title&&(r.title=e.title),void 0!==e.toolMetadata&&(r.toolMetadata=e.toolMetadata),r.providerExecuted=e.providerExecuted??r.providerExecuted;let t=e.providerMetadata;null!=t&&("output-available"===e.state||"output-error"===e.state?r.resultProviderMetadata=t:r.callProviderMetadata=t)}else a.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,...void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary,...null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{}
104,...null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}})}function h(e,t){let r=t??d().find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);if(null!=r){r.state=e.state,r.toolName=e.toolName,r.input=e.input,r.output=e.output,r.errorText=e.errorText,r.rawInput=e.rawInput,r.preliminary=e.preliminary,void 0!==e.title&&(r.title=e.title),void 0!==e.toolMetadata&&(r.toolMetadata=e.toolMetadata),r.providerExecuted=e.providerExecuted??r.providerExecuted;let t=e.providerMetadata;null!=t&&("output-available"===e.state||"output-error"===e.state?r.resultProviderMetadata=t:r.callProviderMetadata=t)}else a.message.parts.push({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:e.input,output:e.output,errorText:e.errorText,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:e.title,...void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{},...null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}})}async function f(e){if(null!=e){let r=null!=a.message.metadata?h9(a.message.metadata,e):e;null!=t&&await s3({value:r,schema:t,context:{field:"message.metadata",entityId:a.message.id}}),a.message.metadata=r}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};a.activeTextParts[e.id]=t,a.message.parts.push(t),u();break}case"text-delta":{let t=a.activeTextParts[e.id];if(null==t)throw new hv({chunkType:"text-delta",chunkId:e.id,message:`Received text-delta for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});t.text+=e.delta,t.providerMetadata=e.providerMetadata??t.providerMetadata,u();break}case"text-end":{let t=a.activeTextParts[e.id];if(null==t)throw new hv({chunkType:"text-end",chunkId:e.id,message:`Received text-end for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});t.state="done",t.providerMetadata=e.providerMetadata??t.providerMetadata,delete a.activeTextParts[e.id],u();break}case"custom":{let t={type:"custom",kind:e.kind,providerMetadata:e.providerMetadata};a.message.parts.push(t),u();break}case"reasoning-start":{let t={type:"reasoning",id:e.id,text:"",providerMetadata:e.providerMetadata,state:"streaming"};a.activeReasoningParts[e.id]=t,a.message.parts.push(t),u();break}case"reasoning-delta":{let t=a.activeReasoningParts[e.id];if(null==t)throw new hv({chunkType:"reasoning-delta",chunkId:e.id,message:`Received reasoning-delta for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});t.text+=e.delta,t.providerMetadata=e.providerMetadata??t.providerMetadata,u();break}case"reasoning-end":{let t=a.activeReasoningParts[e.id];if(null==t)throw new hv({chunkType:"reasoning-end",chunkId:e.id,message:`Received reasoning-end for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});t.providerMetadata=e.providerMetadata??t.providerMetadata,t.state="done",delete a.activeReasoningParts[e.id],u();break}case"file":case"reasoning-file":a.message.parts.push({type:e.type,mediaType:e.mediaType,url:e.url,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}}),u();break;case"source-url":a.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),u();break;case"source-document":a.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),u();break;case"tool-input-start":{let t=d().filter(gs);a.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title,toolMetadata:e.toolMetadata},e.dynamic?h({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}):p({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}),u();break}case"tool-input-delta":{let t=a.partialToolCalls[e.toolCallId];if(null==t)throw new hv({chunkType:"tool-input-delta",chunkId:e.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${e.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});t.text+=e.inputTextDelta;let{value:r}=await mc(t.text);t.dynamic?h({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:r,rawInput:t.text,title:t.title,toolMetadata:t.toolMetadata}):p({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:r,rawInput:t.text,title:t.title,toolMetadata:t.toolMetadata}),u();break}case"tool-input-available":e.dynamic?h({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}):p({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}),u(),n&&!e.providerExecuted&&await n({toolCall:e});break;case"tool-input-error":{let t=d().filter(gu).find(t=>t.toolCallId===e.toolCallId);(null!=t?"dynamic-tool"===t.type:e.dynamic)?h({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}):p({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}),u();break}case"tool-approval-request":{let t=c(e.toolCallId);t.state="approval-requested",t.approval={id:e.approvalId,...null!=e.approvalDescriptor?{descriptor:e.approvalDescriptor}:{},...Object.prototype.hasOwnProperty.call(e,"inputSchemaInput")?{inputSchemaInput:e.inputSchemaInput}:{},...null!=e.reason?{requestReason:e.reason}:{},...!0===e.isAutomatic?{isAutomatic:!0}:{},...null!=e.signature?{signature:e.signature}:{}},u();break}case"tool-approval-response":{let t=function(e){let t=a.message.parts.filter(gu).find(t=>t.approval?.id===e);if(null==t)throw new hv({chunkType:"tool-approval-response",chunkId:e,message:`No tool invocation found for approval ID "${e}".`});return t}(e.approvalId),r=null==t.approval?{id:e.approvalId}:t.approval;t.state="approval-responded",t.approval={...r,id:e.approvalId,approved:e.approved,...null!=e.reason?{reason:e.reason}:{}},null!=e.providerExecuted&&(t.providerExecuted=e.providerExecuted),null!=e.providerMetadata&&(t.callProviderMetadata=e.providerMetadata),u();break}case"tool-output-denied":c(e.toolCallId).state="output-denied",u();break;case"tool-output-available":{let t=c(e.toolCallId);"dynamic-tool"===t.type?h({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:e.toolMetadata??t.toolMetadata},t):p({toolCallId:e.toolCallId,toolName:gd(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:e.toolMetadata??t.toolMetadata},t),u();break}case"tool-output-error":{let t=c(e.toolCallId);"dynamic-tool"===t.type?h({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:e.toolMetadata??t.toolMetadata},t):p({toolCallId:e.toolCallId,toolName:gd(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:e.toolMetadata??t.toolMetadata},t),u();break}case"start-step":a.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let e=d();a.activeTextParts=ge(),a.activeReasoningParts=ge(),a.partialToolCalls=ge(),e.length>0&&(a.message.parts.splice(a.message.parts.length-e.length,e.length),u());break}case"start":s&&null!=e.messageId&&e.messageId!==a.message.id&&Object.assign(a,gp({lastMessage:void 0,messageId:e.messageId}),{finishReason:void 0}),null!=e.messageId&&(a.message.id=e.messageId),await f(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&u({updateStatus:!1});break;
104case"finish":null!=e.finishReason&&(a.finishReason=e.finishReason),await f(e.messageMetadata),null!=e.messageMetadata&&u();break;case"message-metadata":await f(e.messageMetadata),null!=e.messageMetadata&&u();break;case"error":o?.(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if(r?.[e.type]!=null){let t=a.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),o=t>=0?t:a.message.parts.length;await s3({value:e.data,schema:r[e.type],context:{field:`message.parts[${o}].data`,entityName:e.type,entityId:e.id}})}if(e.transient){i?.(e);break}let t=null!=e.id?a.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:a.message.parts.push(e),i?.(e),u()}}l.enqueue(e)})}}))}function gf({messageId:e,originalMessages:t=[],onStepEnd:r,onStepFinish:a,onEnd:o,onFinish:n,onError:i,stream:s,getOutcome:l}){let u,d=t?.[t.length-1];d?.role!=="assistant"?d=void 0:e=d.id;let c=!1,p=!1,h=e=>{p=!0,u=e},f=s.pipeThrough(new TransformStream({transform(t,r){try{let a=t;"start"===t.type&&null==t.messageId&&null!=e&&(a={...t,messageId:e}),"abort"===t.type&&(c=!0),r.enqueue(a)}catch(e){throw h(e),e}}})),m=r??a,g=o??n;if(null==g&&null==m)return f;let y=gp({lastMessage:d?structuredClone(d):void 0,messageId:e??""}),v=!1,b=async({isCancelled:e})=>{if(v||!g)return;v=!0;let r=y.message.id===d?.id,a=l?.()??{status:"unknown"},o=p?{status:"failed",error:u}:"unknown"===a.status&&c?{status:"aborted"}:a,n=e&&"unknown"===o.status;await g({isAborted:c||"aborted"===o.status,...n?{isCancelled:!0}:{},isContinuation:r,outcome:o,responseMessage:y.message,messages:[...r?t.slice(0,-1):t,y.message],finishReason:y.finishReason})},w=async()=>{if(!m)return;let e=y.message.id===d?.id;try{await m({isContinuation:e,responseMessage:structuredClone(y.message),messages:[...e?t.slice(0,-1):t,structuredClone(y.message)]})}catch(e){i(e)}};return gh({stream:f,runUpdateMessageJob:async e=>{try{await e({state:y,write:()=>{}})}catch(e){throw h(e),e}},onError:i}).pipeThrough(new TransformStream({async transform(e,t){"finish-step"===e.type&&await w(),t.enqueue(e)},async cancel(){await b({isCancelled:!0})},async flush(){await b({isCancelled:!1})}}))}function gm({stream:e,tools:t,sendReasoning:r=!0,sendSources:a=!1,sendStart:o=!0,sendFinish:n=!0,onError:i=()=>"An error occurred.",messageMetadata:s,originalMessages:l,generateMessageId:u,onStepEnd:d,onStepFinish:c,onEnd:p,onFinish:h}){let f={status:"unknown"},m=!1,g=e=>{m||"completed"===f.status||"aborted"===f.status||"unknown"===e.status||"unknown"!==f.status&&"failed"===e.status||(f=e)},y=e=>{m=!0,f={status:"failed",error:e}},v=null!=u?function({originalMessages:e,responseMessageId:t}){if(null==e)return;let r=e[e.length-1];return r?.role==="assistant"?r.id:"function"==typeof t?t():t}({originalMessages:l,responseMessageId:u}):void 0,b=e.getReader(),w=!1,x=!1,_=()=>{w||(b.releaseLock(),w=!0)};return gf({stream:new ReadableStream({async pull(e){try{let{done:t,value:r}=await b.read();t?(_(),x||e.close()):e.enqueue(r)}catch(t){_(),x||(y(t),e.error(t))}},async cancel(e){if(x=!0,!w)try{await b.cancel(e)}finally{_()}}}).pipeThrough(new TransformStream({transform:async(e,l)=>{try{let u=s?.({part:e}),d=function(e,{tools:t,sendReasoning:r=!0,sendSources:a=!1,sendStart:o=!0,sendFinish:n=!0,onError:i=()=>"An error occurred.",messageMetadata:s,responseMessageId:l}={}){let u=e=>{let r=t?.[e.toolName];return null==r?e.dynamic:r?.type==="dynamic"||void 0},d=e.type;switch(d){case"text-start":return{type:"text-start",id:e.id,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:e.id,delta:e.text,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"text-end":return{type:"text-end",id:e.id,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":if(!r)return;return{type:d,id:e.id,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"reasoning-delta":if(!r)return;return{type:"reasoning-delta",id:e.id,delta:e.text,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"file":case"reasoning-file":if("reasoning-file"===d&&!r)return;return{type:e.type,mediaType:e.file.mediaType,url:`data:${e.file.mediaType};base64,${e.file.base64}`,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"source":if(!a)return;if("url"===e.sourceType)return{type:"source-url",sourceId:e.id,url:e.url,title:e.title,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};if("document"===e.sourceType)return{type:"source-document",sourceId:e.id,mediaType:e.mediaType,title:e.title,filename:e.filename,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};return;
104case"custom":return{type:"custom",kind:e.kind,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}};case"tool-input-start":{let t=u(e);return{type:"tool-input-start",toolCallId:e.id,toolName:e.toolName,...null!=e.providerExecuted?{providerExecuted:e.providerExecuted}:{},...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=t?{dynamic:t}:{},...null!=e.title?{title:e.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:e.id,inputTextDelta:e.delta};case"tool-call":{let t=u(e);if(e.invalid)return{type:"tool-input-error",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...null!=e.providerExecuted?{providerExecuted:e.providerExecuted}:{},...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=t?{dynamic:t}:{},errorText:i(e.error),...null!=e.title?{title:e.title}:{}};return{type:"tool-input-available",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...null!=e.providerExecuted?{providerExecuted:e.providerExecuted}:{},...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=t?{dynamic:t}:{},...null!=e.title?{title:e.title}:{}}}case"tool-approval-request":{let t=mm(e.toolCall);return{type:"tool-approval-request",approvalId:e.approvalId,toolCallId:e.toolCall.toolCallId,...null!=t&&!mL(t.value,e.toolCall.input)?{inputSchemaInput:t.value}:{},...null!=e.reason?{reason:e.reason}:{},...null!=e.isAutomatic?{isAutomatic:e.isAutomatic}:{},...null!=e.signature?{signature:e.signature}:{}}}case"tool-approval-response":return{type:"tool-approval-response",approvalId:e.approvalId,approved:e.approved,...null!=e.reason?{reason:e.reason}:{},...null!=e.providerExecuted?{providerExecuted:e.providerExecuted}:{}};case"tool-result":{let t=u(e);return{type:"tool-output-available",toolCallId:e.toolCallId,output:void 0===e.output?null:e.output,...null!=e.providerExecuted?{providerExecuted:e.providerExecuted}:{},...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=e.preliminary?{preliminary:e.preliminary}:{},...null!=t?{dynamic:t}:{}}}case"tool-error":{let t=u(e);return{type:"tool-output-error",toolCallId:e.toolCallId,errorText:e.providerExecuted?"string"==typeof e.error?e.error:JSON.stringify(e.error):i(e.error),...null!=e.providerExecuted?{providerExecuted:e.providerExecuted}:{},...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{},...null!=e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=t?{dynamic:t}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:e.toolCallId};case"error":return{type:"error",errorText:i(e.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":if(!o)return;return{type:"start",...null!=s?{messageMetadata:s}:{},...null!=l?{messageId:l}:{}};case"finish":if(!n)return;return{type:"finish",finishReason:e.finishReason,...null!=s?{messageMetadata:s}:{}};case"abort":return e;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${d}`)}}(e,{tools:t,sendReasoning:r,sendSources:a,sendStart:o,sendFinish:n,onError:i,messageMetadata:u,responseMessageId:v});null!=d&&"finish-step"!==e.type&&l.enqueue(d),null!=u&&"start"!==e.type&&"finish"!==e.type&&l.enqueue({type:"message-metadata",messageMetadata:u}),null!=d&&"finish-step"===e.type&&l.enqueue(d),"finish"===e.type?g({status:"completed"}):"abort"===e.type?g({status:"aborted"}):"error"===e.type&&g({status:"failed",error:e.error})}catch(e){throw y(e),e}}})),messageId:v??u?.(),originalMessages:l,onStepEnd:d??c,onEnd:p??h,onError:i,getOutcome:()=>f})}function gg(e){var t;return(t=e.pipeThrough(new TransformStream))[Symbol.asyncIterator]=function(){let e=this.getReader(),t=!1;async function r(r){if(!t){t=!0;try{r&&await e.cancel?.()}finally{try{e.releaseLock()}catch{}}}}return{async next(){let a;if(t)return{done:!0,value:void 0};try{a=await e.read()}catch(e){throw await r(!1),e}let{done:o,value:n}=a;return o?(await r(!0),{done:!0,value:void 0}):{done:!1,value:n}},return:async()=>(await r(!0),{done:!0,value:void 0}),async throw(e){throw await r(!0),e}}},t}async function gy({stream:e,onError:t,abortSignal:r}){let a=e.getReader(),o=()=>{a.cancel().catch(()=>{})};r?.aborted?o():r?.addEventListener("abort",o,{once:!0});try{for(;;){let{done:e}=await a.read();if(e)break}}catch(e){t?.(e)}finally{r?.removeEventListener("abort",o),a.releaseLock()}}
104function gv(){let e,t;return{promise:new Promise((r,a)=>{e=r,t=a}),resolve:e,reject:t}}let gb=Symbol("streamRetryAttemptBoundary");function gw(e){return"object"==typeof e&&null!=e&&gb in e}function gx(e){return"object"==typeof e&&null!=e?e:void 0}function g_(e){return"string"==typeof e?e:void 0}function gI(e){return"string"==typeof e||"number"==typeof e?e:void 0}function gk(e){return"boolean"==typeof e?e:void 0}function gS(e){let t="string"==typeof e&&/^\d{3}$/.test(e)?Number(e):e;return"number"==typeof t&&Number.isInteger(t)&&t>=400&&t<=599?t:void 0}let gT=sp({prefix:"aitxt",size:24}),gE=sp({prefix:"call",size:24});async function gC({model:e,tools:t,toolOrder:r,output:a,toolChoice:o,prompt:n,system:i,instructions:s,messages:l,allowSystemInMessages:u,download:d,abortSignal:c,headers:p,includeRawChunks:h,providerOptions:f,repairToolCall:m,refineToolInput:g,executeLanguageModelCallInTelemetryContext:y=async({execute:e})=>await e(),callId:v,toolsContext:b,experimental_sandbox:x,_internal:{generateId:_=gT,generateCallId:I=gE,now:k=fW}={},onStart:S,onLanguageModelCallStart:T,onLanguageModelCallEnd:E,...C}){let M=hQ(e),A=v??I(),O=await fL({instructions:s,system:i,prompt:n,messages:l,allowSystemInMessages:u}),R=await h7({prompt:{instructions:O.instructions,messages:O.messages},supportedUrls:await M.supportedUrls,download:d,abortSignal:c,provider:M.provider.split(".")[0]}),P=await fd({tools:t,toolOrder:r,toolsContext:b,experimental_sandbox:x}),$=fu({toolChoice:o});await fY({event:{promptMessages:R},callbacks:S});let N={callId:A,provider:M.provider,modelId:M.modelId,instructions:O.instructions,messages:O.messages,tools:P,...C};await fY({event:N,callbacks:T});let z=k(),{stream:D,response:q,request:U}=await y({...N,execute:async()=>await M.doStream({...C,tools:P,toolChoice:$,responseFormat:await a?.responseFormat,prompt:R,providerOptions:f,abortSignal:c,headers:p,includeRawChunks:h})});return{stream:gg(D.pipeThrough(function({tools:e,instructions:t,messages:r,repairToolCall:a,refineToolInput:o,abortSignal:n,callId:i,provider:s,modelId:l,toolChoice:u,generateId:d,now:c,callStartTimestampMs:p,onLanguageModelCallEnd:h}){let f,m,g=new Map,y=[],v=[],b=new Map,x=new Map,_=new Map,I=new Map,k=d(),S=l,T=[];return new TransformStream({async transform(d,E){var C,M;if("text-delta"===(C=d).type&&C.delta.length>0||"reasoning-delta"===C.type&&C.delta.length>0||"tool-input-delta"===C.type&&C.delta.length>0||"file"===C.type||"reasoning-file"===C.type||"tool-call"===C.type){let e=c();null==f?f=e-p:null!=m&&T.push(e-m),m=e}switch(d.type){case"error":E.enqueue({type:"error",error:function(e){var t,r;if((t=e)instanceof Error||"[object Error]"===Object.prototype.toString.call(t)||w.isInstance(e)||hn.isInstance(e))return e;let a=gx(e);if(null==a)return e;let o=iO(e),n=o?a:gx(gx(a.response)?.error)??gx(a.error)??a;if("string"!=typeof n.message)return e;let i=g_(n.type)??g_(a.type),s=gI(n.code)??gI(a.code),l=gS(n.statusCode)??gS(a.statusCode)??gS(n.status_code)??gS(a.status_code)??gS(n.status)??gS(a.status)??gS(n.code)??gS(a.code),u=function(e){switch(e.trim().toLowerCase()){case"overloaded":case"overloaded error":case"model overloaded":case"service unavailable":return{statusCode:503,isRetryable:!0};case"internal server error":return{statusCode:500,isRetryable:!0};default:return}}(n.message),d=l??u?.statusCode,c=gk(n.isRetryable)??gk(a.isRetryable)??gk(n.is_retryable)??gk(a.is_retryable);return new hn({message:n.message,type:i,code:s,statusCode:d,isRetryable:c??u?.isRetryable??(null!=(r=d)&&(408===r||409===r||429===r||r>=500)),data:o?e.data:e})}(d.error)});break;case"text-start":gA({content:y,rawContent:v,partIndexes:b,rawPartIndexes:_,id:d.id,type:"text",providerMetadata:d.providerMetadata}),E.enqueue(d);break;case"text-delta":gA({content:y,rawContent:v,partIndexes:b,rawPartIndexes:_,id:d.id,type:"text",textDelta:d.delta,providerMetadata:d.providerMetadata}),E.enqueue({type:"text-delta",id:d.id,text:d.delta,providerMetadata:d.providerMetadata});break;case"text-end":gA({content:y,rawContent:v,partIndexes:b,rawPartIndexes:_,id:d.id,type:"text",providerMetadata:d.providerMetadata}),b.delete(d.id),_.delete(d.id),E.enqueue(d);break;case"reasoning-start":gA({content:y,rawContent:v,partIndexes:x,rawPartIndexes:I,id:d.id,type:"reasoning",providerMetadata:d.providerMetadata}),E.enqueue(d);break;case"reasoning-delta":gA({content:y,rawContent:v,partIndexes:x,rawPartIndexes:I,id:d.id,type:"reasoning",textDelta:d.delta,providerMetadata:d.providerMetadata}),E.enqueue({type:"reasoning-delta",id:d.id,text:d.delta,providerMetadata:d.providerMetadata});break;case"reasoning-end":gA({content:y,rawContent:v,partIndexes:x,rawPartIndexes:I,id:d.id,type:"reasoning",providerMetadata:d.providerMetadata}
104),x.delete(d.id),I.delete(d.id),E.enqueue(d);break;case"file":case"reasoning-file":{let e=new f4({data:await f6({data:d.data,abortSignal:n}),mediaType:d.mediaType});y.push({type:d.type,file:e,...null!=d.providerMetadata?{providerMetadata:d.providerMetadata}:{}}),v.push(d),E.enqueue({type:d.type,file:e,providerMetadata:d.providerMetadata});break}case"finish":{let e,t,r=fZ(d.usage),a=c()-p,o={responseTimeMs:a,effectiveOutputTokensPerSecond:f0({tokens:r.outputTokens,durationMs:a}),outputTokensPerSecond:null==f?void 0:f0({tokens:r.outputTokens,durationMs:a-f}),inputTokensPerSecond:null==f?void 0:f0({tokens:r.inputTokens,durationMs:f}),effectiveTotalTokensPerSecond:f0({tokens:mU(r.inputTokens,r.outputTokens),durationMs:a}),timeToFirstOutputMs:f,timeBetweenOutputChunksMs:T.length>0?(e=[...M=T].sort((e,t)=>e-t),t=M.reduce((e,t)=>e+t,0),{min:e[0],p10:gM(e,.1),median:gM(e,.5),avg:t/M.length,p90:gM(e,.9),max:e[e.length-1]}):void 0};await fY({event:{callId:i,provider:s,modelId:S,finishReason:d.finishReason.unified,usage:r,content:y,responseId:k,...null!=d.providerMetadata?{providerMetadata:d.providerMetadata}:{},performance:o},callbacks:h});let n="required"===u.type||"tool"===u.type?u:void 0,m=null==n||[...g.values()].some(e=>"required"===n.type||e.toolName===n.toolName)?void 0:new hh({toolChoice:n,finishReason:d.finishReason.unified,provider:s,modelId:l,content:v});E.enqueue({type:"model-call-end",finishReason:null==m?d.finishReason.unified:"error",rawFinishReason:d.finishReason.raw,usage:r,providerMetadata:d.providerMetadata,performance:o}),null!=m&&E.enqueue({type:"error",error:m});break}case"tool-call":v.push(d);try{let i=await mg({toolCall:d,tools:e,repairToolCall:a,refineToolInput:o,instructions:t,messages:r,abortSignal:n});g.set(i.toolCallId,i),E.enqueue(i),y.push(i),i.invalid&&(i.providerExecuted||E.enqueue({type:"tool-error",toolCallId:i.toolCallId,toolName:i.toolName,input:i.input,error:j(i.error),dynamic:!0,title:i.title,...null!=i.toolMetadata?{toolMetadata:i.toolMetadata}:{}}))}catch(e){E.enqueue({type:"error",error:e})}break;case"tool-approval-request":{v.push(d);let e=g.get(d.toolCallId);if(null==e){E.enqueue({type:"error",error:new pW({toolCallId:d.toolCallId,approvalId:d.approvalId})});break}let t={type:"tool-approval-request",approvalId:d.approvalId,toolCall:e};E.enqueue(t),y.push(t);break}case"tool-result":{v.push(d);let e=d.toolName,t=g.get(d.toolCallId),r=d.isError?{type:"tool-error",toolCallId:d.toolCallId,toolName:e,input:t?.input,providerExecuted:!0,error:d.result,dynamic:d.dynamic,...null!=d.providerMetadata?{providerMetadata:d.providerMetadata}:{},...t?.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{}}:{type:"tool-result",toolCallId:d.toolCallId,toolName:e,input:t?.input,output:d.result,providerExecuted:!0,dynamic:d.dynamic,...null!=d.providerMetadata?{providerMetadata:d.providerMetadata}:{},...t?.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{}};E.enqueue(r),y.push(r);break}case"tool-input-start":{let t=fJ(e,d.toolName);E.enqueue({...d,dynamic:d.dynamic??t?.type==="dynamic",title:t?.title,...t?.metadata!=null?{toolMetadata:t.metadata}:{}});break}case"stream-start":E.enqueue({type:"model-call-start",warnings:d.warnings});break;case"response-metadata":k=d.id??k,S=d.modelId??S,E.enqueue({type:"model-call-response-metadata",id:d.id,timestamp:d.timestamp,modelId:d.modelId});break;default:("custom"===d.type||"source"===d.type)&&(y.push(d),v.push(d)),E.enqueue(d)}}})}({tools:t,instructions:O.instructions,messages:O.messages,repairToolCall:m,refineToolInput:g,abortSignal:c,callId:A,provider:M.provider,modelId:M.modelId,toolChoice:$,generateId:_,now:k,callStartTimestampMs:z,onLanguageModelCallEnd:E}))),response:q,request:U}}function gM(e,t){return e[Math.ceil(t*e.length)-1]}function gA({content:e,rawContent:t,partIndexes:r,rawPartIndexes:a,id:o,type:n,textDelta:i,providerMetadata:s}){let l=r.get(o);null==l&&(l=e.push({type:n,text:"",...null!=s?{providerMetadata:s}:{}})-1,r.set(o,l));let u=a.get(o);null==u&&(u=t.push({type:n,text:"",...null!=s?{providerMetadata:s}:{}})-1,a.set(o,u));let d=e[l],c=t[u];null!=i&&(d.text+=i,c.text+=i),null!=s&&(d.providerMetadata=s,c.providerMetadata=s)}let gO=sp({prefix:"aitxt",size:24}),gR=sp({prefix:"call",size:24}),gP={file:!0,custom:!1,source:!1,"text-start":!1,"text-end":!1,"text-delta":!0,"reasoning-start":!1,"reasoning-end":!1,"reasoning-delta":!0,"reasoning-file":!0,"tool-input-start":!1,"tool-input-end":!1,"tool-input-delta":!0,"tool-approval-request":!1,"tool-approval-response":!1,"tool-call":!0,"tool-result":!1,"tool-error":!1,"tool-output-denied":!1,"tool-execution-end":!1,"model-call-start":!1,"model-call-response-metadata":!1,"model-call-end":!1,error:!1,raw:!1};function g$(e){if(!gP[e.type])return!1;switch(e.type){case"text-delta":case"reasoning-delta":return e.text.length>0;case"tool-input-delta":return e.delta.length>0;case"file":case"reasoning-file":case"tool-call":return!0;default:return!1}}let gN=Symbol("streamRetryBoundary");async function gz(e){try{await e}catch{}}var gj=class{constructor({model:e,telemetry:t,headers:r,settings:a,maxRetries:o,streamRetries:n,abortSignal:i,stepTimeoutMs:s,stepAbortController:l,firstChunkTimeoutMs:u,firstChunkAbortController:d,chunkTimeoutMs:c,chunkAbortController:p,instructions:h,system:f,prompt:m,messages:g,allowSystemInMessages:y,experimental_sandbox:v,tools:b,toolChoice:w,transforms:x,activeTools:_,toolOrder:I,repairToolCall:k,refineToolInput:S,stopConditions:T,output:E,toolApproval:C,experimental_toolCallers:M,experimental_toolApprovalSecret:A,providerOptions:O,prepareStep:R,now:P,generateId:$,generateCallId:N,timeout:z,onChunk:D,onError:q,canRetryStreamViaOnError:U,onEnd:L,onAbort:F,onStepFinish:Z,onStart:B,onStepStart:V,onLanguageModelCallStart:G,onLanguageModelCallEnd:H,onToolExecutionStart:J,onToolExecutionEnd:K,runtimeContext:W,toolsContext:Y,download:X,include:Q}){let ee,et,er,ea,eo,en,ei,es,el,eu,ed,ec,ep;this._totalUsage=new iR,this._finishReason=new iR,this._rawFinishReason=new iR,this._steps=new iR,this._initialResponseMessages=new iR,this.outputSpecification=E,this.tools=b;let eh=f3({tools:b,toolCallers:M}),ef=ma({tools:b,toolCallers:eh}),em=mj({telemetry:t,includeRuntimeContext:t?.includeRuntimeContext,includeToolsContext:t?.includeToolsContext}),eg=[],ey={},ev=[],eb=[],ew=[],ex=[],e_=[],eI=!1,ek=e,eS=()=>{let e=new Set;return t=>{if(!e.has(t))return e.add(t),t;let r=$(),a=r,o=0;for(;e.has(a);)a=`${r}-${++o}`;return e.add(a),a}},eT=eS(),eE=eS(),eC=new Map,eM=ge(),eA=ge(),eO=new Set,eR=new TransformStream({async transform(e,t){if(gN in e){let t=e[gN];
104eg=[],eA=ge(),eM=ge(),ey=t.request,ev=t.request.messages??[],eb=t.warnings;return}let{part:r}=e;t.enqueue(e);let a="error"===r.type&&eO.has(r.error);if(a||await fY({event:{chunk:r},callbacks:D}),"error"===r.type){let e=fF(r.error);p5.isInstance(e)&&(er=e),a?eO.delete(r.error):await fY({event:{error:e},callbacks:async e=>{await q(e)}})}if(("custom"===r.type||"source"===r.type||"tool-call"===r.type||"tool-approval-request"===r.type||"tool-approval-response"===r.type||"tool-error"===r.type)&&eg.push(r),"text-start"===r.type&&(eM[r.id]={type:"text",text:"",providerMetadata:r.providerMetadata},eg.push(eM[r.id])),"text-delta"===r.type){let e=eM[r.id];if(null==e)return void t.enqueue({part:{type:"error",error:`text part ${r.id} not found`},partialOutput:void 0});e.text+=r.text,e.providerMetadata=r.providerMetadata??e.providerMetadata}if("text-end"===r.type){let e=eM[r.id];if(null==e)return void t.enqueue({part:{type:"error",error:`text part ${r.id} not found`},partialOutput:void 0});e.providerMetadata=r.providerMetadata??e.providerMetadata,delete eM[r.id]}if("reasoning-start"===r.type&&(eA[r.id]={type:"reasoning",text:"",providerMetadata:r.providerMetadata},eg.push(eA[r.id])),"reasoning-delta"===r.type){let e=eA[r.id];if(null==e)return void t.enqueue({part:{type:"error",error:`reasoning part ${r.id} not found`},partialOutput:void 0});e.text+=r.text,e.providerMetadata=r.providerMetadata??e.providerMetadata}if("reasoning-end"===r.type){let e=eA[r.id];if(null==e)return void t.enqueue({part:{type:"error",error:`reasoning part ${r.id} not found`},partialOutput:void 0});e.providerMetadata=r.providerMetadata??e.providerMetadata,delete eA[r.id]}if(("file"===r.type||"reasoning-file"===r.type)&&eg.push({type:r.type,file:r.file,...null!=r.providerMetadata?{providerMetadata:r.providerMetadata}:{}}),"tool-result"!==r.type||r.preliminary||eg.push(r),"start-step"===r.type&&(eg=[],eA=ge(),eM=ge(),ey=r.request,eb=r.warnings),"finish-step"===r.type){let e=await mF({content:eg,tools:b}),t=new mN({callId:eZ,stepNumber:ew.length,provider:ek.provider,modelId:ek.modelId,runtimeContext:W,toolsContext:Y,content:eg,finishReason:r.finishReason,rawFinishReason:r.rawFinishReason,usage:r.usage,performance:r.performance,warnings:eb,request:{...ey,messages:Q.requestMessages?h2(ev):void 0},response:{...r.response,messages:h2(e)},providerMetadata:r.providerMetadata});await fY({event:t,callbacks:[Z,em.onStepEnd]}),hU({warnings:eb,provider:ek.provider,model:ek.modelId}),ew.push(t),et=[...e_,...e],ee.resolve()}"finish"===r.type&&(en=r.totalUsage,ea=r.finishReason,eo=r.rawFinishReason)},async flush(e){try{if(0===ew.length||null!=er){let e=i?.aborted?i.reason:er??new p5({message:"No output generated. Check the stream for errors."});eF.rejectResultPromises(e);return}let e=ea??"other",t=en??fB();if(eF._finishReason.resolve(e),eF._rawFinishReason.resolve(eo),eF._totalUsage.resolve(t),eF._steps.resolve(ew),eI)return;let r=ew[ew.length-1],a=ew.flatMap(e=>e.content),o=ew.flatMap(e=>e.files),n=ew.flatMap(e=>e.sources),s=ew.flatMap(e=>e.toolCalls),l=ew.flatMap(e=>e.staticToolCalls),u=ew.flatMap(e=>e.dynamicToolCalls),d=ew.flatMap(e=>e.toolResults),c=ew.flatMap(e=>e.staticToolResults),p=ew.flatMap(e=>e.dynamicToolResults),h=ew.flatMap(e=>e.warnings??[]),f=null==L?void 0:async e=>{let t=null==E?void 0:await eF.getOutputPromise().catch(()=>void 0);await L({...e,...null!=E?{output:t}:{}})},m={callId:eZ,toolsContext:r.toolsContext,stepNumber:r.stepNumber,model:r.model,runtimeContext:r.runtimeContext,finishReason:r.finishReason,rawFinishReason:r.rawFinishReason,usage:t,totalUsage:t,content:a,text:r.text,reasoning:r.reasoning,reasoningText:r.reasoningText,files:o,sources:n,toolCalls:s,staticToolCalls:l,dynamicToolCalls:u,toolResults:d,staticToolResults:c,dynamicToolResults:p,responseMessages:[...ex,...ew.flatMap(e=>e.response.messages)],warnings:h,request:r.request,response:r.response,providerMetadata:r.providerMetadata,steps:ew,finalStep:r};await Promise.all([fY({event:m,callbacks:f}),fY({event:m,callbacks:em.onEnd})])}catch(t){e.error(t)}}}),eP=(ei=[],es=null,el=!1,eu=!1,ed=gv(),ec=()=>
104{eu||(el=!0,ed.resolve(),ei.forEach(({reader:e,onCancel:t})=>{t?.(),e.cancel()}),ei=[],es?.close())},{stream:new ReadableStream({start(e){es=e},pull:ep=async()=>{if(eu)return;if(el&&0===ei.length)return void es?.close();if(0===ei.length)return ed=gv(),await ed.promise,await ep();let e=ei[0];try{let{value:t,done:r}=await e.reader.read();if(eu)return;r?(ei.shift(),0===ei.length&&el?es?.close():await ep()):es?.enqueue(t)}catch(t){if(eu)return;e.onError?.(t),es?.error(t),ei.shift(),ec()}},async cancel(){for(let{reader:e,onCancel:t}of(eu=!0,el=!0,ed.resolve(),ei))t?.(),await e.cancel();ei=[]}}),addStream:(e,t)=>{if(eu){t?.onCancel?.(),e.cancel().catch(()=>{});return}if(el)throw Error("Cannot add inner stream: outer stream is closed");ei.push({reader:e.getReader(),...t}),ed.resolve()},close:()=>{eu||(el=!0,ed.resolve(),0===ei.length&&es?.close())},terminate:ec});this.addStream=eP.addStream,this.closeStream=eP.close;let e$=eP.stream.getReader(),eN=()=>{this.rejectResultPromises(i?.reason),e$.cancel(i?.reason).catch(()=>{})},ez=()=>i?.removeEventListener("abort",eN),ej=new ReadableStream({async start(e){e.enqueue({type:"start"}),i?.addEventListener("abort",eN,{once:!0}),i?.aborted&&eN()},async pull(e){async function t(){eI=!0,ez(),await fY({event:{callId:eZ,steps:ew,...i?.reason!==void 0?{reason:i.reason}:{}},callbacks:[F,em.onAbort]}),e.enqueue({type:"abort",...i?.reason!==void 0?{reason:j(i.reason)}:{}}),e.close()}try{let{done:r,value:a}=await e$.read();if(i?.aborted)return void await t();if(r){ez(),e.close();return}e.enqueue(a)}catch(r){ez(),iN(r)&&i?.aborted?await t():(await em.onError?.({callId:eZ,error:r}),e.error(r))}},cancel:e=>(ez(),e$.cancel(e))}),eD=!0;ej=function({stream:e,transforms:t,tools:r,stopStream:a}){let o,n,i=e.getReader(),s=!1;return new ReadableStream({async pull(e){n??=(()=>{let e=new ReadableStream({async pull(e){let{done:t,value:r}=await i.read();if(t){s=!0,e.close();return}if(gN in r){o=r,e.close();return}e.enqueue(r)},cancel:e=>i.cancel(e)},{highWaterMark:0});for(let o of t)e=e.pipeThrough(o({tools:r,stopStream:a}));return e.getReader()})();let{done:l,value:u}=await n.read();if(!l)return void e.enqueue(u);if(n=void 0,null!=o){e.enqueue(o),o=void 0;return}s&&e.close()},async cancel(e){await n?.cancel(e),await i.cancel(e)}})}({stream:ej=ej.pipeThrough(new TransformStream({async transform(e,t){eD&&t.enqueue(e)}})),transforms:x,tools:b,stopStream(){eP.terminate(),eD=!1}}),this.baseStream=ej.pipeThrough(function(e){let t,r,a,o="",n="",i=!1;function s(){t=void 0,o="",n="",r=void 0,a=void 0,i=!1}function l({controller:e,chunk:t}){e.enqueue(t)}function u({controller:e,partialOutput:a}){l({controller:e,chunk:{part:{type:"text-delta",id:t,text:n,providerMetadata:r},partialOutput:a}}),n=""}return new TransformStream({async transform(d,c){if(gN in d){s(),c.enqueue(d);return}if("start-step"===d.type&&s(),"finish-step"===d.type&&n.length>0&&u({controller:c}),"text-delta"!==d.type&&"text-start"!==d.type&&"text-end"!==d.type)return void l({controller:c,chunk:{part:d,partialOutput:void 0}});if(null==t)t=d.id;else if(d.id!==t)return void l({controller:c,chunk:{part:d,partialOutput:void 0}});if("text-start"===d.type)return void l({controller:c,chunk:{part:d,partialOutput:void 0}});if("text-end"===d.type){n.length>0&&u({controller:c}),l({controller:c,chunk:{part:d,partialOutput:void 0}});return}if(o+=d.text,n+=d.text,r=d.providerMetadata??r,0===d.text.length&&null!=d.providerMetadata)return void l({controller:c,chunk:{part:d,partialOutput:void 0}});let p=await e.parsePartialOutput({text:o});if(void 0!==p){let e="string"==typeof p.partial?p.partial:JSON.stringify(p.partial);i&&e===a||(u({controller:c,partialOutput:p.partial}),a=e,i=!0)}}})}(E??mp())).pipeThrough(eR);let{maxRetries:eq}=fX({maxRetries:o,abortSignal:i}),{maxRetries:eU}=fX({maxRetries:n,abortSignal:i,parameter:"streamRetries",defaultMaxRetries:0}),eL=fl(a),eF=this,eZ=N();(async()=>{let t=await fL({instructions:h,system:f,prompt:m,messages:g,allowSystemInMessages:y}),a={callId:eZ,operationId:"ai.streamText",provider:e.provider,modelId:e.modelId,instructions:t.instructions,messages:t.messages,tools:b,toolChoice:w,activeTools:_,toolOrder:I,maxOutputTokens:eL.maxOutputTokens,temperature:eL.temperature,topP:eL.topP,topK:eL.topK,presencePenalty:eL.presencePenalty,frequencyPenalty:eL.frequencyPenalty,stopSequences:eL.stopSequences,seed:eL.seed,reasoning:eL.reasoning,maxRetries:eq,timeout:z,headers:r,providerOptions:O,output:E,runtimeContext:W,toolsContext:Y},o=em.startTracingChannelContext?.({type:"streamText",event:a,completion:eF._totalUsage.promise.then(()=>void 0)}),n=e=>o?.run(e)??e(),x=null==em.runInTracingChannelSpan?void 0:e=>n(()=>em.runInTracingChannelSpan(e));await fY({event:a,callbacks:[B,em.onStart]});let M=t.messages,N=t.instructions,{approvedToolApprovals:L,deniedToolApprovals:F}=f1({messages:M});if(F.length>0||L.length>
1040){let e,{approvedToolApprovals:t,deniedToolApprovals:r,invalidToolApprovals:a}=await mX({approvedToolApprovals:L.filter(e=>!e.toolCall.providerExecuted),tools:b,toolApproval:C,messages:M,toolsContext:Y,runtimeContext:W,toolApprovalSecret:A,refineToolInput:S}),o=[...F.filter(e=>!e.toolCall.providerExecuted),...r],n=o.filter(e=>null==e.existingToolResult),s=F.filter(e=>e.toolCall.providerExecuted),l=new ReadableStream({start(t){e=t}});eF.addStream(l);try{for(let t of[...o,...s])e?.enqueue({type:"tool-output-denied",toolCallId:t.toolCall.toolCallId,toolName:t.toolCall.toolName});for(let t of a)e?.enqueue({type:"tool-error",toolCallId:t.toolCall.toolCallId,toolName:t.toolCall.toolName,input:t.toolCall.input,error:j(t.error),title:t.toolCall.title,...!0===t.toolCall.dynamic?{dynamic:!0}:{},...null!=t.toolCall.toolMetadata?{toolMetadata:t.toolCall.toolMetadata}:{}});let r=[];if(await Promise.all(t.map(async t=>{let a=await mi({toolCall:t.toolCall,tools:b,callId:eZ,messages:M,abortSignal:i,timeout:z,experimental_sandbox:v,toolsContext:Y,onToolExecutionStart:sc(J,em.onToolExecutionStart),onToolExecutionEnd:sc(K,em.onToolExecutionEnd),executeToolInTelemetryContext:em.executeTool,runInTracingChannelSpan:x,onPreliminaryToolResult:t=>{e?.enqueue(t)}});null!=a&&(e?.enqueue(a.output),r.push(a.output))})),r.length>0||n.length>0||a.length>0){let e=[];for(let t of r)e.push({type:"tool-result",toolCallId:t.toolCallId,toolName:t.toolName,output:await fi({toolCallId:t.toolCallId,input:t.input,tool:fJ(b,t.toolName),output:"tool-result"===t.type?t.output:t.error,errorMode:"tool-error"===t.type?"text":"none"})});for(let t of a)e.push({type:"tool-result",toolCallId:t.toolCall.toolCallId,toolName:t.toolCall.toolName,output:await fi({toolCallId:t.toolCall.toolCallId,input:t.toolCall.input,tool:fJ(b,t.toolCall.toolName),output:t.error,errorMode:"text"})});for(let t of n)e.push({type:"tool-result",toolCallId:t.toolCall.toolCallId,toolName:t.toolCall.toolName,output:{type:"execution-denied",reason:t.approvalResponse.reason}});ex.push({role:"tool",content:e})}}finally{e?.close()}}async function Z({currentStep:a,usage:o}){let h,f,m=fQ({abortController:l,label:"Step",timeoutMs:s});function g(){null!=h&&(clearTimeout(h),h=void 0)}function x(){null!=f&&clearTimeout(f),f=fQ({abortController:p,label:"Chunk",timeoutMs:c})}function j(){i?.removeEventListener("abort",j),null!=m&&clearTimeout(m),g(),null!=f&&(clearTimeout(f),f=void 0)}i?.addEventListener("abort",j,{once:!0});try{let s,l,c;ee=new iR;let p=em.startTracingChannelContext?.({type:"step",event:{callId:eZ,stepNumber:a},completion:ee.promise}),f=e=>p?.run(e)??e(),m=ew.flatMap(e=>e.response.messages),L=[...ex,...m],F=et??[...M,...ex],B=await R?.({model:e,steps:ew,stepNumber:ew.length,instructions:N,initialInstructions:t.instructions,messages:F,initialMessages:M,responseMessages:L,toolsContext:Y,runtimeContext:W,experimental_sandbox:v}),er=B?.experimental_sandbox??v;W=B?.runtimeContext??W,Y=B?.toolsContext??Y;let ea=hQ(B?.model??e);ek=ea;let eo=ms({tools:b,activeTools:B?.activeTools??_}),{executionTools:en,modelTools:ei,toolCallerMessages:es}=f5({tools:ef(eo,{toolsContext:Y,experimental_sandbox:er}),toolCallers:eh}),el=B?.toolOrder??I,eu=await fd({tools:ei,toolOrder:el,toolsContext:Y,experimental_sandbox:er}),ed=fu({toolChoice:B?.toolChoice??w}),ec=f8({messages:B?.messages??F,toolCallerMessages:es});e_=ec;let ep=B?.instructions??B?.system??N;N=ep;let eg=h9(O,B?.providerOptions),ey=mx({callSettings:eL,stepSettings:B}),eb=P(),{retry:eI}=fX({maxRetries:eq,abortSignal:i}),eS=!1,eM=()=>f(()=>eI(async()=>gC({model:B?.model??e,tools:ei,toolOrder:el,toolChoice:B?.toolChoice??w,instructions:ep,messages:ec,allowSystemInMessages:y,repairToolCall:k,refineToolInput:S,abortSignal:i,headers:r,includeRawChunks:Q.rawChunks,providerOptions:eg,download:X,output:E,callId:eZ,executeLanguageModelCallInTelemetryContext:em.executeLanguageModelCall,toolsContext:Y,experimental_sandbox:er,onLanguageModelCallStart:sc(G,em.onLanguageModelCallStart),onLanguageModelCallEnd:sc(H,em.onLanguageModelCallEnd),onStart:async({promptMessages:e})=>{eS||(eS=!0,await fY({event:{callId:eZ,provider:ea.provider,modelId:ea.modelId,stepNumber:ew.length,instructions:ep,messages:ec,tools:b,toolChoice:B?.toolChoice??w,activeTools:B?.activeTools??_,toolOrder:el,steps:[...ew],providerOptions:eg,runtimeContext:W,toolsContext:Y,output:E,promptMessages:e,stepTools:eu,stepToolChoice:ed},callbacks:[V,em.onStepStart]}))},_internal:{now:P},...ey}))),eA=await eM(),eR=eA.request,eP=eA.response,e$=eA.stream.getReader(),eN=0,ez=0,ej=[],eD=new WeakSet,eB=new Set,eV=new Set,eG=!1,eH=eU>0||U,eJ=new ReadableStream({async pull(e){let t=t=>{switch(t.type){case"text-start":eB.add(t.id);break;case"text-end":eB.delete(t.id);break;case"reasoning-start":eV.add(t.id);break;case"reasoning-end":eV.delete(t.id)}e.enqueue(t)},r=()=>{for(let e of ej)t(e);ej=[]},a=()=>
104{for(let t of eB)e.enqueue({type:"text-end",id:t});for(let t of(eB.clear(),eV))e.enqueue({type:"reasoning-end",id:t});eV.clear()};for(;;){let o,n,{done:i,value:s}=await e$.read();if(eG&&(e.enqueue(function({warnings:e}){return{[gb]:!0,warnings:e}}({warnings:i||"model-call-start"!==s.type?[]:s.warnings})),eG=!1),i){r(),e.close();return}let l="tool-input-start"===s.type||"tool-input-delta"===s.type||"tool-input-end"===s.type||"tool-call"===s.type||"tool-approval-request"===s.type||"tool-approval-response"===s.type||"tool-result"===s.type||"tool-error"===s.type;if("model-call-end"===s.type){r(),t(s);return}if(eH&&"error"!==s.type&&(l||ej.length>0)){g$(s)&&(g(),x(),eD.add(s)),ej.push(s);continue}if("error"!==s.type)return void t(s);await fY({event:{chunk:s},callbacks:D});let u=fF(s.error),d=hh.isInstance(u);try{o=await q({error:u})}catch{}let c=U&&"object"==typeof o&&null!=o&&"retry"in o&&!0===o.retry,p=!d&&eN<eU;if(!p&&!(!d&&!p&&c&&ez<1)){r(),eO.add(s.error),e.enqueue(s);return}p?eN++:ez++,await e$.cancel(u),ej=[],a();try{n=await eM()}catch(t){e.enqueue({type:"error",error:t}),e.close();return}eR=n.request,eP=n.response,e$=n.stream.getReader(),eG=!0}},cancel:e=>e$.cancel(e)});i?.aborted||(h=fQ({abortController:d,label:"First chunk",timeoutMs:u}));let eK=function({stream:e,tools:t,stepInputMessages:r,abortSignal:a,toolsContext:o}){if(null==t)return e;let n=ge(),i=({toolCallId:e,toolName:r})=>{let a=n[e],i=a?.validatedContexts[r];if(null!=i)return i;let s=fJ(t,r),l=mn({toolName:r,context:fJ(o,r),contextSchema:s?.contextSchema});return null!=a&&(a.validatedContexts[r]=l),l};return e.pipeThrough(new TransformStream({async transform(e,o){if(o.enqueue(e),gw(e)){n=ge();return}switch(e.type){case"tool-input-start":{n[e.id]={toolName:e.toolName,validatedContexts:ge()};let o=fJ(t,e.toolName);o?.onInputStart!=null&&await o.onInputStart({toolCallId:e.id,messages:r,abortSignal:a,context:await i({toolCallId:e.id,toolName:e.toolName})});break}case"tool-input-delta":{let o=n[e.id]?.toolName,s=fJ(t,o);s?.onInputDelta!=null&&await s.onInputDelta({inputTextDelta:e.delta,toolCallId:e.id,messages:r,abortSignal:a,context:await i({toolCallId:e.id,toolName:o})});break}case"tool-call":{let o=e.toolName,s=fJ(t,o);if(e.invalid||s?.onInputAvailable==null)delete n[e.toolCallId];else{let t=i({toolCallId:e.toolCallId,toolName:o});delete n[e.toolCallId],await s.onInputAvailable({input:e.input,toolCallId:e.toolCallId,messages:r,abortSignal:a,context:await t})}}}}}))}({stream:eJ,tools:en,stepInputMessages:ec,abortSignal:i,toolsContext:Y}),eW=null==em.runInTracingChannelSpan?void 0:e=>f(()=>em.runInTracingChannelSpan(e)),eY=function({stream:e,tools:t,callId:r,messages:a,abortSignal:o,timeout:n,experimental_sandbox:i,toolsContext:s,toolApproval:l,runtimeContext:u,toolApprovalSecret:d,generateId:c,onToolExecutionStart:p,onToolExecutionEnd:h,executeToolInTelemetryContext:f,runInTracingChannelSpan:m}){let g=[];return e.pipeThrough(new TransformStream({async transform(e,y){if(y.enqueue(e),gw(e)){g.length=0;return}switch(e.type){case"tool-call":{if(e.invalid)return;let r=fJ(t,e.toolName);if(null==r)return;let o=await m_({tools:t,toolCall:e,toolApproval:l,messages:a,toolsContext:s,runtimeContext:u});if("not-applicable"===o.type){null!=r.execute&&!0!==e.providerExecuted&&g.push(e);return}let n=c(),i=await mY({secret:d,approvalId:n,toolCallId:e.toolCallId,toolName:e.toolName,input:e.input});switch(o.type){case"user-approval":y.enqueue({type:"tool-approval-request",approvalId:n,toolCall:e,...null!=o.reason?{reason:o.reason}:{},...null!=i?{signature:i}:{}});return;case"denied":y.enqueue({type:"tool-approval-request",approvalId:n,toolCall:e,isAutomatic:!0,...null!=i?{signature:i}:{}}),y.enqueue({type:"tool-approval-response",approvalId:n,approved:!1,toolCall:e,reason:o.reason,providerExecuted:e.providerExecuted}),y.enqueue({type:"tool-output-denied",toolCallId:e.toolCallId,toolName:e.toolName});return;case"approved":y.enqueue({type:"tool-approval-request",approvalId:n,toolCall:e,isAutomatic:!0,...null!=i?{signature:i}:{}}),y.enqueue({type:"tool-approval-response",approvalId:n,approved:!0,toolCall:e,reason:o.reason,providerExecuted:e.providerExecuted})}null!=r.execute&&!0!==e.providerExecuted&&g.push(e);return}case"model-call-end":if(!md(e.finishReason))return;await Promise.all(g.map(async e=>{try{let l=await mi({toolCall:e,tools:t,callId:r,messages:a,abortSignal:o,timeout:n,experimental_sandbox:i,toolsContext:s,onToolExecutionStart:p,onToolExecutionEnd:h,executeToolInTelemetryContext:f,runInTracingChannelSpan:m,onPreliminaryToolResult:e=>{y.enqueue(e)}});null!=l&&(y.enqueue({type:"tool-execution-end",toolCallId:l.output.toolCallId,toolExecutionMs:l.toolExecutionMs}),y.enqueue(l.output))}catch(e){y.enqueue({type:"error",error:e})}}))}}}))}({stream:eK,tools:en,callId:eZ,messages:ec,abortSignal:i,timeout:z,experimental_sandbox:er,toolsContext:Y,toolApproval:C,runtimeContext:W,toolApprovalSecret:A,generateId:$,onToolExecutionStart:sc(J,em.onToolExecutionStart),onToolExecutionEnd:sc(K,em.onToolExecutionEnd),executeToolInTelemetryContext:em.executeTool,runInTracingChannelSpan:eW}),eX=()=>({...eR,body:Q.requestBody?eR?.body:void 0,messages:Q.requestMessages?h2(ec):void 0});ev=eX().messages??[];let eQ=[],e0=[],e1=[],e2="other",e4=!1,e6=!1,e9=fB(),e3=!0,e5=()=>({responseTimeMs:0,effectiveOutputTokensPerSecond:0,outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:0,timeToFirstOutputMs:void 0,timeBetweenOutputChunksMs:void 0}),e8=e5(),e7={},te=()=>({id:$(),timestamp:new Date,modelId:ea.modelId}),tt=te(),tr=new Map,ta=new Map,to=(e,t)=>{e.enqueue(t)};eF.addStream(eY.pipeThrough(new TransformStream({async transform(e,t){if(gw(e)){s=e.w
104arnings,e2="other",c=void 0,e4=!1,e6=!1,e9=fB(),l=void 0,e8=e5(),tt=te(),tr.clear(),ta.clear(),t.enqueue({[gN]:{request:eX(),warnings:s}});return}if("model-call-start"===e.type){s=e.warnings;return}e3&&(e3=!1,to(t,{type:"start-step",request:eX(),warnings:s??[]}));let r=e.type;if(g$(e)){let t=eD.has(e);e6||t||g(),e6=!0,t||x()}switch(r){case"file":case"custom":case"source":case"reasoning-file":case"tool-input-start":case"tool-input-end":case"tool-input-delta":case"tool-approval-request":case"tool-output-denied":to(t,e);break;case"text-start":{let r=eT(e.id);tr.set(e.id,r),to(t,{...e,id:r});break}case"text-delta":(e.text.length>0||null!=e.providerMetadata)&&to(t,{...e,id:tr.get(e.id)??e.id});break;case"text-end":to(t,{...e,id:tr.get(e.id)??e.id}),tr.delete(e.id);break;case"reasoning-start":{let r=eE(e.id);ta.set(e.id,r),to(t,{...e,id:r});break}case"reasoning-delta":to(t,{...e,id:ta.get(e.id)??e.id});break;case"reasoning-end":to(t,{...e,id:ta.get(e.id)??e.id}),ta.delete(e.id);break;case"tool-call":to(t,e),eQ.push(e);break;case"tool-approval-response":to(t,e),e1.push(e);break;case"tool-result":to(t,e),e.preliminary||e0.push(e);break;case"tool-error":to(t,e),e0.push(e);break;case"tool-execution-end":e7[e.toolCallId]=e.toolExecutionMs;break;case"model-call-response-metadata":tt={id:e.id??tt.id,timestamp:e.timestamp??tt.timestamp,modelId:e.modelId??tt.modelId};break;case"model-call-end":e4=!0,e9=e.usage,e2=e.finishReason,c=e.rawFinishReason,l=e.providerMetadata,e8=e.performance;break;case"error":e4=!0,to(t,e),e2="error";break;case"raw":Q.rawChunks&&to(t,e);break;default:throw Error(`Unknown chunk type: ${r}`)}},async flush(e){if(!e4&&!e6){to(e,{type:"error",error:new p5({message:"No output generated. The model stream ended without a finish chunk."})}),j(),eF.closeStream();return}let t=P()-eb;to(e,{type:"finish-step",finishReason:e2,rawFinishReason:c,usage:e9,performance:{stepTimeMs:t,toolExecutionMs:e7,...e8},providerMetadata:l,response:{...tt,headers:eP?.headers}});let r=fV(o,e9);await ee.promise;let i=eQ.filter(e=>!0!==e.providerExecuted),s=e0.filter(e=>!0!==e.providerExecuted),u=e1.filter(e=>!1===e.approved);for(let e of eQ){if(!0!==e.providerExecuted)continue;let t=fJ(en,e.toolName);t?.type==="provider"&&t.supportsDeferredResults&&!e0.some(t=>("tool-result"===t.type||"tool-error"===t.type)&&t.toolCallId===e.toolCallId)&&eC.set(e.toolCallId,{toolName:e.toolName})}for(let e of e0)("tool-result"===e.type||"tool-error"===e.type)&&eC.delete(e.toolCallId);if(j(),i.length===s.length+u.length&&(i.length>0||eC.size>0)&&!await mq({stopConditions:T,steps:ew}))try{await n(()=>Z({currentStep:a+1,usage:r}))}catch(t){to(e,{type:"error",error:t}),eF.closeStream()}else to(e,{type:"finish",finishReason:e2,rawFinishReason:c,totalUsage:r}),eF.closeStream()}})),{onError:j,onCancel:j})}catch(e){throw j(),e}}eF._initialResponseMessages.resolve(ex),await n(()=>Z({currentStep:0,usage:fB()}))})().catch(async e=>{await em.onError?.({callId:eZ,error:e}),eF._initialResponseMessages.reject(e),gz(eF._initialResponseMessages.promise),eF.addStream(new ReadableStream({start(t){t.enqueue({type:"error",error:e}),t.close()}})),eF.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then(e=>e.at(-1))}get content(){return this.steps.then(e=>e.flatMap(e=>e.content))}get warnings(){return this.steps.then(e=>e.flatMap(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=>ml(e.reasoning))}get sources(){return this.steps.then(e=>e.flatMap(e=>e.sources))}get files(){return this.steps.then(e=>e.flatMap(e=>e.files))}get toolCalls(){return this.steps.then(e=>e.flatMap(e=>e.toolCalls))}get staticToolCalls(){return this.steps.then(e=>e.flatMap(e=>e.staticToolCalls))}get dynamicToolCalls(){return this.steps.then(e=>e.flatMap(e=>e.dynamicToolCalls))}get toolResults(){return this.steps.then(e=>e.flatMap(e=>e.toolResults))}get staticToolResults(){return this.steps.then(e=>e.flatMap(e=>e.staticToolResults))}get dynamicToolResults(){return this.steps.then(e=>e.flatMap(e=>e.dynamicToolResults))}get usage(){return this.totalUsage}get request(){return this.finalStep.then(e=>e.request)}get response(){return this.finalStep.then(e=>e.response)}get responseMessages(){return Promise.all([this._initialResponseMessages.promise,this.steps]).then(([e,t])=>[...e,...t.flatMap(e=>e.response.messages)])}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(){let[e,t]=this.baseStream.tee();return this.baseStream=t,e}get textStream(){return gg(function({stream:e}){return e.pipeThrough(new TransformStream({transform(e,t){"text-delta"===e.type&&t.enqueue(e.text)}}
104))}({stream:this.stream}))}get stream(){return gg(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){t.enqueue(e)}})))}get fullStream(){return this.stream}rejectResultPromises(e){this.rejectResultPromise({delayedPromise:this._finishReason,error:e}),this.rejectResultPromise({delayedPromise:this._rawFinishReason,error:e}),this.rejectResultPromise({delayedPromise:this._totalUsage,error:e}),this.rejectResultPromise({delayedPromise:this._steps,error:e}),this.rejectResultPromise({delayedPromise:this._initialResponseMessages,error:e})}rejectResultPromise({delayedPromise:e,error:t}){e.isPending()&&(e.reject(t),gz(e.promise))}async consumeStream(e){try{await gy({stream:this.stream,onError:t=>{this.rejectResultPromises(t),e?.onError?.(t)}})}catch(t){this.rejectResultPromises(t),e?.onError?.(t)}}get experimental_partialOutputStream(){return this.partialOutputStream}get partialOutputStream(){return gg(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:e},t){void 0!==e&&t.enqueue(e)}})))}get elementStream(){let e=this.outputSpecification?.createElementStreamTransform();if(null==e)throw new eO({functionality:`element streams in ${this.outputSpecification?.name??"text"} mode`});return gg(this.teeStream().pipeThrough(e))}getOutputPromise(){return null==this.outputPromise&&(this.outputPromise=this.finalStep.then(e=>(this.outputSpecification??mp()).parseCompleteOutput({text:e.text},{response:e.response,usage:e.usage,finishReason:e.finishReason}))),this.outputPromise}get output(){return this.getOutputPromise()}toUIMessageStream({originalMessages:e,generateMessageId:t,onStepEnd:r,onStepFinish:a,onEnd:o,onFinish:n,messageMetadata:i,sendReasoning:s,sendSources:l,sendStart:u,sendFinish:d,onError:c}={}){return gg(gm({stream:this.stream,tools:this.tools,originalMessages:e,generateMessageId:t,onStepEnd:r??a,onEnd:o??n,messageMetadata:i,sendReasoning:s,sendSources:l,sendStart:u,sendFinish:d,onError:c}))}pipeUIMessageStreamToResponse(e,{originalMessages:t,generateMessageId:r,onStepEnd:a,onStepFinish:o,onEnd:n,onFinish:i,messageMetadata:s,sendReasoning:l,sendSources:u,sendFinish:d,sendStart:c,onError:p,...h}={}){return function({response:e,status:t,statusText:r,headers:a,stream:o,keepAliveMs:n,consumeSseStream:i}){let s=m9({stream:o.pipeThrough(new m3),keepAliveMs:n});if(i){let[e,t]=s.tee();s=e,i({stream:t})}return m6({response:e,status:t,statusText:r,headers:m4(a,m5),stream:s.pipeThrough(new TextEncoderStream)})}({response:e,stream:this.toUIMessageStream({originalMessages:t,generateMessageId:r,onStepEnd:a??o,onEnd:n??i,messageMetadata:s,sendReasoning:l,sendSources:u,sendFinish:d,sendStart:c,onError:p}),...h})}pipeTextStreamToResponse(e,t){return function({response:e,status:t,statusText:r,headers:a,stream:o}){return m6({response:e,status:t,statusText:r,headers:m4(a,{"content-type":"text/plain; charset=utf-8"}),stream:o.pipeThrough(new TextEncoderStream)})}({response:e,stream:this.textStream,...t})}toUIMessageStreamResponse({originalMessages:e,generateMessageId:t,onStepEnd:r,onStepFinish:a,onEnd:o,onFinish:n,messageMetadata:i,sendReasoning:s,sendSources:l,sendFinish:u,sendStart:d,onError:c,...p}={}){return function({status:e,statusText:t,headers:r,stream:a,keepAliveMs:o,consumeSseStream:n}){let i=m9({stream:a.pipeThrough(new m3),keepAliveMs:o});if(n){let[e,t]=i.tee();i=e,n({stream:t})}return new Response(i.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:m4(r,m5)})}({stream:this.toUIMessageStream({originalMessages:e,generateMessageId:t,onStepEnd:r??a,onEnd:o??n,messageMetadata:i,sendReasoning:s,sendSources:l,sendFinish:u,sendStart:d,onError:c}),...p})}toTextStreamResponse(e){return function({status:e,statusText:t,headers:r,stream:a}){return new Response(a.pipeThrough(new TextEncoderStream),{status:e??200,statusText:t,headers:m4(r,{"content-type":"text/plain; charset=utf-8"})})}({stream:this.textStream,...e})}};let gD={type:"deprecated",setting:"rawInput in output-error UI message parts",message:'Use the "input" field instead. The "rawInput" field will be removed in the next major version.'};async function gq(e,t){let r=[];e.some(e=>e.parts.some(e=>null!=e&&"object"==typeof e&&"type"in e&&"string"==typeof e.type&&("dynamic-tool"===e.type||e.type.startsWith("tool-"))&&"state"in e&&"output-error"===e.state&&Object.prototype.hasOwnProperty.call(e,"rawInput")&&"rawInput"in e&&void 0!==e.rawInput))&&hU({warnings:[gD]});let a=e.reduce((e,t,r)=>"user"===t.role?r:e,-1);async function o({toolPart:e,toolName:r,output:a,errorMode:n}){var i;let s=fJ(t?.tools,r);return"none"===n&&null==s&&"dynamic-tool"===(i=e).type&&!1===i.dynamic?{type:"text",value:"Tool output omitted because the tool is no longer available."}:fi({toolCallId:e.toolCallId,input:e.input,output:a,tool:s,errorMode:n})}for(let i of((t?.ignoreIncompleteToolCalls||a>0)&&(e=e.map((e,r)=>({...e,parts:e.parts.filter(e=>!gu(e)||("approval-requested"!==e.state||r>=a)&&(!t?.ignoreIncompleteToolCalls||"approval-responded"===e.state||"output-
104available"===e.state&&!0!==e.preliminary||"output-error"===e.state||"output-denied"===e.state))}))),e))switch(i.role){case"system":{let e=i.parts.filter(e=>"text"===e.type),t=e.reduce((e,t)=>null!=t.providerMetadata?{...e,...t.providerMetadata}:e,{});r.push({role:"system",content:e.map(e=>e.text).join(""),...Object.keys(t).length>0?{providerOptions:t}:{}});break}case"user":r.push({role:"user",content:i.parts.map(e=>gr(e)?{type:"text",text:e.text,...null!=e.providerMetadata?{providerOptions:e.providerMetadata}:{}}:go(e)?{type:"file",mediaType:e.mediaType,filename:e.filename,data:null!=e.providerReference?{type:"reference",reference:e.providerReference}:{type:"url",url:new URL(e.url)},...null!=e.providerMetadata?{providerOptions:e.providerMetadata}:{}}:gt(e)?t?.convertDataPart?.(e):void 0).filter(sg)});break;case"assistant":if(null!=i.parts){let e=[];async function n(){if(0===e.length)return;let a=[];for(let r of e)if(gr(r))a.push({type:"text",text:r.text,...null!=r.providerMetadata?{providerOptions:r.providerMetadata}:{}});else if(ga(r))a.push({type:"custom",kind:r.kind,...null!=r.providerMetadata?{providerOptions:r.providerMetadata}:{}});else if(go(r))a.push({type:"file",mediaType:r.mediaType,filename:r.filename,data:null!=r.providerReference?{type:"reference",reference:r.providerReference}:{type:"url",url:new URL(r.url)},...null!=r.providerMetadata?{providerOptions:r.providerMetadata}:{}});else if(gn(r))a.push({type:"reasoning-file",data:{type:"url",url:new URL(r.url)},mediaType:r.mediaType,providerOptions:r.providerMetadata});else if(gi(r))a.push({type:"reasoning",text:r.text,providerOptions:r.providerMetadata});else if(gu(r)){let e=gc(r);if("input-streaming"!==r.state){let t=r.callProviderMetadata??("output-error"===r.state?r.resultProviderMetadata:void 0);if(a.push({type:"tool-call",toolCallId:r.toolCallId,toolName:e,input:"output-error"===r.state?r.input??("rawInput"in r?r.rawInput:void 0):r.input,providerExecuted:r.providerExecuted,...null!=t?{providerOptions:t}:{}}),null!=r.approval&&a.push({type:"tool-approval-request",approvalId:r.approval.id,toolCallId:r.toolCallId,isAutomatic:r.approval.isAutomatic,...null!=r.approval.requestReason?{reason:r.approval.requestReason}:{},...Object.prototype.hasOwnProperty.call(r.approval,"inputSchemaInput")?{inputSchemaInput:r.approval.inputSchemaInput}:{},...null!=r.approval.signature?{signature:r.approval.signature}:{}}),!0===r.providerExecuted&&"approval-responded"!==r.state&&("output-available"===r.state||"output-error"===r.state)){let t=r.resultProviderMetadata??r.callProviderMetadata;a.push({type:"tool-result",toolCallId:r.toolCallId,toolName:e,output:await o({toolPart:r,toolName:e,output:"output-error"===r.state?r.errorText:r.output,errorMode:"output-error"===r.state?"json":"none"}),...null!=t?{providerOptions:t}:{}})}}}else if(gt(r)){let e=t?.convertDataPart?.(r);null!=e&&a.push(e)}else throw Error(`Unsupported part: ${r}`);a.length>0&&r.push({role:"assistant",content:a});let n=e.filter(e=>gu(e)&&(!0!==e.providerExecuted||e.approval?.approved!=null));if(n.length>0){let e=[];for(let t of n)if(t.approval?.approved!=null&&e.push({type:"tool-approval-response",approvalId:t.approval.id,approved:t.approval.approved,reason:t.approval.reason,providerExecuted:t.providerExecuted}),"approval-responded"===t.state&&t.approval?.approved===!1&&e.push({type:"tool-result",toolCallId:t.toolCallId,toolName:gc(t),output:{type:"execution-denied",reason:t.approval.reason},...null!=t.callProviderMetadata?{providerOptions:t.callProviderMetadata}:{}}),!0!==t.providerExecuted)switch(t.state){case"output-denied":e.push({type:"tool-result",toolCallId:t.toolCallId,toolName:gc(t),output:{type:"error-text",value:t.approval?.reason??"Tool call execution denied."},...null!=t.callProviderMetadata?{providerOptions:t.callProviderMetadata}:{}});break;case"output-error":case"output-available":{let r=gc(t);e.push({type:"tool-result",toolCallId:t.toolCallId,toolName:r,output:await o({toolPart:t,toolName:r,output:"output-error"===t.state?t.errorText:t.output,errorMode:"output-error"===t.state?"text":"none"}),...null!=t.callProviderMetadata?{providerOptions:t.callProviderMetadata}:{}})}}e.length>0&&r.push({role:"tool",content:e})}e=[]}for(let t of i.parts)ga(t)||gr(t)||gi(t)||gn(t)||go(t)||gu(t)||gt(t)?e.push(t):"step-start"===t.type&&await n();await n()}break;default:{let e=i.role;throw new hA({originalMessage:i,message:`Unsupported role: ${e}`})}}return r}let gU=de(uf(),fb.optional()),gL=de(uf(),uf());function gF({telemetry:e}){let t=m$({telemetry:e});return{...t,onStart:r=>t.onStart?.({...r,runtimeContext:mk({context:r.runtimeContext,includeContext:e?.includeRuntimeContext})}),onEnd:r=>t.onEnd?.({...r,runtimeContext:mk({context:r.runtimeContext,includeContext:e?.includeRuntimeContext})})}}s2(()=>{let e=u2({id:uf(),approved:uX().optional(),descriptor:uW().optional(),requestReason:uf().optional(),reason:uX().optional(),isAutomatic:uB().optional(),signature:uf().optional(),inputSchemaInput:uW().optional()}),t=e.extend({approved:uB(),reason:uf().optional()}),r=t.extend({approved:dn(!0)}),a=t.extend({approved:dn(!1)});return s9(fg(u2({id:uf(),role:fy(["system","user","assistant"]),metadata:uW().optional(),parts:fg(fv([u2({type:dn("text"),text:uf(),state:fy(["streaming","done"]).optional(),providerMetadata:fw.optional()}),u2({type:dn("reasoning"),id:uf().optional(),text:uf(),state:fy(["streaming","done"]).optional(),providerMetadata:fw.optional()}),u2({type:dn("custom"),kind:uf(),providerMetadata:fw.optional()}),u2({type:dn("source-url"),sourceId:uf(),url:uf(),title:uf().optional(),providerMetadata:fw.optional()}),u2({type:dn("source-document"),sourceId:uf(),mediaType:uf(),title:uf(),filename:uf().optional(),providerMetadata:fw.optional()}),u2({type:dn("file"),mediaType:uf(),filename:uf().optional(),url:uf(),providerReference:gL.optional(),providerMetadata:fw.optional()}),u2({type:dn("reasoning-file"),mediaType:uf(),url:uf(),providerMetadata:fw.optional()}),u2({type:dn("step-start")}),u2({type:uf().startsWith("data-"),id:uf().optional(),data:uW()}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("input-streaming"),input:uW().optional(),rawInput:uf().optional(),providerExecuted:uB().optional(),callProviderMetadata:fw.optional(),output:uX().optional(),errorText:uX().optional(),approval:uX().optional()}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("input-available"),input:uW(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:uX().optional()}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("approval-requested"),input:uW(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:e}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("approval-responded"),input:uW(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:t}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("output-available"),input:uW(),providerExecuted:uB().optional(),output:uW(),errorText:uX().optional(),callProviderMetadata:fw.optional(),resultProviderMetadata:fw.optional(),preliminary:uB().optional(),approval:r.optional()}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("output-error"),input:uW().optional(),rawInput:uW().optional(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uf(),callProviderMetadata:fw.optional(),resultProviderMetadata:fw.optional(),approval:r.optional()}),u2({type:dn("dynamic-tool"),dynamic:dn(!1).optional(),toolName:uf(),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("output-denied"),input:uW(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:a}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("input-streaming"),providerExecuted:uB().optional(),callProviderMetadata:fw.optional(),input
104:uW().optional(),rawInput:uf().optional(),output:uX().optional(),errorText:uX().optional(),approval:uX().optional()}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("input-available"),providerExecuted:uB().optional(),input:uW(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:uX().optional()}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("approval-requested"),input:uW(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:e}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("approval-responded"),input:uW(),providerExecuted:uB().optional(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:t}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("output-available"),providerExecuted:uB().optional(),input:uW(),output:uW(),errorText:uX().optional(),callProviderMetadata:fw.optional(),resultProviderMetadata:fw.optional(),preliminary:uB().optional(),approval:r.optional()}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("output-error"),providerExecuted:uB().optional(),input:uW().optional(),rawInput:uW().optional(),output:uX().optional(),errorText:uf(),callProviderMetadata:fw.optional(),resultProviderMetadata:fw.optional(),approval:r.optional()}),u2({type:uf().startsWith("tool-"),toolCallId:uf(),title:uf().optional(),toolMetadata:gU.optional(),state:dn("output-denied"),providerExecuted:uB().optional(),input:uW(),output:uX().optional(),errorText:uX().optional(),callProviderMetadata:fw.optional(),approval:a})]))}).superRefine((e,t)=>{"assistant"!==e.role&&0===e.parts.length&&t.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:e.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))});let gZ=sp({prefix:"call",size:24});async function gB({model:e,value:t,providerOptions:r,maxRetries:a,abortSignal:o,headers:n,experimental_telemetry:i,telemetry:s=i,runtimeContext:l={},onStart:u,experimental_onStart:d,onEnd:c,experimental_onEnd:p,_internal:{generateCallId:h=gZ}={}}){let f=h0(e),{maxRetries:m,retry:g}=fX({maxRetries:a,abortSignal:o}),y=u??d,v=c??p,b=iL(n??{},`ai/${h4}`),w=h(),x=gF({telemetry:s}),_=x.runInTracingChannelSpan??(async({execute:e})=>await e()),I={callId:w,operationId:"ai.embed",runtimeContext:l,provider:f.provider,modelId:f.modelId,value:t,maxRetries:m,headers:b,providerOptions:r};return await _({type:"embed",event:I,execute:async()=>{await fY({event:I,callbacks:[y,x.onStart]});try{let{embedding:e,usage:a,warnings:n,response:i,providerMetadata:s}=await g(async()=>{let e=h();await fY({event:{callId:w,embedCallId:e,operationId:"ai.embed.doEmbed",provider:f.provider,modelId:f.modelId,values:[t]},callbacks:[x.onEmbedStart]});let a=await f.doEmbed({values:[t],abortSignal:o,headers:b,providerOptions:r}),n=a.embeddings[0],i=a.usage??{tokens:0/0};if(await fY({event:{callId:w,embedCallId:e,operationId:"ai.embed.doEmbed",provider:f.provider,modelId:f.modelId,values:[t],embeddings:a.embeddings,usage:i},callbacks:[x.onEmbedEnd]}),null==n)throw new K({data:a.embeddings,message:"No embedding generated."});return{embedding:n,usage:i,warnings:a.warnings??[],providerMetadata:a.providerMetadata,response:a.response}});return hU({warnings:n,provider:f.provider,model:f.modelId}),await fY({event:{callId:w,operationId:"ai.embed",runtimeContext:l,provider:f.provider,modelId:f.modelId,value:t,embedding:e,usage:a,warnings:n,providerMetadata:s,response:i},callbacks:[v,x.onEnd]}),new gV({value:t,embedding:e,usage:a,warnings:n,providerMetadata:s,response:i})}catch(e){throw await x.onError?.({callId:w,error:e}),e}}})}var gV=class{constructor(e){this.value=e.value,this.embedding=e.embedding,this.usage=e.usage,this.warnings=e.warnings,this.providerMetadata=e.providerMetadata,this.response=e.response}};let gG=sp({prefix:"call",size:24});async function gH({model:e,values:t,maxParallelCalls:r=1/0,maxRetries:a,abortSignal:o,headers:n,providerOptions:i,experimental_telemetry:s,telemetry:l=s,runtimeContext:u={},onStart:d,experimental_onStart:c,onEnd:p,experimental_onEnd:h,_internal:{generateCallId:f=gG}={}}){let m=h0(e),{maxRetries:g,retry:y}=fX({maxRetries:a,abortSignal:o}),v=d??c,b=p??h,w=iL(n??{},`ai/${h4}`),x=f(),_=gF({telemetry:l}),I=_.runInTracingChannelSpan??(async({execute:e})=>await e()),k={callId:x,operationId:"ai.embedMany",runtimeContext:u,provider:m.provider,modelId:m.modelId,value:t,maxRetries:g,headers:w,providerOptions:i};return await I({type:"embedMany",event:k,execute:async()=>{await fY({event:k,callbacks:[v,_.onStart]});try{let n,[s,l,d]=await Promise.all([m.maxEmbeddingsPerCall,m[su],m.supportsParallelCalls]),c=null!=s&&1/0!==s,p=null!=l&&1/0!==l;if(!c&&!p){let{embeddings:e,usage:r,warnings:a,response:n,providerMetadata:s}=await y(async()=>{let e=f();await fY({event:{callId:x,embedCallId:e,operationId:"ai.embedMany.doEmbed",provider:m.provider,modelId:m.modelId,values:t},callbacks:[_.onEmbedStart]});let r=await m.doEmbed({values:t,abortSignal:o,headers:w,providerOptions:i}),a=r.embeddings,n=r.usage??{tokens:0/0};return await fY({event:{callId:x,embedCallId:e,operationId:"ai.embedMany.doEmbed",provider:m.provider,modelId:m.modelId,values:t,embeddings:a,usage:n},callbacks:[_.onEmbedEnd]}),{embeddings:a,usage:n,warnings:r.warnings??[],providerMetadata:r.providerMetadata,response:r.response}});return gJ({embeddings:e,values:t}),hU({warnings:a,provider:m.provider,model:m.modelId}),await fY({event:{callId:x,operationId:"ai.embedMany",runtimeContext:u,provider:m.provider,modelId:m.modelId,value:t,embedding:e,usage:r,warnings:a,providerMetadata:s,response:[n]},callbacks:[b,_.onEnd]}),new gW({values:t,embeddings:e,usage:r,warnings:a,providerMetadata:s,responses:[n]})}let h=function({values:e,maxEmbeddingsPerCall:t,maxInputBytesPerCall:r}){if(t<=0)throw Error("maxEmbeddingsPerCall must be greater than 0");if(r<=0)throw Error("maxInputBytesPerCall must be greater than 0");if(0===e.length)return[];let a=[],o=[],n=0;for(let i of e){let e=gK.encode(i).length;o.length>0&&(o.length>=t||n+e>r)&&(a.push(o),o=[],n=0),o.push(i),n+=e}return a.push(o),a}({values:t,maxEmbeddingsPerCall:c?s:1/0,maxInputBytesPerCall:p?l:1/0}),g=m[sd],v=[],I=[],k=[],S=0,T=function(e,t){if(t<=0)throw new p$({parameter:"chunkSize",value:t,message:"chunkSize must be greater than 0"});let r=[];for(let a=0;a<e.length;a+=t)r.push(e.slice(a,a+t));return r}(h,d?r:1),E=0;for(let r of T)for(let s of(await Promise.all(r.map(async e=>{let r=E;E+=e.length;let a=g?await g({providerOptions:i,values:t,startIndex:r,endIndex:r+e.length}):i,n=await y(async()=>{let t=f();await fY({event:{callId:x,embedCallId:t,operationId:"ai.embedMany.doEmbed",provider:m.provider,modelId:m.modelId,values:e},callbacks:[_.onEmbedStart]});let r=await m.doEmbed({values:e,abortSignal:o,headers:w,providerOptions:a}),n=r.embeddings,i=r.usage??{tokens:0/0};return await fY({event:{callId:x,embedCallId:t,operationId:"ai.embedMany.doEmbed",provider:m.provider,modelId:m.modelId,values:e,embeddings:n,usage:i},callbacks:[_.onEmbedEnd]}),{embeddings:n,usage:i,warnings:r.warnings??[],providerMetadata:r.providerMetadata,response:r.response}});return gJ({embeddings:n.embeddings,values:e}),n}))))if(v.push(...s.embeddings),I.push(...s.warnings),k.push(s.response),S+=s.usage.tokens,s.providerMetadata)if(n)for(let[t,r]of Object.entries(s.providerMetadata)){var e,a;e=n,a={...fJ(n,t),...r},Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0})}else n={...s.providerMetadata};return hU({warnings:I,provider:m.provider,model:m.modelId}),await fY({event:{callId:x,operationId:"ai.embedMany",runtimeContext:u,provider:m.provider,modelId:m.modelId,value:t,embedding:v,usage:{tokens:S},warnings:I,providerMetadata:n,response:k},callbacks:[b,_.onEnd]}),new gW({values:t,embeddings:v,usage:{tokens:S},warnings:I,providerMetadata:n,responses:k})}catch(e){throw await _.onError?.({callId:x,error:e}),e}}})}function gJ({embeddings:e,values:t}){if(e.length!==t.length)throw new K({data:e,message:`Expected ${t.length} embeddings, but received ${e.length}.`})}let gK=new TextEncoder;var gW=class{constructor(e){this.values=e.values,this.embeddings=e.embeddings,this.usage=e.usage,this.warnings=e.warnings,this.providerMetadata=e.providerMetadata,this.responses=e.responses}};function gY(e){return({url:t,abortSignal:r})=>h6({url:t,maxBytes:e?.maxBytes,abortSignal:r})}sp({prefix:"call",size:24}),sp({prefix:"aiobj",size:24});let{atob:gX}=globalThis;var gQ=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,r)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){r(e)}}),this.processQueue()})}};sp({prefix:"aiobj",size:24}),sp({prefix:"call",size:24}),gY();var g0=class{constructor(e){this.captureContext=null,this.captureProcessor=null,this.captureSource=null,this.captureStream=null,this.ownsCaptureStream=!0,this.captureCleanup=[],this.captureGeneration=0,this.playbackContext=null,this.playbackQueue=[],this.playbackTime=0,this.playbackStartTime=0,this.activeSources=new Set,this.isPlaying=!1,this.playbackPaused=!1,this.captureSampleRate=e.captureSampleRate,this.playbackSampleRate=e.playbackSampleRate,this.onAudio=e.onAudio,this.onPlayingChange=e.onPlayingChange,this.maxPlaybackSeconds=e.maxPlaybackSeconds??1/0,this.onError=e.onError,this.onCapturingChange=e.onCapturingChange}ensurePlaybackContext(){if(null==this.playbackContext){this.playbackContext=new AudioContext({sampleRate:this.playbackSampleRate});let e=this.playbackContext;e.onstatechange=()=>{this.playbackContext===e&&this.setPlaying("running"===e.state&&this.activeSources.size>0)}}}async resumePlayback(){this.ensurePlaybackContext();let e=this.playbackContext;this.playbackPaused&&this.stopPlayback(),this.playbackContext!==e||(await e?.resume(),this.playbackContext===e&&(this.playbackPaused=!1,this.setPlaying(this.playbackContext?.state==="running"&&this.activeSources.size>0)))}startCapture(e,t){let r=this.captureGeneration+1;if(this.stopCapture(),r!==this.captureGeneration){(t?.ownsStream??!0)&&e.getTracks().forEac
104h(e=>e.stop());return}this.captureStream=e,this.ownsCaptureStream=t?.ownsStream??!0;let a=new AudioContext({sampleRate:this.captureSampleRate});this.captureContext=a,a.resume().catch(e=>{this.captureContext===a&&this.onError?.(e)});let o=a.createMediaStreamSource(e);this.captureSource=o;let n=a.createScriptProcessor(1024,1,1);this.captureProcessor=n,n.onaudioprocess=e=>{if(this.captureContext!==a)return;let t=function(e,t,r){if(t===r)return e;let a=t/r,o=Math.round(e.length/a),n=new Float32Array(o);for(let t=0;t<o;t++){let r=t*a,o=Math.floor(r),i=Math.min(o+1,e.length-1),s=r-o;n[t]=e[o]*(1-s)+e[i]*s}return n}(new Float32Array(e.inputBuffer.getChannelData(0)),a.sampleRate,this.captureSampleRate);try{this.onAudio(function(e){let t=new ArrayBuffer(2*e.length),r=new DataView(t);for(let t=0;t<e.length;t++){let a=Math.max(-1,Math.min(1,e[t]));r.setInt16(2*t,a<0?32768*a:32767*a,!0)}let a=new Uint8Array(t),o="";for(let e=0;e<a.length;e+=32768)o+=String.fromCharCode(...a.subarray(e,e+32768));return btoa(o)}(t))}catch(e){this.onError?.(e instanceof Error?e:Error(String(e)))}},o.connect(n),n.connect(a.destination);let i=()=>this.onCapturingChange(e.getAudioTracks().some(e=>e.enabled&&!e.muted&&"live"===e.readyState));for(let t of e.getAudioTracks())for(let e of["ended","mute","unmute"])t.addEventListener(e,i),this.captureCleanup.push(()=>t.removeEventListener(e,i));i()}stopCapture(){for(let e of(this.captureGeneration++,null!=this.captureProcessor&&(this.captureProcessor.onaudioprocess=null),this.captureCleanup))e();this.captureCleanup=[],this.captureProcessor?.disconnect(),this.captureSource?.disconnect(),this.captureContext?.close().catch(()=>{}),this.ownsCaptureStream&&this.captureStream?.getTracks().forEach(e=>e.stop()),this.captureProcessor=null,this.captureSource=null,this.captureContext=null,this.captureStream=null,this.onCapturingChange(!1)}playAudio(e){if(this.playbackPaused)return;this.ensurePlaybackContext();let t=function(e){let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);let a=new Int16Array(r.buffer),o=new Float32Array(a.length);for(let e=0;e<a.length;e++)o[e]=a[e]/32768;return o}(e);if(Math.max(0,this.playbackTime-(this.playbackContext?.currentTime??0))+t.length/this.playbackSampleRate>this.maxPlaybackSeconds){this.playbackPaused=!0,this.stopPlayback(),this.onError?.(Error("Realtime audio playback buffer is full; playback paused, call resumePlayback() to resume at the live edge"));return}this.playbackQueue.push(t),this.schedulePlayback()}stopPlayback(){for(let e of(this.playbackQueue=[],this.activeSources))try{e.onended=null,e.stop(),e.disconnect()}catch{}this.activeSources.clear(),null!=this.playbackContext&&(this.playbackTime=this.playbackContext.currentTime),this.setPlaying(!1)}getPlaybackOffsetMs(){let e=this.playbackContext;return null==e?0:(e.currentTime-this.playbackStartTime)*1e3}dispose(){this.stopCapture(),this.stopPlayback(),null!=this.playbackContext&&(this.playbackContext.onstatechange=null),this.playbackContext?.close().catch(()=>{}),this.playbackContext=null,this.playbackTime=0,this.playbackPaused=!1}setPlaying(e){e&&!this.isPlaying&&(this.playbackStartTime=this.playbackContext?.currentTime??0),this.isPlaying!==e&&(this.isPlaying=e,this.onPlayingChange(e))}schedulePlayback(){let e=this.playbackContext;if(null!=e&&0!==this.playbackQueue.length)for(;this.playbackQueue.length>0;){let t=this.playbackQueue.shift(),r=e.createBuffer(1,t.length,this.playbackSampleRate);r.getChannelData(0).set(t);let a=e.createBufferSource();a.buffer=r,a.connect(e.destination);let o=Math.max(this.playbackTime,e.currentTime);if(a.start(o),this.playbackTime=o+r.duration,this.activeSources.add(a),this.setPlaying("running"===e.state),this.playbackContext!==e)return;a.onended=()=>{a.disconnect(),this.activeSources.delete(a),0===this.playbackQueue.length&&0===this.activeSources.size&&this.setPlaying(!1)}}}},g1=class{constructor(e){this.options=e,this.active=!0,this.finishing=!1,this.incoming=Promise.resolve(),this.outgoing=Promise.resolve(),this.incomingCount=0,this.incomingBytes=0,this.outgoingCount=0,this.parse=e.model.createServerEventParser?.()??e.model.parseServerEvent.bind(e.model)}
104get hasPendingIncoming(){return this.incomingCount>0}dispose(){this.active=!1}async finish(){this.stopWriting(),await this.incoming,this.dispose()}stopWriting(){this.finishing=!0}send(e,t){if(!this.active||this.finishing)throw Error("Realtime connection is closed");if(this.outgoingCount>=(this.options.maxPending??512))throw Error("Realtime outgoing queue is full");this.outgoingCount++;let r=this.outgoing.then(async()=>{if(!this.active||this.finishing)throw Error("Realtime connection is closed");if(t?.()===!1)return;if(!this.active||this.finishing)throw Error("Realtime connection is closed");let r=await this.options.model.serializeClientEvent(e);if(!this.active||this.finishing)throw Error("Realtime connection is closed");if(t?.()!==!1){if(!this.active||this.finishing)throw Error("Realtime connection is closed");null!=r&&this.options.send(r)}});return this.outgoing=r.catch(t=>{this.finishing||"input-audio-append"===e.type||"session-close"===e.type||this.report(t)}).finally(()=>{this.outgoingCount--}),r}receive(e){if(!this.active||this.finishing)return;let t="string"==typeof e?2*e.length:e instanceof Blob?e.size:e.byteLength??0;if(this.incomingCount>=(this.options.maxPending??512)||this.incomingBytes+t>(this.options.maxPendingBytes??8388608)){this.finishing=!0,this.fatal(Error("Realtime incoming queue is full; input protocol continuity was lost"));return}this.incomingCount++,this.incomingBytes+=t,this.incoming=this.incoming.then(async()=>{if(!this.active)return;let t="string"==typeof e?e:e instanceof Blob?await e.text():new TextDecoder().decode(e),r=await s7({text:t});if(!this.active)return;if(!r.success)throw Error("Invalid JSON in realtime server message",{cause:r.error});let a=this.options.model.getHealthCheckResponse?.(r.value);if(!this.active||(null==a||this.finishing||this.options.send(a),!this.active))return;let o=this.parse(r.value);for(let e of Array.isArray(o)?o:[o]){if(!this.active)return;try{await this.options.onEvent(e)}catch(e){this.report(e)}}}).catch(e=>{this.finishing=!0,this.fatal(e instanceof Error?e:Error(String(e)))}).finally(()=>{this.incomingCount--,this.incomingBytes-=t})}fatal(e){this.active&&(null!=this.options.onFatalError?this.options.onFatalError(e):this.report(e))}report(e){if(this.active)try{this.options.onError(e instanceof Error?e:Error(String(e)))}catch{}}},g2=class{constructor(e){this.options=e,this.ws=null,this.epoch=0,this.failing=!1,this.closing=!1,this.model=e.model,this.continuous=e.model.capabilities?.conversation==="continuous",this.onServerEvent=e.onServerEvent,this.onError=e.onError,this.onClose=e.onClose}get isOpen(){return!this.closing&&!this.failing&&this.ws?.readyState===WebSocket.OPEN}connect({mode:e,token:t,url:r,onOpen:a,protocols:o}){let n;this.disconnect();let i=this.epoch;if("relay"!==e&&("client-secret"!==e||"string"!=typeof t||""===t.trim()))throw Error("Realtime client-secret connection requires a nonempty token");let s="relay"===e?{url:r,protocols:o}:this.model.getWebSocketConfig?.({token:t,url:r});if(this.epoch!==i)return;if(null==s)throw Error("Model does not support client-secret WebSockets");let l=s.url,u=s.protocols;if(this.epoch!==i)return;try{if("string"!=typeof l||!/^wss?:\/\//i.test(l))throw Error("Invalid realtime WebSocket URL");let e=new URL(l);if(!["ws:","wss:"].includes(e.protocol)||""===e.hostname||l.includes("#"))throw Error("Invalid realtime WebSocket URL")}catch{throw Error("Invalid realtime WebSocket URL; expected an absolute ws:// or wss:// URL with a host and no fragment")}if(this.epoch!==i)return;let d=new WebSocket(l,u);this.ws=d;let c=!1,p=new g1({model:this.model,send:e=>{if(this.epoch!==i||this.ws!==d||!this.isOpen)throw Error("Realtime WebSocket is not open");this.sendRaw(e)},onEvent:this.onServerEvent,onError:e=>{c||this.onError(e)},onFatalError:e=>this.fail(e)});this.epoch!==i?p.dispose():(this.codec=p,d.onopen=()=>{if(this.ws===d){c=!0;try{Promise.resolve(a()).catch(e=>{this.ws===d&&this.fail(e instanceof Error?e:Error(String(e)))}).finally(()=>{c=!1})}catch(e){this.epoch===i&&this.fail(e instanceof Error?e:Error(String(e)))}}},d.onmessage=e=>{this.ws===d&&this.codec?.receive(e.data)},d.onerror=()=>{this.ws===d&&(n=Error("WebSocket connection error"),this.failing=!0)}
104,d.onclose=e=>{if(this.ws===d){this.ws=null;let t=function(e){if(1e3!==e.code||!e.wasClean)return Error(`Realtime WebSocket closed unexpectedly (code ${e.code}${""===e.reason?"":`: ${e.reason}`})`)}(e)??n,r=null!=t&&!p.hasPendingIncoming;if(p.stopWriting(),this.notifyClosing(),this.epoch!==i)return;let a=p.finish();if(r){try{this.onError(t)}catch{}if(this.epoch!==i)return}let o=()=>{if(this.epoch===i){clearTimeout(this.drainTimer),this.epoch++,p.dispose();try{this.onClose(t)}catch(e){this.reportCallbackError(e)}}};this.drainTimer=setTimeout(o,1e3),this.awaitDrain(a,o)}})}disconnect(){this.epoch++,clearTimeout(this.drainTimer);let e=this.ws;this.ws=null,this.codec?.dispose(),this.codec=void 0,this.failing=!1,this.closing=!1,e?.close()}sendEvent(e,t,r=!1){if(this.failing||this.closing)throw Error("Realtime connection is closed");if(null==this.codec)return Promise.resolve();let a=this.epoch,o=e=>{r&&this.epoch===a&&this.isOpen&&this.fail(e instanceof Error?e:Error(String(e)))};try{let r=this.codec.send(e,t);return r.catch(o),r}catch(e){throw o(e),e}}finish(){return this.codec?.finish()??Promise.resolve()}fail(e){if(this.failing)return;this.failing=!0;let t=this.epoch,r=this.ws;
104if(this.ws=null,this.codec?.stopWriting(),r?.close(),this.notifyClosing(),this.epoch!==t)return;let a=this.finish();if(null!=this.options.onFatalError)this.options.onFatalError(e,a);else{let r=()=>{if(t===this.epoch){this.disconnect();try{this.onClose()}catch(e){this.reportCallbackError(e)}}};this.drainTimer=setTimeout(r,1e3),this.awaitDrain(a,r),this.reportCallbackError(e)}}notifyClosing(){if(!this.closing){this.closing=!0;try{this.options.onClosing?.()}catch(e){this.reportCallbackError(e)}}}async awaitDrain(e,t){try{await e}catch{}try{t()}catch(e){this.reportCallbackError(e)}}reportCallbackError(e){try{this.onError(e instanceof Error?e:Error(String(e)))}catch{}}sendRaw(e){let t=this.ws,r=this.epoch;if(null==t||!this.isOpen)return;let a=function(e){if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))return{data:e,byteLength:e.byteLength};if(e instanceof Blob)return{data:e,byteLength:e.size};let t="string"==typeof e?e:JSON.stringify(e);if(void 0===t)throw Error("Realtime event could not be encoded as JSON");return{data:t,byteLength:new TextEncoder().encode(t).byteLength}}(e);if(this.epoch!==r||this.ws!==t||!this.isOpen)throw Error("Realtime connection is closed");this.continuous&&function(e,t){if(e.byteLength>131072)throw Error("Realtime frame exceeds the 131072-byte limit; reduce the event payload");if(t+e.byteLength>131072)throw Error("Realtime send buffer is full (131072-byte limit); wait before retrying")}(a,t.bufferedAmount),t.send(a.data)}dispose(){this.disconnect()}},g4=class{constructor(e){this.options=e,this.generation=0,this.ready=!1,this.capturingStarted=!1,this.pendingAudio=0,this.captureGeneration=0,this.captureEnabled=!0;let t=e.sessionConfig?.inputAudioFormat,r=e.sessionConfig?.outputAudioFormat,a=t?.rate??r?.rate??e.sampleRate??24e3,o={type:t?.type??r?.type??"audio/pcm",rate:a};this.config={...e.sessionConfig,inputAudioFormat:{...o,...t},outputAudioFormat:{...o,...r}},this.transport=new g2({model:e.model,onServerEvent:e.onEvent,onError:e.onError,onFatalError:e.onFatalError,onClosing:()=>{let t=this.generation;e.onClosing?.(),t===this.generation&&this.stopCapture()},onClose:e.onClose}),this.audio=new g0({captureSampleRate:this.config.inputAudioFormat?.rate??a,playbackSampleRate:this.config.outputAudioFormat?.rate??a,maxPlaybackSeconds:e.maxPlaybackBufferSeconds??2,onAudio:e=>this.sendAudio(e),onError:e.onError,onCapturingChange:e.onCapturing,onPlayingChange:e.onPlaying})}connect(e){let t=this.generation+1;if(this.dispose(),t===this.generation){for(let e of[this.config.inputAudioFormat,this.config.outputAudioFormat]){if(e?.type!=="audio/pcm")throw new eO({functionality:"Continuous browser WebSocket audio supports PCM16 only"});if(null==e.rate||!Number.isFinite(e.rate)||e.rate<8e3||e.rate>96e3)throw Error("Invalid realtime PCM sample rate")}this.stream=e.stream,this.captureEnabled=!1!==e.capture,this.audio.ensurePlaybackContext(),this.audio.resumePlayback().catch(e=>{t===this.generation&&this.options.onError(e)}),this.transport.connect({mode:"relay",url:e.url,protocols:e.protocols,onOpen:()=>this.transport.sendEvent({type:this.options.model.capabilities?.startup??"session-update",config:this.config})})}}startCapture(){this.ready=!0,this.captureEnabled&&!this.capturingStarted&&this.resumeCapture().catch(e=>this.options.onError(e))}async resumeCapture(e){let t=this.captureGeneration+1;if(this.stopCapture(),t!==this.captureGeneration)return;this.ready=!0,this.capturingStarted=!0,this.captureEnabled=!0,null!=e&&(this.stream=e);let r=this.stream,a=r??await navigator.mediaDevices.getUserMedia({audio:!0});if(t!==this.captureGeneration||!this.ready){null==r&&a.getTracks().forEach(e=>e.stop());return}if(!a.getAudioTracks().some(e=>"live"===e.readyState))throw null==r&&a.getTracks().forEach(e=>e.stop()),Error("Realtime requires a live audio track");this.audio.startCapture(a,{ownsStream:null==r})}sendAudio(e){let t;if(!this.ready||!this.transport.isOpen)return;if(this.pendingAudio>=8)return void this.transport.fail(Error("Realtime audio send queue is full"));let r=this.generation;try{t=this.transport.sendEvent({type:"input-audio-append",audio:e},void 0,!0)}catch(e){if(!this.ready||!this.transport.isOpen)return;throw e}this.pendingAudio++,t.then(()=>{r===this.generation&&this.pendingAudio--},e=>{r===this.generation&&this.ready&&this.transport.isOpen&&this.options.onFatalError(e)})}sendEvent(e,t){if("session-update"===e.type)for(let t of["inputAudioFormat","outputAudioFormat"]){let r=e.config[t];if(null!=r&&(r.type!==this.config[t]?.type||null!=r.rate&&r.rate!==this.config[t]?.rate))throw Error("Changing Live WebSocket audio format requires reconnecting")}return this.transport.sendEvent(e,t)}playAudio(e){try{this.audio.playAudio(e)}catch(e){this.options.onError(e instanceof Error?e:Error(String(e)))}}stopPlayback(){this.audio.stopPlayback()}resumePlayback(){return this.audio.resumePlayback()}stopCapture(){this.captureGeneration++,this.ready=!1,this.capturingStarted=!1,this.captureEnabled=!1,this.audio.stopCapture()}finish(){return this.transport.finish()}dispose(){this.generation++,this.stopCapture(),this.ready=!1,this.capturingStarted=!1,this.pendingAudio=0,this.stream=void 0,this.transport.disconnect(),this.audio.dispose()}};async function g6(e){let t=e.body?.getReader();if(null==t)throw Error("Invalid realtime session answer");let r=new TextDecoder,a=0,o="";try{if(Number(e.headers.get("content-length"))>1048576)throw Error("Realtime session answer exceeds the 1 MiB limit");for(;;){let{done:e,value:n}=await t.read();if(e)return o+r.decode();if((a+=n.byteLength)>1048576)throw Error("Realtime session answer exceeds the 1 MiB limit");o+=r.decode(n,{stream:!0})}}catch(e){throw t.cancel(e).catch(()=>{}),e}finally{t.releaseLock()}}function g9(e){let t=e.getAudioTracks().filter(e=>"live"===e.readyState);return t.find(e=>e.enabled&&!e.muted)??t[0]}
104var g3=class{constructor(e){this.options=e,this.ownsStream=!1,this.generation=0,this.closingNotified=!1,this.captureGeneration=0,this.senderOperations=Promise.resolve(),this.trackCleanups=[]}async connect({api:e,sessionConfig:t,stream:r,timeoutMs:a,capture:o=!0}){let n=this.generation+1;this.dispose();let i=()=>n===this.generation;if(!i())return;let s=this.options.model.getWebRTCConfig?.();if(!i())return;if(null==s)throw Error("This model does not support WebRTC configuration");let l=new AbortController;this.abort=l;let u=setTimeout(()=>l.abort(Error("Realtime startup timed out")),a),d=new Promise((e,t)=>{l.signal.addEventListener("abort",()=>t(l.signal.reason),{once:!0})}),c=async()=>{let a=this.captureGeneration,n=o?r??await navigator.mediaDevices.getUserMedia({audio:!0}):void 0;if(!i()||l.signal.aborted)throw null==r&&n?.getTracks().forEach(e=>e.stop()),Error("Realtime connection cancelled");a!==this.captureGeneration&&(null==r&&n?.getTracks().forEach(e=>e.stop()),n=void 0),this.stream=n,this.ownsStream=null==r;let u=null==n?void 0:g9(n);if(null!=n&&null==u)throw Error("Realtime requires a live audio track");let c=new RTCPeerConnection;this.pc=c;let p=document.createElement("audio");p.autoplay=!0,this.audio=p,p.onplaying=()=>{i()&&this.options.onPlaying(!0)};let h=()=>{i()&&this.options.onPlaying(!1)};p.onpause=h,p.onended=h,p.onwaiting=h,c.ontrack=e=>{i()&&(p.srcObject=e.streams[0]??new MediaStream([e.track]),p.play().catch(e=>{i()&&this.options.onError(e)}))},c.onconnectionstatechange=()=>{i()&&("connected"===c.connectionState?clearTimeout(this.disconnectTimer):"disconnected"===c.connectionState?(clearTimeout(this.disconnectTimer),this.disconnectTimer=setTimeout(()=>{i()&&"disconnected"===c.connectionState&&this.fail(Error("Realtime peer disconnected beyond recovery grace period"))},this.options.disconnectTimeoutMs??5e3)):"closed"===c.connectionState?this.drainClose(Error("Realtime peer connection closed")):"failed"===c.connectionState&&this.fail(Error(`Realtime peer connection ${c.connectionState}`)))},c.oniceconnectionstatechange=()=>{i()&&"failed"===c.iceConnectionState&&this.fail(Error("Realtime ICE connection failed"))};let f=c.createDataChannel(s.dataChannelLabel);this.dc=f;let m=new g1({model:this.options.model,onEvent:this.options.onEvent,onError:this.options.onError,onFatalError:e=>{i()&&this.fail(e)},send:e=>{if(!i()||this.finishing||"open"!==f.readyState)throw Error("Realtime data channel is not open");if(f.bufferedAmount>1048576)throw Error("Realtime data channel buffer is full");let t="string"==typeof e?e:JSON.stringify(e);if(!i()||this.finishing||"open"!==f.readyState)throw Error("Realtime data channel is not open");f.send(t)}});if(!i())return void m.dispose();this.codec=m,f.onmessage=e=>{i()&&this.codec?.receive(e.data)},f.onclose=()=>{i()&&this.drainClose(Error("Realtime data channel closed"))},f.onerror=()=>{i()&&this.fail(Error("Realtime data channel error"))};let g=new Promise((e,t)=>{this.rejectStartup=t,f.onopen=()=>{this.rejectStartup=void 0,e()}});g.catch(()=>{});let y=new Promise(e=>{c.onicegatheringstatechange=()=>{"complete"===c.iceGatheringState&&e()}});if(this.sender=null!=n&&null!=u?c.addTrack(u,n):c.addTransceiver("audio",{direction:"sendrecv"}).sender,this.observeCapture(),!i()||l.signal.aborted)return;let v=await c.createOffer();if(!i()||l.signal.aborted||(await c.setLocalDescription(v),"complete"!==c.iceGatheringState&&await Promise.race([y,d]),!i()||l.signal.aborted))return;let b=c.localDescription?.sdp;if(null==b)throw Error("Realtime offer has no SDP");let w=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sdp:b,sessionConfig:t}),signal:l.signal});if(!w.ok)throw Error(`Failed to create realtime session: ${w.status}`);let x=await s7({text:await g6(w)});if(i()&&!l.signal.aborted){if(!x.success||"object"!=typeof x.value||null==x.value||!("sdp"in x.value)||"string"!=typeof x.value.sdp||0===x.value.sdp.trim().length||!("sessionId"in x.value)||"string"!=typeof x.value.sessionId||0===x.value.sessionId.trim().length)throw Error("Invalid realtime session answer");await c.setRemoteDescription({type:"answer",sdp:x.value.sdp}),await Promise.race([g,d])}};try{await Promise.race([c(),d])}catch(e){throw i()&&this.dispose(),e}finally{clearTimeout(u),this.rejectStartup=void 0}}sendEvent(e,t){if(this.finishing||this.dc?.readyState!=="open")throw Error("Realtime data channel is not open");
104return this.codec?.send(e,t)??Promise.resolve()}async resumePlayback(){if(null==this.audio)throw Error("Realtime playback is not connected");await this.audio.play()}stopPlayback(){this.audio?.pause()}finish(){return this.codec?.finish()??Promise.resolve()}fail(e){if("failure"===this.finishing)return;if(this.finishing="failure",clearTimeout(this.finishTimer),null!=this.rejectStartup){this.rejectStartup(e),this.abort?.abort(e);return}let t=this.generation,r=this.finish();if(this.notifyClosing(),t!==this.generation||(this.stopCaptureForShutdown(t),t!==this.generation))return;if(null!=this.options.onFatalError)return void this.options.onFatalError(e,r);let a=()=>{if(t===this.generation){this.dispose();try{this.options.onClose()}catch(e){this.reportCallbackError(e)}}};this.finishTimer=setTimeout(a,1e3),this.awaitDrain(r,a);try{this.options.onError(e)}catch{}}drainClose(e){if(this.finishing)return;if(null!=this.rejectStartup)return void this.fail(e);this.finishing="close";let t=this.generation,r=()=>{if(t===this.generation&&"close"===this.finishing){clearTimeout(this.finishTimer);try{this.options.onClose(e)}catch(e){this.reportCallbackError(e)}finally{t===this.generation&&this.dispose()}}};this.finishTimer=setTimeout(r,1e3),this.awaitDrain(this.finish(),r),this.notifyClosing(),t===this.generation&&this.stopCaptureForShutdown(t)}notifyClosing(){if(!this.closingNotified){this.closingNotified=!0;try{this.options.onClosing?.()}catch(e){this.reportCallbackError(e)}}}async stopCaptureForShutdown(e){try{await this.stopCapture()}catch(t){if(e!==this.generation||"close"!==this.finishing)return;try{this.fail(t instanceof Error?t:Error(String(t)))}catch(e){this.reportCallbackError(e)}}}async awaitDrain(e,t){try{await e}catch{}try{t()}catch(e){this.reportCallbackError(e)}}reportCallbackError(e){try{this.options.onError(e instanceof Error?e:Error(String(e)))}catch{}}async stopCapture(){let e=++this.captureGeneration;for(let e of this.trackCleanups)e();this.trackCleanups=[],this.ownsStream&&this.stream?.getTracks().forEach(e=>e.stop()),this.stream=void 0;let t=this.pc,r=this.sender;await this.queueSenderOperation(async()=>{t===this.pc&&r===this.sender&&(null!=t&&null!=r&&await this.detachSender(t,r),e===this.captureGeneration&&t===this.pc&&this.options.onCapturing(!1))})}async startCapture(e){let t=this.captureGeneration+1;if(await this.stopCapture(),t!==this.captureGeneration||null==this.pc||this.finishing)return;let r=e??await navigator.mediaDevices.getUserMedia({audio:!0});if(t!==this.captureGeneration||null==this.pc||this.finishing){null==e&&r.getTracks().forEach(e=>e.stop());return}let a=g9(r);if(null==a)throw null==e&&r.getTracks().forEach(e=>e.stop()),Error("Realtime requires a live audio track");let o=this.pc,n=this.sender;await this.queueSenderOperation(async()=>{let i=()=>t===this.captureGeneration&&o===this.pc&&n===this.sender&&"closed"!==o.connectionState&&!this.finishing,s=!1;try{if(!i()||null==n)return;if(await n.replaceTrack(a),!i()){o===this.pc&&await this.detachSender(o,n);return}this.stream=r,this.ownsStream=null==e,s=!0,this.observeCapture()}finally{s||null!=e||r.getTracks().forEach(e=>e.stop())}})}queueSenderOperation(e){let t=this.senderOperations.then(e);return this.senderOperations=t.catch(()=>{}),t}async detachSender(e,t){if("closed"!==e.connectionState)try{await t.replaceTrack(null)}catch(t){if(e!==this.pc)return;this.closePeer(e),this.fail(t instanceof Error?t:Error(String(t)))}}closePeer(e){e.ontrack=null,e.onconnectionstatechange=null,e.oniceconnectionstatechange=null,e.onicegatheringstatechange=null,"closed"!==e.connectionState&&e.close()}observeCapture(){let e=this.captureGeneration,t=this.sender,r=t?.track,a=()=>{e===this.captureGeneration&&this.sender===t&&this.options.onCapturing(t?.track!=null&&"live"===t.track.readyState&&t.track.enabled&&!t.track.muted)};if(null!=r)for(let e of["ended","mute","unmute"])r.addEventListener(e,a),this.trackCleanups.push(()=>r.removeEventListener(e,a));a()}dispose(){for(let e of(this.generation++,this.captureGeneration++,clearTimeout(this.finishTimer),clearTimeout(this.disconnectTimer),this.finishing=void 0,this.closingNotified=!1,this.senderOperations=Promise.resolve(),this.abort?.abort(Error("Realtime connection cancelled")),this.abort=void 0,this.codec?.dispose(),this.codec=void 0,null!=this.dc&&(this.dc.onopen=null,this.dc.onclose
104=null,this.dc.onerror=null,this.dc.onmessage=null,this.dc.close(),this.dc=void 0),null!=this.pc&&(this.closePeer(this.pc),this.pc=void 0),this.trackCleanups))e();this.trackCleanups=[],this.ownsStream&&this.stream?.getTracks().forEach(e=>e.stop()),this.stream=void 0,this.sender=void 0,null!=this.audio&&(this.audio.onplaying=null,this.audio.onpause=null,this.audio.onended=null,this.audio.onwaiting=null,this.audio.pause(),this.audio.srcObject=null,this.audio=void 0),this.options.onCapturing(!1),this.options.onPlaying(!1)}},g5=class{constructor(){this.abort=new AbortController,this.timers=new Map,this.active=!0,this.ready=!1,this.closing=!1,this.transportClosing=!1}timer(e,t,r){this.clearTimer(e),this.timers.set(e,setTimeout(()=>{this.timers.delete(e),this.active&&r()},t))}clearTimer(e){clearTimeout(this.timers.get(e)),this.timers.delete(e)}beginClose(){return this.closing=!0,this.closePromise??=new Promise(e=>{this.settleClose=e})}retire(){if(this.active){for(let e of(this.active=!1,this.abort.abort(),this.timers.values()))clearTimeout(e);this.timers.clear(),this.settleClose?.(),this.settleClose=void 0}}},g8=class{constructor(e){this.sendCommand=e,this.pending=new Map,this.recent=new Set}validateId(e){if(this.pending.has(e)||this.recent.has(e))throw Error("Realtime command ID was already used; retry with a fresh eventId");if(this.pending.size>=512)throw Error("Too many pending realtime commands")}complete(e){let t=this.pending.get(e);if(null!=t){if(this.pending.delete(e),this.recent.add(e),this.recent.size>4096){let e=this.recent.values().next().value;null!=e&&this.recent.delete(e)}return t}}send(e){let t="input-audio-mute"===e.type||"input-audio-unmute"!==e.type&&void 0;("input-audio-mute"===e.type||"input-audio-unmute"===e.type)&&(e={...e,eventId:e.eventId??sh()});let r="eventId"in e?e.eventId:void 0;null!=r&&(this.validateId(r),this.pending.set(r,{muted:t}));let a="context-append"===e.type||"session-update"===e.type||null!=t;try{let t=this.sendCommand(e);return t.then(()=>{null==r||a||this.complete(r)},()=>{null!=r&&this.complete(r)}),t}catch(e){throw null!=r&&this.complete(r),e}}receive(e){if("command-acknowledged"===e.type&&null!=e.clientEventId)return this.complete(e.clientEventId);"error"===e.type&&null!=e.clientEventId&&this.complete(e.clientEventId)}};let g7=u2({token:uf().refine(e=>e.trim().length>0),url:uf().refine(e=>{try{let t=new URL(e);return("ws:"===t.protocol||"wss:"===t.protocol)&&""!==t.hostname}catch{return!1}}),expiresAt:uU().positive().max(Number.MAX_SAFE_INTEGER).optional(),tools:fg(u2({type:dn("function"),name:uf().min(1),description:uf().optional(),parameters:de(uf(),uW())})).optional()});function ye(){return{transcripts:[],delegations:[],isInputMuted:!1,finalization:"pending"}}var yt=class{constructor(e=500){this.maxEvents=e,this.currentAssistantMessageId=null,this.textAccumulators=new Map,this.toolArgAccumulators=new Map,this.toolCallIdToMessageId=new Map,this.toolCallIdToName=new Map,this.inputAudioMessageInsertIndex=new Map,this.itemIdToPartLocation=new Map}setStatus(e,t){return{...e,status:t}}setCapturing(e,t){return{...e,isCapturing:t}}setPlaying(e,t){return{...e,isPlaying:t}}addUserTextMessage(e,t){return{...e,messages:[...e.messages,{id:`user-${Date.now()}`,role:"user",parts:[{type:"text",text:t,state:"done"}]}]}}addToolOutput(e,t,r){return{state:this.updateToolPartState(e,t,r),output:{callId:t,name:this.toolCallIdToName.get(t),output:JSON.stringify(r)}}}async reduceServerEvent(e,t){let r=this.pushEvent(e,t),a=[];switch(t.type){case"session-created":case"session-updated":"connecting"===r.status&&(r=this.setStatus(r,"connected"));break;case"audio-delta":a.push({type:"play-audio",itemId:t.itemId,delta:t.delta});break;case"audio-committed":null!=t.itemId&&this.inputAudioMessageInsertIndex.set(t.itemId,r.messages.length);break;case"audio-transcript-delta":case"text-delta":r=this.appendTextDelta(r,t.itemId,t.delta);break;case"audio-transcript-done":r=this.finalizeText(r,t.itemId,t.transcript);break;case"text-done":r=this.finalizeText(r,t.itemId,t.text);break;case"input-transcription-completed":r=this.addInputTranscriptionMessage(r,t.itemId,t.transcript);break;case"response-created":case"response-done":this.currentAssistantMessageId=null;break;case"speech-started":this.currentAssistantMessageId=null,a.push({type:"speech-started"});break;case"function-call-arguments-delta":{let{state:e,messageId:a}=this.getOrCreateAssistantMessage(r);r=e,this.toolCallIdToMessageId.set(t.callId,a);let o=this.toolArgAccumulators.get(t.callId)??"";this.toolArgAccumulators.set(t.callId,o+t.delta),r=this.ensureToolPart(r,a,t.callId);break}case"function-call-arguments-done":{this.toolArgAccumulators.delete(t.callId),this.toolCallIdToName.set(t.callId,t.name);let e=await s7({text:t.arguments}),o=e.success?e.value:{},n=this.toolCallIdToMessageId.get(t.callId);null!=n&&(r=this.markToolInputAvailable(r,n,t.callId,t.name,o)),e.success?a.push({type:"tool-call",callId:t.callId,name:t.name,args:o,rawArguments:t.arguments}):a.push({type:"error",error:Error(`Failed to parse tool arguments: ${t.arguments}`)});break}case"error":a.push({type:"error",error:Error(t.message)})}return{state:r,effects:a}}pushEvent(e,t){let r=[...e.events,t];return{...e,events:r.length>this.maxEvents?r.slice(-this.maxEvents):r}}getOrCreateAssistantMessage(e){if(null!=this.currentAssistantMessageId)return{state:e,messageId:this.currentAssistantMessageId};let t=`assistant-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.currentAssistantMessageId=t,{state:{...e,messages:[...e.messages,{id:t,role:"assistant",parts:[]}]},messageId:t}}addInputTranscriptionMessage(e,t,r){let a=`user-${t}`;if(null!=e.messages.find(e=>e.id===a))return{...e,messages:e.messages.map(e=>e.id===a?{...e,parts:[{type:"text",text:r,state:"done"}]}:e)};let o=Math.min(this.inputAudioMessageInsertIndex.get(t)??e.messages.length,e.messages.length),n=[...e.messages];return n.splice(o,0,{id:a,role:"user",parts:[{type:"text",text:r,state:"done"}]}),{...e,messages:n}}appendTextDelta(e,t,r){let{state:a,messageId:o}=this.getOrCreateAssistantMessage(e),n=(this.textAccumulators.get(t)??"")+r;this.textAccumulators.set(t,n);let i=this.itemIdToPartLocation.get(t);return null!=i?this.updateMessagePart(a,i.messageId,i.partIndex,{type:"text",text:n,state:"streaming"}):{...a,messages:a.messages.map(e=>{if(e.id!==o)return e;let r=e.parts.length;return this.itemIdToPartLocation.set(t,{messageId:o,partIndex:r}),{...e,parts:[...e.parts,{type:"text",text:n,state:"streaming"}]}})}}finalizeText(e,t,r){let a=r??this.textAccumulators.get(t)??"";this.textAccumulators.delete(t);let o=this.itemIdToPartLocation.get(t);return null==o?e:(this.itemIdToPartLocation.delete(t),this.updateMessagePart(e,o.messageId,o.partIndex,{type:"text",text:a,state:"done"}))}ensureToolPart(e,t,r){return{...e,messages:e.messages.map(e=>e.id!==t||null!=e.parts.find(e=>"dynamic-tool"===e.type&&e.toolCallId===r)?e:{...e,parts:[...e.parts,{type:"dynamic-tool",toolName:"",toolCallId:r,state:"input-streaming",input:void 0}]})}}markToolInputAvailable(e,t,r,a,o){return{...e,messages:e.messages.map(e=>e.id!==t?e:{...e,parts:e.parts.map(e=>"dynamic-tool"!==e.type||e.toolCallId!==r?e:{...e,toolName:a,state:"input-available",input:o})})}}updateToolPartState(e,t,r){let a=this.toolCallIdToMessageId.get(t);return null==a?e:{...e,messages:e.messages.map(e=>e.id!==a?e:{...e,parts:e.parts.map(e=>"dynamic-tool"!==e.type||e.toolCallId!==t?e:{...e,state:"output-available",output:r})})}}updateMessagePart(e,t,r,a){return{...e,messages:e.messages.map(e=>{if(e.id!==t)return e;let o=[...e.parts];return o[r]=a,{...e,parts:o}})}}},yr=class{constructor(e){this.options=e,this.state={status:"disconnected",messages:[],events:[],isCapturing:!1,isPlaying:!1},this.publication=0,this.captureGeneration=0,this.captureRequested=!1,this.currentResponseItemId=null,this.toolCallsInResponse=new Set,this.submittedToolOutputs=new Set,this.responseToolCallsClosed=!1;let t=e.model.capabilities;if(this.sessionLifecycle=t?.startup==="session-start"||t?.finalization==="session-close",this.continuous=t?.conversation==="continuous",this.maxEvents=e.maxEvents??500,!Number.isSafeInteger(this.maxEvents)||this.maxEvents<1)throw Error("maxEvents must be a positive integer");for(let t of[e.startupTimeoutMs??3e4,e.closeTimeoutMs??15e3,e.rtcDisconnectTimeoutMs??5e3])if(!Number.isFinite(t)||t<=0||t>0x7fffffff)throw Error("Realtime timeouts must be positive finite timer durations");let r=e.maxPlaybackBufferSeconds??2;if(!Number.isFinite(r)||r<=0)throw Error("maxPlaybackBufferSeconds must be positive and finite");this.reducer=new yt(this.maxEvents),this.onToolCall=e.onToolCall,this.onEvent=e.onEvent,this.onError=e.onError}validateConnection(){let{model:e,api:t}=this.options;if((!this.continuous||null!=t.session)&&null!=this.options.maxPlaybackBufferSeconds)throw Error("maxPlaybackBufferSeconds
104is supported only for continuous PCM sessions");let r=null!=t.session?"webrtc":null!=t.token?"client-secret-websocket":"server-websocket";if(!(e.capabilities?.connections??["client-secret-websocket"]).includes(r)||e.capabilities?.transports!=null&&!e.capabilities.transports.includes(null!=t.session?"webrtc":"websocket"))throw Error(`Realtime model does not support ${r}`);if(null!=t.session){if(null==e.getWebRTCConfig)throw Error("Realtime model does not support WebRTC configuration");return}if(this.continuous&&null==t.websocket)throw Error("Continuous PCM sessions require an application WebSocket relay");if(null!=t.token&&null==e.getWebSocketConfig)throw Error("Realtime model does not support client-secret WebSocket configuration")}async connect(e){if(this.attempt?.active)throw Error("Realtime session is already active");let t=new g5;this.attempt=t;let r=()=>this.attempt===t&&t.active;try{if(this.applyState({...this.state,status:"connecting"}),!r())return;this.validateConnection();let{model:a,api:o,sessionConfig:n}=this.options;if(e?.capture===!1&&this.stopAudioCapture(),!r()||(e?.stream!=null&&e.stream!==this.suppliedStream&&(!this.captureRequested||this.sessionLifecycle||this.continuous||null!=o.session?this.suppliedStream=e.stream:this.startAudioCapture(e.stream)),!r())||(this.reducer=new yt(this.maxEvents),this.currentResponseItemId=null,this.toolCallsInResponse.clear(),this.submittedToolOutputs.clear(),this.responseToolCallsClosed=!1,this.sessionLifecycle&&this.applyState({...this.state,session:ye()}),!r()))return;this.commands=new g8(e=>{let a=()=>r()&&!t.transportClosing&&null==t.cause&&(!t.closing||"session-close"===e.type);if(!a())throw Error("Realtime connection is closed");return this.sendTransport(e,a)}),t.timer("startup",this.options.startupTimeoutMs??3e4,()=>{r()&&this.fail(Error("Realtime session startup timed out"))});let i=new WeakSet,s={model:a,onEvent:async e=>{if(r())try{await this.handleServerEvent(e,t)}catch(e){r()&&this.fail(e,(this.rtc??this.pcm??this.transport)?.finish())}},onError:e=>{r()&&(i.add(e),this.reportError(e,t))},onFatalError:(e,t)=>{r()&&this.fail(e,t)},onClosing:()=>{!r()||(t.beginClose(),t.transportClosing=!0,t.clearTimer("startup"),t.clearTimer("close"),this.stopAudioCapture(),r()&&this.applyState({...this.state,status:null==t.cause?"closing":"error"}))},onClose:e=>{if(!r())return;let o=a.capabilities?.finalization==="session-close"&&this.state.session?.finalization==="confirmed";null==e||o?t.ready||o?this.disconnect():this.fail(Error("Realtime connection closed before becoming ready")):this.fail(e,void 0,!i.has(e))},onCapturing:e=>{r()&&this.applyState({...this.state,isCapturing:e})},onPlaying:e=>{r()&&this.applyState({...this.state,isPlaying:e})}};if(null!=o.session)this.rtc=new g3({...s,disconnectTimeoutMs:this.options.rtcDisconnectTimeoutMs}),await this.rtc.connect({api:o.session,sessionConfig:n,stream:e?.stream,capture:e?.capture,timeoutMs:this.options.startupTimeoutMs??3e4});else if(null!=o.websocket&&a.capabilities?.conversation==="continuous")this.pcm=new g4({...s,sessionConfig:n,sampleRate:this.options.sampleRate,maxPlaybackBufferSeconds:this.options.maxPlaybackBufferSeconds}),this.pcm.connect({url:o.websocket,protocols:o.protocols,stream:e?.stream,capture:e?.capture});else{let e;this.ensureAudio();let i=n??{},l=o.websocket;if(null!=o.token){let a=await fetch(o.token,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionConfig:n}),signal:t.abort.signal});if(!r())return;if(!a.ok)throw Error(`Failed to fetch realtime setup: ${a.status}`);let s=await a.json().catch(()=>{throw Error("Invalid realtime setup response")});if(!r()||t.closing)return;let u=function(e){let t=g7.safeParse(e);if(!t.success)throw Error("Invalid realtime setup: expected a nonempty token, a ws(s) URL, and valid optional expiresAt/tools");return t.data}(s);e=u.token,l=u.url,i={...n,...null==u.tools?{}:{tools:u.tools}}}if(null==l)throw Error("Realtime WebSocket URL is missing");if(null!=o.token&&null==e)throw Error("Realtime client-secret connection requires a token");if(this.ensureAudio().ensurePlaybackContext(),!r())return;this.transport=new g2({...s,onServerEvent:s.onEvent}),this.transport.connect({...null!=e?{mode:"client-secret",token:e}:{mode:"relay",protocols:o.protocols},url:l,onOpen:()=>{let e=()=>r()&&!t.closing&&null==t.cause;if(e())return this.sendTransport({type:a.capabilities?.startup??"session-update",config:i},e)}})}}catch(e){r()&&this.fail(e)}}fail(e,t,r=!0){let a=this.attempt;null==a||!a.active||null!=a.cause||(a.cause=e instanceof Error?e:Error(String(e)),null!=t&&a.beginClose(),this.applyState({...this.state,status:"error"}),this.attempt!==a||!a.active||(this.stopAudioCapture(),this.attempt===a&&a.active&&(null==t?this.disconnect():this.drainAttempt(a,t),r&&this.reportError(a.cause,a))))}async drainAttempt(e,t){this.attempt===e&&e.active&&e.timer("drain",1e3,()=>this.finishAttempt(e));try{await t}catch{}this.finishAttempt(e)}finishAttempt(e){if(this.attempt===e&&e.active)try{this.disconnect()}catch(t){this.reportError(t,e)}}closeFailed(e,t){if(this.attempt!==e||!e.active||e.transportClosing)return;e.clearTimer("close");let r=this.rtc??this.pcm??this.transport;this.drainAttempt(e,r?.finish()),this.reportError(t,e)}disconnect(){let e=this.attempt;this.captureGeneration++,this.captureRequested=!1,this.suppliedStream
104=void 0;let t=this.transport,r=this.audio,a=this.pcm,o=this.rtc;if(this.transport=void 0,this.audio=void 0,this.pcm=void 0,this.rtc=void 0,this.commands=void 0,e?.retire(),t?.dispose(),r?.dispose(),a?.dispose(),o?.dispose(),this.attempt!==e)return;let n=this.state.session;this.applyState({...this.state,status:e?.cause!=null?"error":"disconnected",isCapturing:!1,isPlaying:!1,...null!=n?{session:"confirmed"===n.finalization?n:{...n,finalization:"unconfirmed"}}:{}})}close(e){let t=this.attempt;if(t?.closePromise!=null)return t.closePromise;if("connected"!==this.state.status||this.options.model.capabilities?.finalization!=="session-close"||null==t)return this.disconnect(),Promise.resolve();e?.eventId!=null&&this.commands?.validateId(e.eventId);let r=t.beginClose();if(this.applyState({...this.state,status:"closing"}),this.attempt!==t||!t.active||t.transportClosing||(this.stopAudioCapture(),this.attempt!==t||!t.active||t.transportClosing))return r;t.timer("close",this.options.closeTimeoutMs??15e3,()=>this.finishAttempt(t));let a=e=>this.closeFailed(t,e);try{this.commands?.send({type:"session-close",eventId:e?.eventId}).catch(a)}catch(e){a(e)}return r}sendTransport(e,t,r=!1){let a=this.rtc??this.pcm??this.transport;if(null==a)throw Error("Realtime connection is not open");return a===this.transport?this.transport.sendEvent(e,t,r):a.sendEvent(e,t)}sendEvent(e){if("error"===this.state.status||"closing"===this.state.status||this.attempt?.closing||!this.attempt?.active||this.sessionLifecycle&&"connected"!==this.state.status)throw Error("Realtime session is not accepting submissions");if(null!=this.rtc&&"input-audio-append"===e.type||(this.continuous||null!=this.rtc)&&("input-audio-commit"===e.type||"input-audio-clear"===e.type))throw new eO({functionality:"JSON audio commands unsupported for this session transport"});if("session-close"===e.type)return this.close({eventId:e.eventId});if("session-start"===e.type&&this.sessionLifecycle)throw Error("Realtime session has already started");if(!this.sessionLifecycle&&null==this.state.session){let t=this.attempt;return this.sendTransport(e,()=>this.attempt===t&&t.active&&!t.closing&&null==t.cause)}return this.commands?.send(e)??this.sendTransport(e)}sendTextMessage(e){if(this.continuous)throw new eO({functionality:"sendTextMessage for continuous sessions; client-delegation text is application-owned, use context-append for context"});this.sendEvent({type:"conversation-item-create",item:{type:"text-message",role:"user",text:e}}),this.sendEvent({type:"response-create"}),this.applyState(this.reducer.addUserTextMessage(this.state,e))}sendAudio(e){let t=this.attempt;this.sendEvent({type:"input-audio-append",audio:e}).catch(e=>{t?.active&&this.attempt===t&&this.reportError(e,t)})}commitAudio(){this.sendEvent({type:"input-audio-commit"})}clearAudioBuffer(){this.sendEvent({type:"input-audio-clear"})}requestResponse(e){this.sendEvent({type:"response-create",...null!=e?{options:e}:{}})}cancelResponse(){this.sendEvent({type:"response-cancel"})}sendAutomaticAudio(e){if("connected"!==this.state.status||!this.attempt?.active||this.attempt.closing)return;let t=this.attempt,r=e=>{t?.active&&this.attempt===t&&!t.closing&&this.fail(e)};try{this.sendTransport({type:"input-audio-append",audio:e},()=>this.attempt===t&&t.active&&!t.closing,!0).catch(r)}catch(e){r(e)}}addToolOutput(e,t){if(this.continuous)throw new eO({functionality:"addToolOutput for continuous sessions; client delegation is application-owned"});let r=this.attempt;if(!r?.active||r.closing||null!=r.cause)throw Error("Realtime session is not accepting submissions");let{state:a,output:o}=this.reducer.addToolOutput(this.state,e,t);this.applyState(a),this.attempt===r&&r?.active&&(this.sendEvent({type:"conversation-item-create",item:{type:"function-call-output",...o}}),this.submittedToolOutputs.add(e),this.maybeRequestToolResponse())}maybeRequestToolResponse(){"connected"!==this.state.status||this.attempt?.closing||!this.responseToolCallsClosed||0===this.toolCallsInResponse.size||[...this.toolCallsInResponse].some(e=>!this.submittedToolOutputs.has(e))||(this.sendEvent({type:"response-create"}),this.toolCallsInResponse.clear(),this.submittedToolOutputs.clear(),this.responseToolCallsClosed=!1)}startAudioCapture(e){let t=!this.sessionLifecycle&&!this.continuous&&null==this.options.api.session;if(!t&&"connected"!==this.state.status||this.attempt?.active&&(this.attempt.closing||null!=this.attempt.cause))throw Error("Realtime session is not accepting capture");
104if(this.suppliedStream=e,t){this.captureGeneration++,this.captureRequested=!0,this.ensureAudio().startCapture(e);return}let r=this.attempt;this.resumeAudioCapture().catch(e=>{r?.active&&this.reportError(e,r)})}async resumeAudioCapture(){let e=()=>!this.attempt?.closing&&this.attempt?.cause==null&&("connected"===this.state.status||!this.sessionLifecycle&&"connecting"===this.state.status);if(!e())throw Error("Realtime session is not accepting capture");if(this.captureRequested=!0,null!=this.rtc)return this.rtc.startCapture(this.suppliedStream);if(null!=this.pcm)return this.pcm.resumeCapture(this.suppliedStream);let t=this.audio;if(null==t)throw Error("Realtime capture transport is not ready");let r=++this.captureGeneration,a=this.attempt,o=this.suppliedStream,n=o??await navigator.mediaDevices.getUserMedia({audio:!0});if(!a?.active||this.attempt!==a||this.audio!==t||!e()||r!==this.captureGeneration){null==o&&n.getTracks().forEach(e=>e.stop());return}t.startCapture(n,{ownsStream:null==o||!this.sessionLifecycle||null!=this.options.api.token})}stopAudioCapture(){this.captureGeneration++,this.captureRequested=!1,null==this.audio||this.sessionLifecycle&&null==this.options.api.token||(this.suppliedStream=void 0);let e=this.pcm,t=this.audio,r=this.rtc,a=this.attempt;null!=r&&r.stopCapture().catch(e=>{a?.active&&this.attempt===a&&this.reportError(e,a)}),e?.stopCapture(),t?.stopCapture()}stopPlayback(){(this.rtc??this.pcm??this.audio)?.stopPlayback()}async resumePlayback(){await (this.rtc??this.pcm??this.audio)?.resumePlayback()}dispose(){this.disconnect()}ensureAudio(){if(null!=this.audio)return this.audio;let{sessionConfig:e,sampleRate:t}=this.options,r=new g0({captureSampleRate:e?.inputAudioFormat?.rate??t??24e3,playbackSampleRate:e?.outputAudioFormat?.rate??t??24e3,onAudio:e=>{this.audio===r&&this.sendAutomaticAudio(e)},onError:e=>{this.audio===r&&this.reportError(e,this.attempt)},onCapturingChange:e=>{this.audio===r&&this.applyState({...this.state,isCapturing:e})},onPlayingChange:e=>{this.audio===r&&this.applyState({...this.state,isPlaying:e})}});return this.audio=r,r}applyState(e){let t=++this.publication,r=this.state;this.state=e;let a=a=>{t===this.publication&&r[a]!==e[a]&&this.setState(a,e[a])};a("status"),a("messages"),a("events"),a("isCapturing"),a("isPlaying"),a("session")}async executeTool(e,t,r,a){if(!this.continuous&&this.attempt===a&&a.active&&!a.closing&&null==a.cause)try{if(null==this.onToolCall)return void this.reportError(Error(`No handler provided for tool "${t}"`),a);let o=await this.onToolCall({toolCall:{toolCallId:e,toolName:t,args:r}});void 0!==o&&this.attempt===a&&a?.active&&"connected"===this.state.status&&this.addToolOutput(e,o)}catch(e){a.active&&this.reportError(e,a)}}async handleServerEvent(e,t){let r=()=>this.attempt===t&&t.active;if(!r())return;if("session-started"===e.type&&"provider"===e.delegationMode)throw new eO({functionality:"Provider delegation mode; this realtime runtime supports client delegation only"});if(this.continuous&&"audio-delta"===e.type)throw new eO({functionality:"Turn-based audio-delta in a continuous PCM session; use audio-chunk"});let a=this.commands?.receive(e),o=await this.reducer.reduceServerEvent(this.state,e);if(!r())return;let n=this.state.session??("session-started"===e.type?ye():void 0);if(this.applyState({...o.state,status:this.state.status,...null==n?{}:{session:function(e,t,r,a){switch(t.type){case"session-started":return{...e,sessionId:t.sessionId,delegationMode:t.delegationMode};case"session-usage":return{...e,usage:t.usage};case"session-closed":return{...e,sessionId:t.sessionId??e.sessionId,usage:t.usage,terminationReason:t.reason,finalization:"confirmed"};case"transcript-fragment":return{...e,transcripts:[...e.transcripts,t].slice(-r)};case"delegation-created":return e.delegations.some(e=>e.delegationId===t.delegationId)?e:{...e,delegations:[...e.delegations,t].slice(-r)};case"command-acknowledged":return null==a?e:{...e,isInputMuted:a};default:return e}}(n,e,this.maxEvents,a?.muted)}}),r()){for(let e of o.effects)if(this.handleReducerEffect(e,t),!r())return;if(("audio-chunk"===e.type&&(this.pcm??this.audio)?.playAudio(e.delta),r())&&("response-done"===e.type&&this.toolCallsInResponse.size>0&&(this.responseToolCallsClosed=!0,this.maybeRequestToolResponse()),r())){if("session-closed"===e.type&&null!=n){this.disconnect(),this.notifyEvent(e,t,!0);return}if(("session-started"===e.type||"session-created"===e.type||"session-updated"===e.type)&&t.active&&!t.closing&&null==t.cause&&(this.options.model.capabilities?.startup==="session-start"?"session-started"===e.type:"session-started"!==e.type)){if(t.ready=!0,t.clearTimer("startup"),this.applyState({...this.state,status:"connected"}),!r()||t.closing)return;this.pcm?.startCapture()}r()&&this.notifyEvent(e,t)}}}handleReducerEffect(e,t){switch(e.type){case"play-audio":this.currentResponseItemId=e.itemId,this.audio?.playAudio(e.delta);break;case"speech-started":if(!this.continuous&&this.state.isPlaying){let e=this.audio?.getPlaybackOffsetMs()??0,r=this.currentResponseItemId;if(this.audio?.stopPlayback(),this.attempt!==t||!t.active)return;null==r||t.closing||null!=t.cause||this.sendEvent({type:"conversation-item-truncate",itemId:r,contentIndex:0,audioEndMs:Math.round(e)})}break;case"tool-call":if(this.continuous)break;this.toolCallsInResponse.add(e.callId),this.executeTool(e.callId,e.name,e.args,t);break;case"error":this.reportError(e.error,t)}}async reportError(e,t){if(this.attempt===t)try{await this.onError?.(e instanceof Error?e:Error(String(e)))}catch{}}notifyEvent(e,t,r=!1){if(this.attempt!==t||!t.active&&!r)return;let a=e=>{(t.active||r)&&this.reportError(e,t)};try{Promise.resolve(this.onEvent?.(e)).catch(a)}catch(e){a(e)}}};async function ya({response:e,url:t,fallbackMessage:r}){let a=await e.text();return new C({message:a||r,url:t,requestBodyValues:void 0,statusCode:e.status,responseBody:a})}async function yo({stream:e,onTextPart:t}){let r=e.pipeThrough(new TextDecoderStream).getReader();for(;;){let{done:e,value:a}=await r.read();if(e)break;await t(a)}}async function yn({api:e,prompt:t,credentials:r,headers:a,body:o,streamProtocol:n="data",setCompletion:i,setLoading:s,setError:l,setAbortController:u,getAbortController:d,onFinish:c,onError:p,fetch:h=fetch}){let f=new AbortController,m=()=>null==d||d()===f;
104try{s(!0),l(void 0),u(f),i("");let d=await h(e,{method:"POST",body:JSON.stringify({prompt:t,...o}),credentials:r,headers:iL({"Content-Type":"application/json",...a},`ai-sdk/${h4}`,i$()),signal:f.signal}).catch(e=>{throw e});if(!d.ok)throw await ya({response:d,url:e,fallbackMessage:"Failed to fetch the chat response."});if(!d.body)throw new R({message:"The response body is empty."});let p="";switch(n){case"text":await yo({stream:d.body,onTextPart:e=>{p+=e,m()&&i(p)}});break;case"data":await gy({stream:le({stream:d.body,schema:m7}).pipeThrough(new TransformStream({async transform(e){if(!e.success)throw e.error;let t=e.value;if("text-delta"===t.type)p+=t.delta,m()&&i(p);else if("error"===t.type)throw new hv({chunkType:"error",chunkId:"",message:t.errorText})}})),onError:e=>{throw e}});break;default:throw new p$({parameter:"streamProtocol",value:n,message:`Unknown stream protocol: ${n}`})}return c&&c(t,p),p}catch(e){if("AbortError"===e.name)return null;e instanceof Error&&p&&p(e),m()&&l(e)}finally{m()&&(u(null),s(!1))}}async function yi(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw new eO({functionality:"FileList",message:"FileList is not supported in the current environment"});return Promise.all(Array.from(e).map(async e=>{let{name:t,type:r}=e;return{type:"file",mediaType:r,filename:t,url:await new Promise((t,r)=>{let a=new FileReader;a.onload=e=>{t(e.target?.result)},a.onerror=e=>r(e),a.readAsDataURL(e)})}}))}Symbol.for("vercel.ai.error.AI_NoSuchProviderError"),sp({prefix:"call",size:24}),sp({prefix:"call",size:24}),gY(),sp({prefix:"call",size:24});var ys=class{constructor({api:e="/api/chat",credentials:t,headers:r,body:a,fetch:o,prepareSendMessagesRequest:n,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=r,this.body=a,this.fetch=o,this.prepareSendMessagesRequest=n,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){let r=await ll(this.body),a=await ll(this.headers),o=await ll(this.credentials),n={...iU(a),...iU(t.headers)},i=await this.prepareSendMessagesRequest?.({api:this.api,id:t.chatId,messages:t.messages,body:{...r,...t.body},headers:n,credentials:o,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId}),s=i?.api??this.api,l=i?.headers!==void 0?iU(i.headers):n,u=i?.body!==void 0?i.body:{...r,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},d=i?.credentials??o,c=await (this.fetch??globalThis.fetch)(s,{method:"POST",headers:{"content-type":"application/json",...l},body:JSON.stringify(u),credentials:d,signal:e});if(!c.ok)throw await ya({response:c,url:s,fallbackMessage:"Failed to fetch the chat response."});if(!c.body)throw new R({message:"The response body is empty."});return this.processResponseStream(c.body)}async reconnectToStream(e){let t=await ll(this.body),r=await ll(this.headers),a=await ll(this.credentials),o={...iU(r),...iU(e.headers)},n=await this.prepareReconnectToStreamRequest?.({api:this.api,id:e.chatId,body:{...t,...e.body},headers:o,credentials:a,requestMetadata:e.metadata}),i=n?.api;if(null==i){var s,l;let t,r,a;if("."===e.chatId||".."===e.chatId)throw new p$({parameter:"chatId",value:e.chatId,message:'Chat IDs must not be "." or ".." when using the default reconnect URL.'});s=this.api,l=`/${encodeURIComponent(e.chatId)}/stream`,r=-1===(t=s.search(/[?#]/))?s:s.slice(0,t),a=-1===t?"":s.slice(t),i=`${r.endsWith("/")&&l.startsWith("/")?r.slice(0,-1):r}${l}${a}`}let u=n?.headers!==void 0?iU(n.headers):o,d=n?.credentials??a,c=await (this.fetch??globalThis.fetch)(i,{method:"GET",headers:u,credentials:d,signal:e.abortSignal});if(204===c.status)return null;if(!c.ok)throw await ya({response:c,url:i,fallbackMessage:"Failed to fetch the chat response."});if(!c.body)throw new R({message:"The response body is empty."});return this.processResponseStream(c.body)}},yl=class extends ys{constructor(e={}){super(e)}processResponseStream(e){return le({stream:e,schema:m7}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},yu=class{constructor({generateId:e=sh,id:t=e(),transport:r=new yl,messageMetadataSchema:a,dataPartSchemas:o,state:n,onError:i,onToolCall:s,onFinish:l,onData:u,sendAutomaticallyWhen:d}){this.pendingMessagePreparations=new Set,this.activeResponse=void 0,this.activeResumeRequest=void 0,this.resumableStreamState=void 0,this.jobExecutor=new gQ,this.sendMessage=async(e,t)=>{let r;if(null==e){let e=this.pendingApprovalMessageId;if(null==e){e=this.lastMessage?.id;for(let t=this.state.messages.length-1;t>=0;t--){let r=this.state.messages[t];if("assistant"===r.role&&r.parts.some(e=>gu(e)&&"approval-responded"===e.state)){e=r.id;break}}}let r=null!=e&&e===this.pendingApprovalMessageId?this.state.messages.findIndex(t=>t.id===e):-1;await this.makeRequestForToolApproval({messageId:e,messageIndex:r,...t});return}if("text"in e||"files"in e){let t,a=new AbortController;this.pendingMessagePreparations.add(a);try{t=Array.isArray(e.files)?e.files:await yi(e.files)}finally{this.pendingMessagePreparations.delete(a)}if(a.signal.aborted)return;r={parts:[...t,..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}}else r=e;if(null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw new p$({parameter:"message.messageId",value:e.messageId,message:`message with id ${e.messageId} not found`});if("user"!==this.state.messages[t].role)throw new p$({parameter:"message.messageId",value:e.messageId,message:`message with id ${e.messageId} is not a user message`});this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{id:e.messageId,...r,role:r.role??"user",metadata:e.metadata})}else this.state.pushMessage({...r,id:r.id??this.generateId(),role:r.role??"user",metadata:e.metadata});
104await this.makeRequest({trigger:"submit-message",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let r=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===r)throw new p$({parameter:"messageId",value:e,message:`message ${e} not found`});this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[r].role?r:r+1),await this.makeRequest({trigger:"regenerate-message",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:"resume-stream",...e})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:e,approved:t,reason:r,options:a})=>this.jobExecutor.run(async()=>{let o=this.state.messages,n=a=>gu(a)&&"approval-requested"===a.state&&a.approval.id===e?{...a,state:"approval-responded",approval:{...a.approval,id:e,approved:t,reason:r}}:a,i=o.findIndex(t=>t.parts.some(t=>gu(t)&&"approval-requested"===t.state&&t.approval.id===e));if(-1!==i){let e=o[i];this.state.replaceMessage(i,{...e,parts:e.parts.map(n)}),this.pendingApprovalMessageId=e.id}if(this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(n)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&await this.shouldSendAutomatically()){let e=-1===i?this.lastMessage?.id:o[i].id;this.makeRequestForToolApproval({messageId:e,messageIndex:i,...a})}}),this.addToolOutput=async({state:e,toolCallId:t,output:r,errorText:a,options:o})=>this.jobExecutor.run(async()=>{let n=this.state.messages,i=n[n.length-1],s=o=>{if(!gu(o)||o.toolCallId!==t)return o;let{approval:n,...i}=o,s=n?.approved===!0?{approval:{...n,approved:n.approved}}:{};return"output-error"===e?{...i,...s,state:e,input:o.input,output:void 0,errorText:a}:{...i,...s,state:"output-available",input:o.input,output:r,errorText:void 0}};this.state.replaceMessage(n.length-1,{...i,parts:i.parts.map(s)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(s)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&await this.shouldSendAutomatically()&&this.makeRequest({trigger:"submit-message",messageId:this.lastMessage?.id,...o})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{for(let e of this.pendingMessagePreparations)e.abort();this.activeResumeRequest?.abortController.abort(),this.activeResponse?.abortController.abort()},this.id=t,this.transport=r,this.generateId=e,this.messageMetadataSchema=a,this.dataPartSchemas=o,this.state=n,this.onError=i,this.onToolCall=s,this.onFinish=l,this.onData=u,this.sendAutomaticallyWhen=d}get status(){return this.state.status}setStatus({status:e,error:t}){if(this.status===e){this.error!==t&&(this.state.error=t);return}this.state.status=e,this.state.error=t}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&"object"==typeof e&&"then"in e?await e:e}async makeRequestForToolApproval({messageId:e,messageIndex:t,...r}){let a=null!=e&&e===this.pendingApprovalMessageId;a&&(this.pendingApprovalMessageId=void 0),await this.makeRequest({trigger:"submit-message",messageId:e,...r}),a&&"error"===this.status&&null==this.pendingApprovalMessageId&&(this.pendingApprovalMessageId=this.state.messages[t]?.id??e)}async makeRequest({trigger:e,metadata:t,headers:r,body:a,messageId:o}){let n,i;"resume-stream"!==e&&(this.resumableStreamState=void 0);let s=new AbortController,l="resume-stream"===e?{abortController:s}:void 0;l&&(this.activeResumeRequest?.abortController.abort(),this.activeResumeRequest=l);let u=()=>null==l||this.activeResumeRequest===l,d=()=>{this.activeResumeRequest===l&&(this.activeResumeRequest=void 0)};if("resume-stream"===e)try{let e=await this.transport.reconnectToStream({chatId:this.id,abortSignal:s.signal,metadata:t,headers:r,body:a});if(s.signal.aborted||!u()){await e?.cancel().catch(()=>{}),u()&&(this.setStatus({status:"ready"}),this.resumableStreamState=void 0),d();return}if(null==e){this.setStatus({status:"ready"}),this.resumableStreamState=void 0,d();return}n=e}catch(e){if(s.signal.aborted||"AbortError"===e.name){u()&&(this.setStatus({status:"ready"}),this.resumableStreamState=void 0),d();return}if(!u())return;this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e}),d();return}this.setStatus({status:"submitted",error:void 0});let c=this.lastMessage,p="submit-message"===e&&null!=o?this.state.messages.findIndex(e=>e.id===o):this.state.messages.length-1,h=-1===p?c:this.state.messages[p],f="resume-stream"
104===e&&h?.role==="assistant"&&h.parts.some(e=>gu(e)&&("input-streaming"===e.state||"input-available"===e.state&&e.providerExecuted||"approval-responded"===e.state))?this.state.snapshot(h):void 0,m=-1!==p&&p<this.state.messages.length-1&&h?.role==="assistant",g=!1,y=!1,v=!1;try{let l,d={state:"resume-stream"===e&&null!=this.resumableStreamState?this.resumableStreamState:gp({lastMessage:"resume-stream"===e?f:"regenerate-message"===e?void 0:this.state.snapshot(h),messageId:this.generateId()}),abortController:s};i=d,d.abortController.signal.addEventListener("abort",()=>{g=!0}),this.activeResponse=d,l="resume-stream"===e?n:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:d.abortController.signal,metadata:t,headers:r,body:a,trigger:e,messageId:o});let c=e=>this.jobExecutor.run(()=>d.abortController.signal.aborted?Promise.resolve():e({state:d.state,write:({updateStatus:e=!0}={})=>{d.abortController.signal.aborted||(e&&this.setStatus({status:"streaming"}),m?this.state.replaceMessage(p,d.state.message):d.state.message.id===this.lastMessage?.id?this.state.replaceMessage(this.state.messages.length-1,d.state.message):this.state.pushMessage(d.state.message))}}));if(await gy({stream:gh({stream:l,resetStateOnMessageIdChange:"resume-stream"===e,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:c,onError:e=>{throw e}}),abortSignal:d.abortController.signal,onError:e=>{throw e}}),g)return u()&&(this.setStatus({status:"ready"}),this.resumableStreamState===d.state&&(this.resumableStreamState=void 0)),null;u()&&(this.setStatus({status:"ready"}),this.resumableStreamState===d.state&&(this.resumableStreamState=void 0))}catch(e){if(g||"AbortError"===e.name)return g=!0,u()&&(this.setStatus({status:"ready"}),this.resumableStreamState===i?.state&&(this.resumableStreamState=void 0)),null;if(!u())return null;if(v=!0,e instanceof TypeError){let t=e.message.toLowerCase();y=t.includes("fetch")||t.includes("network")||"load failed"===t}y?this.resumableStreamState=i?.state:this.resumableStreamState===i?.state&&(this.resumableStreamState=void 0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{i&&this.onFinish?.({message:i.state.message,messages:this.state.messages,isAbort:g,isDisconnect:y,isError:v,finishReason:i.state.finishReason})}finally{this.activeResponse===i&&(this.activeResponse=void 0),d()}}!v&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:this.lastMessage?.id,metadata:t,headers:r,body:a})}};e.s(["G",0,yu,"R",0,yl,"S",0,yr,"j",0,yn,"C",0,gq,"$",0,function({execute:e,onError:t=()=>"An error occurred.",originalMessages:r,onStepEnd:a,onStepFinish:o,onEnd:n,onFinish:i,generateId:s=sh}){let l,u,d=[],c=new Set,p=!1,h={status:"unknown"},f=new ReadableStream({start(e){l=e},async cancel(e){p=!0,u=e,await Promise.all(Array.from(c,t=>t.cancel(e)))}});function m(e){try{l.enqueue(e)}catch{}}function g(e){h={status:"failed",error:e}}function y(e){let r;g(e);try{r=t(e)}catch(e){g(e);try{l.error(e)}catch{}return}m({type:"error",errorText:r})}try{let r=e({writer:{write(e){m(e)},merge(e){p?e.cancel(u).catch(()=>{}):d.push((async()=>{let t=e.getReader();c.add(t);try{for(;;){let{done:e,value:r}=await t.read();if(e)break;m(r)}}finally{c.delete(t),t.releaseLock()}})().catch(e=>{y(e)}))},setOutcome:function(e){"unknown"===h.status&&"unknown"!==e.status&&(h=e)},onError:t}});r&&d.push(r.catch(e=>{y(e)}))}catch(e){y(e)}return(async()=>{for(;d.length>0;)await d.shift()})().finally(()=>{try{l.close()}catch{}}),gf({stream:f,messageId:s(),originalMessages:r,onStepEnd:a??o,onEnd:n??i,onError:t,getOutcome:()=>h})},"f",0,gB,"J",0,gH,"i",0,function({tagName:e,separator:t="\n",startWithReasoning:r=!1}){let a="string"==typeof e?`<${e}>`:e.opening,o="string"==typeof e?`</${e}>`:e.closing;if(0===a.length||0===o.length)throw new p$({parameter:"tagName",value:e,message:"Reasoning delimiters must not be empty."});let n=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return{specificationVersion:"v4",wrapGenerate:async({doGenerate:e})=>{let{content:o,...s}=await e(),l=[];for(let e of o){if("text"!==e.type){l.push(e);continue}let o=r?a+e.text:e.text,s=RegExp(`${n}(.*?)${i}`,"gs"),u=Array.from(o.matchAll(s));if(!u.length){l.push(e);continue}let d=u.map(e=>e[1]).join(t),c=o;for(let e=u.length-1;e>=0;e--){let r=u[e],a=c.slice(0,r.index),o=c.slice(r.index+r[0].length);c=a+(a.length>0&&o.length>0?t:"")+o}l.push({type:"reasoning",text:d}),l.push({type:"text",text:c})}return{content:l,...s}},wrapStream:async({doStream:e})=>{let{stream:n,...i}=await e(),s=ge(),l=0,u=ge();
104return{stream:n.pipeThrough(new TransformStream({transform:(e,n)=>{if("text-start"===e.type){u[e.id]=e;return}if("text-delta"!==e.type&&"text-end"!==e.type)return void n.enqueue(e);"text-delta"===e.type&&null==s[e.id]&&(s[e.id]={isFirstReasoning:!0,isFirstText:!0,afterSwitch:!1,isReasoning:r,buffer:"",reasoningId:void 0,textId:e.id});let i=s[e.id];if(null==i){null!=u[e.id]&&(n.enqueue(u[e.id]),delete u[e.id]),n.enqueue(e);return}function d(){return i.reasoningId??=`reasoning-${l++}`}function c(e){if(e.length>0){let r=!i.afterSwitch||(i.isReasoning?i.isFirstReasoning:i.isFirstText)?"":t;i.isReasoning&&(i.afterSwitch||i.isFirstReasoning)&&n.enqueue({type:"reasoning-start",id:d()}),i.isReasoning?n.enqueue({type:"reasoning-delta",delta:r+e,id:d()}):(null!=u[i.textId]&&(n.enqueue(u[i.textId]),delete u[i.textId]),n.enqueue({type:"text-delta",delta:r+e,id:i.textId})),i.afterSwitch=!1,i.isReasoning?i.isFirstReasoning=!1:i.isFirstText=!1}}if("text-end"===e.type){c(i.buffer),i.buffer="",null!=u[e.id]&&(n.enqueue(u[e.id]),delete u[e.id]),n.enqueue(e);return}for(i.buffer+=e.delta;;){let e=i.isReasoning?o:a,t=function(e,t){if(0===t.length)return null;let r=e.indexOf(t);if(-1!==r)return r;for(let r=e.length-1;r>=0;r--){let a=e.substring(r);if(t.startsWith(a))return r}return null}(i.buffer,e);if(null==t){c(i.buffer),i.buffer="";break}if(c(i.buffer.slice(0,t)),t+e.length<=i.buffer.length)i.buffer=i.buffer.slice(t+e.length),i.isReasoning&&(i.isFirstReasoning&&n.enqueue({type:"reasoning-start",id:d()}),n.enqueue({type:"reasoning-end",id:d()}),i.reasoningId=void 0),i.isReasoning=!i.isReasoning,i.afterSwitch=!0;else{i.buffer=i.buffer.slice(t);break}}}})),...i}}}},"p",0,m1,"B",0,gc,"D",0,ga,"t",0,mL,"K",0,gn,"T",0,gu,"u",0,mc,"W",0,function({model:e,tools:t,toolChoice:r,instructions:a,system:o,prompt:n,messages:i,allowSystemInMessages:s,maxRetries:l,streamRetries:u,abortSignal:d,timeout:c,headers:p,stopWhen:h=mD(1),experimental_sandbox:f,output:m,toolApproval:g,experimental_toolCallers:y,experimental_toolApprovalSecret:v,experimental_telemetry:b,telemetry:w=b,prepareStep:x,providerOptions:_,activeTools:I,toolOrder:k,experimental_repairToolCall:S,repairToolCall:T=S,experimental_refineToolInput:E,experimental_transform:C,experimental_download:M,includeRawChunks:A,onChunk:O,onError:R,onFinish:P,onEnd:$=P,onAbort:N,onStepEnd:z,onStepFinish:j,onStart:D,experimental_onStart:q,onStepStart:U,experimental_onStepStart:L,onLanguageModelCallStart:F,experimental_onLanguageModelCallStart:Z,onLanguageModelCallEnd:B,experimental_onLanguageModelCallEnd:V,onToolExecutionStart:G,onToolExecutionEnd:H,experimental_onToolCallStart:J,experimental_onToolCallFinish:K,runtimeContext:W={},toolsContext:Y={},experimental_include:X,include:Q=X,_internal:{now:ee=fW,generateId:et=gO,generateCallId:er=gR}={},...ea}){let eo=fp(c),en=fh(c),ei=ff(c),es=fm(c),el=null!=en?new AbortController:void 0,eu=null!=ei?new AbortController:void 0,ed=null!=es?new AbortController:void 0,ec=R??(({error:e})=>{console.error(e)});return new gj({model:hQ(e),telemetry:w,headers:p,settings:ea,maxRetries:l,streamRetries:u,abortSignal:fK(d,eo,el?.signal,eu?.signal,ed?.signal),stepTimeoutMs:en,stepAbortController:el,firstChunkTimeoutMs:ei,firstChunkAbortController:eu,chunkTimeoutMs:es,chunkAbortController:ed,instructions:a,system:o,prompt:n,messages:i,allowSystemInMessages:s,experimental_sandbox:f,tools:t,toolsContext:Y,runtimeContext:W,toolChoice:r,transforms:ip(C),activeTools:I,toolOrder:k,repairToolCall:T,refineToolInput:E,stopConditions:ip(h),output:m,toolApproval:g,experimental_toolCallers:y,experimental_toolApprovalSecret:v,providerOptions:_,prepareStep:x,timeout:c,onChunk:O,onError:ec,canRetryStreamViaOnError:void 0!==u&&null!=R,onEnd:$,onAbort:N,onStepFinish:z??j,onStart:D??q,onStepStart:U??L,onLanguageModelCallStart:F??Z,onLanguageModelCallEnd:B??V,onToolExecutionStart:G??J,onToolExecutionEnd:H??K,now:ee,generateId:et,generateCallId:er,download:M,include:{requestBody:Q?.requestBody??!1,requestMessages:Q?.requestMessages??!1,rawChunks:Q?.rawChunks??A??!1}})},"H",0,gm,"a",0,({model:e,middleware:t,modelId:r,providerId:a})=>{let o=hJ(e);return[...ip(t)].reverse().reduce((e,t)=>
104(({model:e,middleware:{transformParams:t,wrapGenerate:r,wrapStream:a,overrideProvider:o,overrideModelId:n,overrideSupportedUrls:i},modelId:s,providerId:l})=>{async function u({params:r,type:a}){return t?await t({params:r,type:a,model:e}):r}return{specificationVersion:"v4",provider:l??o?.({model:e})??e.provider,modelId:s??n?.({model:e})??e.modelId,supportedUrls:i?.({model:e})??e.supportedUrls,async doGenerate(t){let a=await u({params:t,type:"generate"}),o=async()=>await e.doGenerate(a),n=async()=>await e.doStream(a);return r?await r({doGenerate:o,doStream:n,params:a,model:e}):await o()},async doStream(t){let r=await u({params:t,type:"stream"}),o=async()=>await e.doGenerate(r),n=async()=>await e.doStream(r);return a?await a({doGenerate:o,doStream:n,params:r,model:e}):await n()}}})({model:e,middleware:t,modelId:r,providerId:a}),o)}],640262),e.i(362201),e.s([],430421),e.i(430421),e.i(789282),e.s([],100364),e.i(100364),e.s([],458829),e.i(458829),e.s(["any",0,uJ,"array",0,u0,"boolean",0,uB,"enum",0,dr,"literal",0,dn,"looseObject",0,u4,"number",0,uU,"object",0,u2,"record",0,de,"string",0,uf,"union",0,u9],722219);var yd=e.i(722219),yd=yd,yc=yd,yp=yd,yh=yd,yf=yd,ym=yd,yg=yd,yy=yd,yv=yd,yb=yd,yw=yd;function yx(e){return e.replace(/[_-]([a-z])/g,e=>e[1].toUpperCase())}function y_({rawName:e,providerOptions:t,warnings:r}){let a=yx(e);a!==e&&t?.[e]!=null&&r.push({type:"deprecated",setting:`providerOptions key '${e}'`,message:`Use '${a}' instead.`})}let yI={errorSchema:yd.object({error:yd.object({message:yc.string(),type:yc.string().nullish(),param:yp.any().nullish(),code:yh.union([yc.string(),yf.number()]).nullish()})}),errorToMessage:e=>e.error.message};function yk(e){return e?.providerOptions?.openaiCompatible??{}}function yS(e){let t=yk(e);switch(e.type){case"text":return{type:"text",text:e.text,...t};case"file":switch(e.data.type){case"reference":throw new eO({functionality:"file parts with provider references"});case"text":throw new eO({functionality:"text file parts"});case"url":case"data":{let r=iW(e.mediaType);if("image"===r)return{type:"image_url",image_url:{url:"url"===e.data.type?e.data.url.toString():`data:${lu({part:e})};base64,${iT(e.data.data)}`},...t};if("video"===r)return{type:"video_url",video_url:{url:"url"===e.data.type?e.data.url.toString():`data:${lu({part:e})};base64,${iT(e.data.data)}`},...t};if("audio"===r){if("url"===e.data.type)throw new eO({functionality:"audio file parts with URLs"});let r=lu({part:e}),a=function(e){switch(e){case"audio/wav":return"wav";case"audio/mp3":case"audio/mpeg":return"mp3";default:return null}}(r);if(null===a)throw new eO({functionality:`audio media type ${r}`});return{type:"input_audio",input_audio:{data:iT(e.data.data),format:a},...t}}if("application"===r){if("url"===e.data.type)throw new eO({functionality:"PDF file parts with URLs"});let r=lu({part:e});if("application/pdf"!==r)throw new eO({functionality:`file part media type ${r}`});return{type:"file",file:{filename:e.filename??"document.pdf",file_data:`data:application/pdf;base64,${iT(e.data.data)}`},...t}}if("text"===r)return{type:"text",text:"url"===e.data.type?e.data.url.toString():"string"==typeof e.data.data?new TextDecoder().decode(ik(e.data.data)):new TextDecoder().decode(e.data.data),...t};throw new eO({functionality:`file part media type ${e.mediaType}`})}}}}function yT(e){if("custom"===e.type)throw new eO({functionality:"custom tool content parts"});return yS(e)}function yE({id:e,model:t,created:r}){return iC({id:e,model:t,created:r||void 0})}function yC(e){switch(e){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}let yM=yd.object({user:yc.string().optional(),reasoningEffort:yc.string().optional(),textVerbosity:yc.string().optional(),strictJsonSchema:ym.boolean().optional()});var yA=class e{static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.config=t;let r=t.errorStructure??yI;this.chunkSchema=yz(r.errorSchema),this.failedResponseHandler=lm(r),this.supportsStructuredOutputs=t.supportsStructuredOutputs??!1}get provider(){return this.config.provider}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}
104get supportedUrls(){return this.config.supportedUrls?.()??{}}transformRequestBody(e,t){return this.config.transformRequestBody?.(e,t)??e}convertUsage(e){return this.config.convertUsage?.(e)??function(e){if(null==e)return iM();let t=e.prompt_tokens??0,r=e.completion_tokens??0,a=e.prompt_tokens_details?.cached_tokens??0,o=e.completion_tokens_details?.reasoning_tokens??0;return{inputTokens:{total:t,noCache:t-a,cacheRead:a,cacheWrite:void 0},outputTokens:{total:r,text:Math.max(0,r-o),reasoning:o},raw:e}}(e)}async getArgs({prompt:e,maxOutputTokens:t,temperature:r,topP:a,topK:o,frequencyPenalty:n,presencePenalty:i,reasoning:s,providerOptions:l,stopSequences:u,responseFormat:d,seed:c,toolChoice:p,tools:h}){var f;let m,g=[],y=await lt({provider:"openai-compatible",providerOptions:l,schema:yM});null!=y&&g.push({type:"deprecated",setting:"providerOptions key 'openai-compatible'",message:"Use 'openaiCompatible' instead."}),y_({rawName:this.providerOptionsName,providerOptions:l,warnings:g});let v=Object.assign(y??{},await lt({provider:"openaiCompatible",providerOptions:l,schema:yM})??{},await lt({provider:this.providerOptionsName,providerOptions:l,schema:yM})??{},await lt({provider:yx(this.providerOptionsName),providerOptions:l,schema:yM})??{}),b=v?.strictJsonSchema??!0;null!=o&&g.push({type:"unsupported",feature:"topK"}),d?.type!=="json"||null==d.schema||this.supportsStructuredOutputs||g.push({type:"unsupported",feature:"responseFormat",details:"JSON response format schema is only supported with structuredOutputs"});let{tools:w,toolChoice:x,toolWarnings:_}=function({tools:e,toolChoice:t}){e=e?.length?e:void 0;let r=[];if(null==e)return{tools:void 0,toolChoice:void 0,toolWarnings:r};let a=[];for(let t of e)"provider"===t.type?r.push({type:"unsupported",feature:`provider-defined tool ${t.id}`}):a.push({type:"function",function:{name:t.name,description:t.description,parameters:t.inputSchema,...null!=t.strict?{strict:t.strict}:{}}});if(null==t)return{tools:a,toolChoice:void 0,toolWarnings:r};let o=t.type;switch(o){case"auto":case"none":case"required":return{tools:a,toolChoice:o,toolWarnings:r};case"tool":return{tools:a,toolChoice:{type:"function",function:{name:t.toolName}},toolWarnings:r};default:throw new eO({functionality:`tool choice type: ${o}`})}}({tools:h,toolChoice:p}),I=(f=this.providerOptionsName,(m=yx(f))!==f&&l?.[m]!=null?m:f);return{metadataKey:I,args:{model:this.modelId,user:v.user,max_tokens:t,temperature:r,top_p:a,frequency_penalty:n,presence_penalty:i,response_format:d?.type==="json"?!0===this.supportsStructuredOutputs&&null!=d.schema?{type:"json_schema",json_schema:{schema:d.schema,strict:b,name:d.name??"response",description:d.description}}:{type:"json_object"}:void 0,stop:u,seed:c,...Object.fromEntries(Object.entries({...l?.[this.providerOptionsName],...l?.[yx(this.providerOptionsName)]}).filter(([e])=>!Object.keys(yM.shape).includes(e))),reasoning_effort:v.reasoningEffort??(sx(s)?s:void 0),verbosity:v.textVerbosity,messages:function(e,{providerOptionsKey:t="google",supportsMultiPartToolContent:r=!1}={}){let a=[];for(let{role:o,content:n,...i}of e){let e=yk({...i});switch(o){case"system":a.push({role:"system",content:n,...e});break;case"user":if(1===n.length&&"text"===n[0].type){a.push({role:"user",content:n[0].text,...yk(n[0])});break}a.push({role:"user",content:n.map(yS),...e});break;case"assistant":{let r="",o="",i=[];for(let e of n){let a=yk(e);switch(e.type){case"text":r+=e.text;break;case"reasoning":o+=e.text;break;case"tool-call":{let r=e.providerOptions?.[t]?.thoughtSignature??e.providerOptions?.google?.thoughtSignature;i.push({id:e.toolCallId,type:"function",function:{name:e.toolName,arguments:JSON.stringify(e.input)},...a,...r?{extra_content:{google:{thought_signature:String(r)}}}:{}})}}}a.push({role:"assistant",content:i.length>0?r||null:r,...o.length>0?{reasoning_content:o}:{},tool_calls:i.length>0?i:void 0,...e});break}case"tool":for(let e of n){let t;if("tool-approval-response"===e.type)continue;let o=e.output;switch(o.type){case"text":case"error-text":t=o.value;break;case"execution-denied":t=o.reason??"Tool call execution denied.";break;case"json":case"error-json":t=JSON.stringify(o.value);break;case"content":t=r?o.value.map(yT):JSON.stringify(o.value)}let n=yk(e);a.push({role:"tool",tool_call_id:e.toolCallId,content:t,...n})}break;default:throw Error(`Unsupported role: ${o}`)}}return a}(e,{providerOptionsKey:I,supportsMultiPartToolContent:this.config.supp
104ortsMultiPartToolContent}),tools:w,tool_choice:x},warnings:[...g,..._]}}async doGenerate(e){let{args:t,warnings:r,metadataKey:a}=await this.getArgs({...e}),o=this.transformRequestBody(t,r),n=JSON.stringify(o),{responseHeaders:i,value:s,rawValue:l}=await la({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:ih(this.config.headers?.(),e.headers),body:o,failedResponseHandler:this.failedResponseHandler,successfulResponseHandler:ly(y$),abortSignal:e.abortSignal,fetch:this.config.fetch}),u=s.choices[0];if(null==u)throw new K({data:l,message:"Response did not contain any choices."});let d=[];d.push(...yP(u.message.content));let c=u.message.reasoning_content??u.message.reasoning;if(null!=c&&c.length>0&&d.push({type:"reasoning",text:c}),null!=u.message.tool_calls)for(let e of u.message.tool_calls){let t=e.extra_content?.google?.thought_signature;d.push({type:"tool-call",toolCallId:e.id||sh(),toolName:e.function.name,input:e.function.arguments,...t?{providerMetadata:{[a]:{thoughtSignature:t}}}:{}})}let p={[a]:{},...await this.config.metadataExtractor?.extractMetadata?.({parsedBody:l})},h=s.usage?.completion_tokens_details;return h?.accepted_prediction_tokens!=null&&(p[a].acceptedPredictionTokens=h?.accepted_prediction_tokens),h?.rejected_prediction_tokens!=null&&(p[a].rejectedPredictionTokens=h?.rejected_prediction_tokens),{content:d,finishReason:{unified:yC(u.finish_reason),raw:u.finish_reason??void 0},usage:this.convertUsage(s.usage),providerMetadata:p,request:{body:n},response:{...yE(s),headers:i,body:l},warnings:r}}async doStream(e){let t,r,a,{args:o,warnings:n,metadataKey:i}=await this.getArgs({...e}),s=this.transformRequestBody({...o,stream:!0,stream_options:this.config.includeUsage?{include_usage:!0}:void 0},n),l=this.config.metadataExtractor?.createStreamExtractor(),{responseHeaders:u,value:d}=await la({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:ih(this.config.headers?.(),e.headers),body:s,failedResponseHandler:this.failedResponseHandler,successfulResponseHandler:lg(this.chunkSchema),abortSignal:e.abortSignal,fetch:this.config.fetch}),c=new Map,p=new Set,h=e=>{let r=e.index;if(null==r||p.has(r))return void t.processDelta(e);let a=c.get(r);null==a?(a={id:e.id??null,bufferedArguments:"",extraContent:e.extra_content??null},c.set(r,a)):(null==a.id&&null!=e.id&&(a.id=e.id),null==a.extraContent&&null!=e.extra_content&&(a.extraContent=e.extra_content));let o=e.function?.arguments;null!=o&&(a.bufferedArguments+=o);let n=e.function?.name;if(null!=n){let e={index:r,id:a.id,function:{name:n,arguments:a.bufferedArguments},extra_content:a.extraContent??void 0};t.processDelta(e),c.delete(r),p.add(r)}},f=!1,m=!1,g=!1,y=e=>this.convertUsage(e);return{stream:d.pipeThrough(new TransformStream({start(e){t=new lE(e,{generateId:sh,extractMetadata:e=>{let t=e.extra_content?.google?.thought_signature;return t?{[i]:{thoughtSignature:t}}:void 0},buildToolCallProviderMetadata:e=>e}),e.enqueue({type:"stream-start",warnings:n})},transform(t,o){if(e.includeRawChunks&&o.enqueue({type:"raw",rawValue:t.rawValue}),!t.success){r={unified:"error",raw:void 0},o.enqueue({type:"error",error:t.error});return}if(l?.processChunk(t.rawValue),"error"in t.value){r={unified:"error",raw:void 0},o.enqueue({type:"error",error:t.value.error});return}let n=t.value;if(!f){let e=yE(n);Object.values(e).some(Boolean)&&(f=!0,o.enqueue({type:"response-metadata",...e}))}null!=n.usage&&(a=n.usage);let i=n.choices[0];if(i?.finish_reason!=null&&(r={unified:yC(i.finish_reason),raw:i.finish_reason??void 0}),i?.delta==null)return;let s=i.delta,u=e=>{g&&(o.enqueue({type:"text-end",id:"txt-0"}),g=!1),m||(o.enqueue({type:"reasoning-start",id:"reasoning-0"}),m=!0),o.enqueue({type:"reasoning-delta",id:"reasoning-0",delta:e})},d=e=>{m&&(o.enqueue({type:"reasoning-end",id:"reasoning-0"}),m=!1),g||(o.enqueue({type:"text-start",id:"txt-0"}),g=!0),o.enqueue({type:"text-delta",id:"txt-0",delta:e})},c=s.reasoning_content??s.reasoning;for(let e of(c&&u(c),yP(s.content)))"reasoning"===e.type?u(e.text):d(e.text);if(null!=s.tool_calls&&s.tool_calls.length>
1040)for(let e of(m&&(o.enqueue({type:"reasoning-end",id:"reasoning-0"}),m=!1),s.tool_calls))h(e)},flush(e){for(let[r,a]of(m&&e.enqueue({type:"reasoning-end",id:"reasoning-0"}),g&&e.enqueue({type:"text-end",id:"txt-0"}),c))t.processDelta({index:r,id:a.id,function:{arguments:a.bufferedArguments}});c.clear(),t.flush(),null==r&&(r={unified:"error",raw:void 0},e.enqueue({type:"error",error:new K({data:void 0,message:"Response stream ended without a finish reason."})}));let o={[i]:{},...l?.buildMetadata()};a?.completion_tokens_details?.accepted_prediction_tokens!=null&&(o[i].acceptedPredictionTokens=a?.completion_tokens_details?.accepted_prediction_tokens),a?.completion_tokens_details?.rejected_prediction_tokens!=null&&(o[i].rejectedPredictionTokens=a?.completion_tokens_details?.rejected_prediction_tokens),e.enqueue({type:"finish",finishReason:r,usage:y(a),providerMetadata:o})}})),request:{body:s},response:{headers:u}}}};let yO=yg.looseObject({prompt_tokens:yf.number().nullish(),completion_tokens:yf.number().nullish(),total_tokens:yf.number().nullish(),prompt_tokens_details:yg.looseObject({cached_tokens:yf.number().nullish()}).nullish(),completion_tokens_details:yg.looseObject({reasoning_tokens:yf.number().nullish(),accepted_prediction_tokens:yf.number().nullish(),rejected_prediction_tokens:yf.number().nullish()}).nullish()}).nullish(),yR=yh.union([yc.string(),yy.array(yg.looseObject({type:yc.string()}))]).nullish();function yP(e){if(null==e)return[];if("string"==typeof e)return e.length>0?[{type:"text",text:e}]:[];let t=[];for(let r of e)if("text"===r.type&&"string"==typeof r.text)r.text.length>0&&t.push({type:"text",text:r.text});else if("thinking"===r.type&&Array.isArray(r.thinking)){let e=r.thinking.filter(e=>null!=e&&"object"==typeof e&&"type"in e&&"text"===e.type&&"text"in e&&"string"==typeof e.text).map(e=>e.text).join("");e.length>0&&t.push({type:"reasoning",text:e})}return t}let y$=yg.looseObject({id:yc.string().nullish(),created:yf.number().nullish(),model:yc.string().nullish(),choices:yy.array(yd.object({message:yd.object({role:yv.literal("assistant").nullish(),content:yR,reasoning_content:yc.string().nullish(),reasoning:yc.string().nullish(),tool_calls:yy.array(yd.object({id:yc.string().nullish(),function:yd.object({name:yc.string(),arguments:yc.string()}),extra_content:yd.object({google:yd.object({thought_signature:yc.string().nullish()}).nullish()}).nullish()})).nullish()}),finish_reason:yc.string().nullish()})),usage:yO}),yN=yg.looseObject({id:yc.string().nullish(),created:yf.number().nullish(),model:yc.string().nullish(),choices:yy.array(yd.object({delta:yd.object({role:yb.enum(["assistant",""]).nullish(),content:yR,reasoning_content:yc.string().nullish(),reasoning:yc.string().nullish(),tool_calls:yy.array(yd.object({index:yf.number().nullish(),id:yc.string().nullish(),function:yd.object({name:yc.string().nullish(),arguments:yc.string().nullish()}),extra_content:yd.object({google:yd.object({thought_signature:yc.string().nullish()}).nullish()}).nullish()})).nullish()}).nullish(),finish_reason:yc.string().nullish()})),usage:yO}),yz=e=>yh.union([yN,e]);function yj(e){if(null==e)return iM();let t=e.prompt_tokens??0,r=e.completion_tokens??0;return{inputTokens:{total:t,noCache:t,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:r,text:r,reasoning:void 0},raw:e}}function yD(e){switch(e){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}let yq=yd.object({echo:ym.boolean().optional(),logitBias:yw.record(yc.string(),yf.number()).optional(),suffix:yc.string().optional(),user:yc.string().optional()});var yU=class e{static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.config=t;let r=t.errorStructure??yI;this.chunkSchema=yZ(r.errorSchema),this.failedResponseHandler=lm(r)}get provider(){return this.config.provider}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}
104get supportedUrls(){return this.config.supportedUrls?.()??{}}async getArgs({prompt:e,maxOutputTokens:t,temperature:r,topP:a,topK:o,frequencyPenalty:n,presencePenalty:i,stopSequences:s,responseFormat:l,seed:u,providerOptions:d,tools:c,toolChoice:p}){let h=[];y_({rawName:this.providerOptionsName,providerOptions:d,warnings:h});let f=Object.assign(await lt({provider:this.providerOptionsName,providerOptions:d,schema:yq})??{},await lt({provider:yx(this.providerOptionsName),providerOptions:d,schema:yq})??{});null!=o&&h.push({type:"unsupported",feature:"topK"}),c?.length&&h.push({type:"unsupported",feature:"tools"}),null!=p&&h.push({type:"unsupported",feature:"toolChoice"}),null!=l&&"text"!==l.type&&h.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:m,stopSequences:g}=function({prompt:e,user:t="user",assistant:r="assistant"}){let a="";for(let{role:o,content:n}of("system"===e[0].role&&(a+=`${e[0].content} 105 106`,e=e.slice(1)),e))switch(o){case"system":throw new V({message:"Unexpected system message in prompt: ${content}",prompt:e});case"user":{let e=n.map(e=>{if("text"===e.type)return e.text}).filter(Boolean).join("");a+=`${t}: 107${e} 108 109`;break}case"assistant":{let e=n.map(e=>{switch(e.type){case"text":return e.text;case"tool-call":throw new eO({functionality:"tool-call messages"})}}).join("");a+=`${r}: 110${e} 111 112`;break}case"tool":throw new eO({functionality:"tool messages"});default:throw Error(`Unsupported role: ${o}`)}return{prompt:a+=`${r}: 113`,stopSequences:[` 114${t}:`]}}({prompt:e}),y=[...g??[],...s??[]];return{args:{model:this.modelId,echo:f.echo,logit_bias:f.logitBias,suffix:f.suffix,user:f.user,max_tokens:t,temperature:r,top_p:a,frequency_penalty:n,presence_penalty:i,seed:u,...d?.[this.providerOptionsName],...d?.[yx(this.providerOptionsName)],prompt:m,stop:y.length>0?y:void 0},warnings:h}}async doGenerate(e){let{args:t,warnings:r}=await this.getArgs(e),{responseHeaders:a,value:o,rawValue:n}=await la({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:ih(this.config.headers?.(),e.headers),body:t,failedResponseHandler:this.failedResponseHandler,successfulResponseHandler:ly(yF),abortSignal:e.abortSignal,fetch:this.config.fetch}),i=o.choices[0],s=[];return null!=i.text&&i.text.length>0&&s.push({type:"text",text:i.text}),{content:s,usage:yj(o.usage),finishReason:{unified:yD(i.finish_reason),raw:i.finish_reason},request:{body:t},response:{...iC(o),headers:a,body:n},warnings:r}}async doStream(e){let t,{args:r,warnings:a}=await this.getArgs(e),o={...r,stream:!0,stream_options:this.config.includeUsage?{include_usage:!0}:void 0},{responseHeaders:n,value:i}=await la({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:ih(this.config.headers?.(),e.headers),body:o,failedResponseHandler:this.failedResponseHandler,successfulResponseHandler:lg(this.chunkSchema),abortSignal:e.abortSignal,fetch:this.config.fetch}),s={unified:"other",raw:void 0},l=!0;return{stream:i.pipeThrough(new TransformStream({start(e){e.enqueue({type:"stream-start",warnings:a})},transform(r,a){if(e.includeRawChunks&&a.enqueue({type:"raw",rawValue:r.rawValue}),!r.success){s={unified:"error",raw:void 0},a.enqueue({type:"error",error:r.error});return}let o=r.value;if("error"in o){s={unified:"error",raw:void 0},a.enqueue({type:"error",error:o.error});return}l&&(l=!1,a.enqueue({type:"response-metadata",...iC(o)}),a.enqueue({type:"text-start",id:"0"})),null!=o.usage&&(t=o.usage);let n=o.choices[0];n?.finish_reason!=null&&(s={unified:yD(n.finish_reason),raw:n.finish_reason??void 0}),n?.text!=null&&a.enqueue({type:"text-delta",id:"0",delta:n.text})},flush(e){l||e.enqueue({type:"text-end",id:"0"}),e.enqueue({type:"finish",finishReason:s,usage:yj(t)})}})),request:{body:o},response:{headers:n}}}};let yL=yg.looseObject({prompt_tokens:yf.number(),completion_tokens:yf.number(),total_tokens:yf.number()}),yF=yd.object({id:yc.string().nullish(),created:yf.number().nullish(),model:yc.string().nullish(),choices:yy.array(yd.object({text:yc.string(),finish_reason:yc.string()})),usage:yL.nullish()}),yZ=e=>yh.union([yd.object({id:yc.string().nullish(),created:yf.number().nullish(),model:yc.string().nullish(),choices:yy.array(yd.object({text:yc.string(),finish_reason:yc.string().nullish(),index:yf.number()})),usage:yL.nullish()}),e]),yB=yd.object({dimensions:yf.number().optional(),user:yc.string().optional()});var yV=class e{get provider(){return this.config.provider}get maxEmbeddingsPerCall(){return this.config.maxEmbeddingsPerCall??2048}
114get supportsParallelCalls(){return this.config.supportsParallelCalls??!0}static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.config=t}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:a}){let o=[],n=await lt({provider:"openai-compatible",providerOptions:a,schema:yB});null!=n&&o.push({type:"deprecated",setting:"providerOptions key 'openai-compatible'",message:"Use 'openaiCompatible' instead."}),y_({rawName:this.providerOptionsName,providerOptions:a,warnings:o});let i=Object.assign(n??{},await lt({provider:"openaiCompatible",providerOptions:a,schema:yB})??{},await lt({provider:this.providerOptionsName,providerOptions:a,schema:yB})??{});if(e.length>this.maxEmbeddingsPerCall)throw new eI({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:e});let{responseHeaders:s,value:l,rawValue:u}=await la({url:this.config.url({path:"/embeddings",modelId:this.modelId}),headers:ih(this.config.headers?.(),t),body:{model:this.modelId,input:e,encoding_format:"float",dimensions:i.dimensions,user:i.user},failedResponseHandler:lm(this.config.errorStructure??yI),successfulResponseHandler:ly(yG),abortSignal:r,fetch:this.config.fetch});return{warnings:o,embeddings:l.data.map(e=>e.embedding),usage:l.usage?{tokens:l.usage.prompt_tokens}:void 0,providerMetadata:l.providerMetadata,response:{headers:s,body:u}}}};let yG=yd.object({data:yy.array(yd.object({embedding:yy.array(yf.number())})),usage:yd.object({prompt_tokens:yf.number()}).nullish(),providerMetadata:yw.record(yc.string(),yw.record(yc.string(),yp.any())).optional()});var yH=class e{get provider(){return this.config.provider}get providerOptionsKey(){return this.config.provider.split(".")[0].trim()}static[id](e){return lS({modelId:e.modelId,config:e.config})}static[ic](t){return new e(t.modelId,t.config)}constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxImagesPerCall=10,this.supportsFileInputs=void 0,this.supportsMaskInputs=void 0}getArgs(e,t){return y_({rawName:this.providerOptionsKey,providerOptions:e,warnings:t}),{...e[this.providerOptionsKey],...e[yx(this.providerOptionsKey)]}}async doGenerate({prompt:e,n:t,size:r,aspectRatio:a,seed:o,providerOptions:n,headers:i,abortSignal:s,files:l,mask:u}){let d=[];null!=a&&d.push({type:"unsupported",feature:"aspectRatio",details:"This model does not support aspect ratio. Use `size` instead."}),null!=o&&d.push({type:"unsupported",feature:"seed"});let c=this.config._internal?.currentDate?.()??new Date,p=this.getArgs(n,d);if(null!=l&&l.length>0){let{value:a,responseHeaders:o}=await lo({url:this.config.url({path:"/images/edits",modelId:this.modelId}),headers:ih(this.config.headers?.(),i),formData:iE({model:this.modelId,prompt:e,image:await Promise.all(l.map(e=>yW(e))),mask:null!=u?await yW(u):void 0,n:t,size:r,...p}),failedResponseHandler:lm(this.config.errorStructure??yI),successfulResponseHandler:ly(yK),abortSignal:s,fetch:this.config.fetch});return{images:a.data.map(e=>e.b64_json),warnings:d,usage:yJ(a.usage),response:{timestamp:c,modelId:this.modelId,headers:o}}}let{value:h,responseHeaders:f}=await la({url:this.config.url({path:"/images/generations",modelId:this.modelId}),headers:ih(this.config.headers?.(),i),body:{model:this.modelId,prompt:e,n:t,size:r,...p},failedResponseHandler:lm(this.config.errorStructure??yI),successfulResponseHandler:ly(yK),abortSignal:s,fetch:this.config.fetch});return{images:h.data.map(e=>e.b64_json),warnings:d,usage:yJ(h.usage),response:{timestamp:c,modelId:this.modelId,headers:f}}}};function yJ(e){return null==e?void 0:{inputTokens:e.input_tokens??void 0,outputTokens:e.output_tokens??void 0,totalTokens:e.total_tokens??void 0}}let yK=yd.object({data:yy.array(yd.object({b64_json:yc.string()})),usage:yd.object({input_tokens:yf.number().nullish(),output_tokens:yf.number().nullish(),total_tokens:yf.number().nullish()}).nullish()});async function yW(e){return"url"===e.type?sl(e.url):new Blob([e.data instanceof Uint8Array?e.data:ik(e.data)],{type:e.mediaType})}e.s(["f",0,function(e){let t=lz(e.baseURL),r=e.name,a={...e.apiKey&&{Authorization:`Bearer ${e.apiKey}`},...e.headers},o=()=>iL(a,"ai-sdk-openai-compatible/3.0.66"),n=a=>({provider:`${r}.${a}`,url:({path:r})=>{let a=new URL(`${t}${r}`);return e.queryParams&&(a.search=new URLSearchParams(e.queryParams).toString()),a.toString()},headers:o,fetch:e.fetch}),i=e=>s(e),s=t=>new yA(t,{...n("chat"),includeUsage:e.includeUsage,supportsStructuredOutputs:e.supportsStructuredOutputs,supportsMultiPartToolContent:e.supportsMultiPartToolContent,supportedUrls:e.supportedUrls,transformRequestBody:e.transformRequestBody,metadataExtractor:e.metadataExtractor,convertUsage:e.convertUsage}),l=e=>new yV(e,{...n("embedding")}),u=e=>i(e);return u.specificationVersion="v4",u.languageModel=i,u.chatModel=s,u.completionModel=t=>new yU(t,{...n("completion"),includeUsage:e.includeUsage}),u.embeddingModel=l,u.textEmbeddingModel=l,u.imageModel=e=>new yH(e,n("image")),u}],978113)},331114,e=>{var t=e.i(700032),r=e.i(876531),a=e.i(640262),o=e.i(978113),n=e.i(397363),i=e.i(115735),s=e.i(126810),l=e.i(874455),u=e.i(160950),d=e.i(932430),c=e.i(312348),p=e.i(631783),h=e.i(32481);async function f(e){if(e)try{return await (0,p.f)().query({queryKey:h.f.pricingModel(e),queryFn:async()=>(0,i.C)(await c.f.api.models.pricing.detail.get({query:{model:e}})),staleTime:3e5})??void 0}catch{return}}let m=(e,t)=>
114{var r;return(r=t.group,async(t,a)=>{let o=a.systemPrompt?`<|im_start|>system<|im_sep|>${a.systemPrompt}<|im_end|><|im_start|>user<|im_sep|>${a.prompt}<|im_end|>`:a.prompt;return{text:(0,i.C)(await c.f.api.ai.chat["trigger-op"].llm.post({prompt:o,model:e,...r?{group:r}:{}}))}})("",t)};async function g(e,p){if((0,t.E)(e)){let u,d,c,h=(0,t.L)(e);if(!h)throw Error("invalid custom model id");let f=await (0,r.$)(h.providerId);if(!f)throw Error("custom provider not found");let m=f.models.find(e=>e.key===h.modelKey),g=(0,t.K)(f.baseUrl),y=!0===f.proxy;return{isCustom:!0,model:h.modelKey,apiKey:f.apiKey,baseURL:y?`${p}/api/ai/chat/custom-forward`:g,deps:(u=(0,o.f)({name:"custom",baseURL:(0,t.K)(f.baseUrl),apiKey:f.apiKey,fetch:(0,s.f)(void 0)}),d=f.models[0]?.key,c=(0,t.K)(f.baseUrl),{getModelInfo:async()=>void 0,upstreamTarget:{endpoint:"/chat/completions",url:`${c}/chat/completions`},inlinePdfText:n.f,webSearch:async()=>void 0,runUtilityLLM:(e,t)=>(0,a.p)({model:u.chatModel(e),system:t.systemPrompt,prompt:t.prompt,maxOutputTokens:t.maxOutputTokens,maxRetries:0,...t.abortSignal?{abortSignal:t.abortSignal}:{}}),retrieveSemantic:async(e,t,r,o)=>{if(!d||0===r.length)return[];try{let e=u.embeddingModel(d),[{embedding:n},{embeddings:s}]=await Promise.all([(0,a.f)({model:e,value:t}),(0,a.J)({model:e,values:r.map(e=>e.text)})]);return r.map((e,t)=>({id:e.id,text:e.text,score:(0,i.J)(n,s[t])})).filter(e=>e.score>=.2).sort((e,t)=>t.score-e.score).slice(0,o.topK).map(e=>({id:e.id,text:e.text}))}catch{return[]}},triggerOps:()=>(0,l.f)()}),tokenizer:m?.tokenizer??void 0,...y?{extraHeaders:{"x-proxy-target":g}}:{}}}return{isCustom:!1,model:e,apiKey:"proxy",baseURL:`${p}/api/ai/chat/forward`,deps:{getModelInfo:f,upstreamTarget:{endpoint:d.f.chatCompletions,url:`${u.f.apiUrl}${d.f.chatCompletions}`},inlinePdfText:n.f,webSearch:async e=>{if(e.lastUserText)return(0,i.C)(await c.f.api.ai.chat["web-search"].post({text:e.lastUserText})).block??void 0},runUtilityLLM:m,retrieveSemantic:async(e,t,r,a)=>{if(0===r.length)return[];try{let e=(0,i.C)(await c.f.api.ai.chat["trigger-op"].similarity.post({source:t,values:r.map(e=>e.text)})),o=new Map;for(let e of r){let t=o.get(e.text);t?t.push(e.id):o.set(e.text,[e.id])}return e.slice(0,a.topK).map(e=>({id:o.get(e)?.shift()??e,text:e}))}catch{return[]}},triggerOps:()=>(0,l.f)()}}}e.s(["f",0,function(e){return g(e,window.location.origin)}],331114)},874455,e=>{var t=e.i(316400),r=e.i(312348),a=e.i(115735),o=e.i(621367),n=e.i(857756);e.s(["f",0,function(){return{runLLM:async e=>(0,a.C)(await r.f.api.ai.chat["trigger-op"].llm.post({prompt:e,model:n.f.get(n.j)??""})),similarity:async(e,t)=>(0,a.C)(await r.f.api.ai.chat["trigger-op"].similarity.post({source:e,values:t})),imgGen:async(e,t)=>{let i=(0,a.C)(await r.f.api.ai.chat["trigger-op"].imggen.post({prompt:e,negative:t}));return i?(await (0,o.S)({id:i.id,convId:n.f.get(n.$),mimeType:i.mimeType,sizeBytes:i.sizeBytes,dataBase64:i.dataBase64,r2Key:null,r2Url:null}),`{{inlay::${i.id}}}`):"Error: Image generation failed"},alert:(e,r,a)=>(0,t.triggerAlert)(e,r,a)}}])},397363,e=>{var t=e.i(115735);async function r(t){try{let{extractText:r,getDocumentProxy:a}=await e.A(376685),o=await a(t),n=await r(o,{mergePages:!0}),i=(Array.isArray(n.text)?n.text.join("\n"):n.text).trim();return i.length>0?i:null}catch{return null}}function a(e){return"object"==typeof e&&null!==e&&"type"in e&&"file"===e.type&&"mediaType"in e&&"application/pdf"===e.mediaType&&"url"in e&&"string"==typeof e.url}let o=/^text\/|^application\/(json|xml|x-yaml|yaml)$/;function n(e){return"object"==typeof e&&null!==e&&"type"in e&&"file"===e.type&&"mediaType"in e&&"string"==typeof e.mediaType&&o.test(e.mediaType)&&"url"in e&&"string"==typeof e.url}async function i(e){return e.some(e=>"user"===e.role&&Array.isArray(e.parts)&&e.parts.some(e=>a(e)||n(e)))?Promise.all(e.map(async e=>{if("user"!==e.role||!Array.isArray(e.parts))return e;let o=await Promise.all(e.parts.map(async e=>{if(a(e)){let a=e.filename??"document.pdf",o=e.url.indexOf(","),n=o>=0?e.url.slice(o+1):"",i=n?await r((0,t.v)(n)):null;return{type:"text",text:i?`[Attached PDF "${a}": 115${i}
116]`:`[Attached PDF "${a}": extraction unavailable]`}}if(!n(e))return e;let o=e.filename??"file.txt",i=function(e){let r=e.indexOf(",");if(r<0)return null;try{let a=(0,t.v)(e.slice(r+1)),o=new TextDecoder().decode(a).trim();return o.length>0?o:null}catch{return null}}(e.url);return{type:"text",text:i?`[Attached file "${o}": 117${i} 118]`:`[Attached file "${o}": unreadable]`}}));return{...e,parts:o}})):e}e.s(["f",0,i])},126810,e=>{var t=e.i(115735);e.s(["f",0,function(e){return async(r,a)=>{if(a=function(e){if(!e?.headers)return e;let t=new Headers(e.headers);return t.delete("user-agent"),{...e,headers:t}}(a),!e||!(e&&(e.injectCacheControl||e.deepSeekPrefix||e.deepSeekThinking||e.deepSeekReasoningContent||e.claudeAdaptive||e.cacheBust)))return fetch(r,a);try{if(a?.body&&"string"==typeof a.body){let o=(0,t.i)(JSON.parse(a.body));if(!o)return fetch(r,a);e.injectCacheControl&&function(e){let r=(0,t.L)(e.messages);if(0===r.length)return;let a=e=>{if("string"==typeof e)return[{type:"text",text:e,cache_control:{type:"ephemeral"}}];if(Array.isArray(e)&&e.length>0){let r=e[e.length-1];(0,t.s)(r)&&(r.cache_control={type:"ephemeral"})}return e},o=r.find(e=>"system"===e.role);o&&(o.content=a(o.content));for(let e=r.length-1;e>=0;e--)if("user"===r[e].role){r[e].content=a(r[e].content);break}}(o),e.cacheBust&&function(e){let r=(0,t.L)(e.messages)[0];if(!r)return;let a=Array.from(crypto.getRandomValues(new Uint8Array(12)),e=>e.toString(16).padStart(2,"0")).join(""),o=`[${a}] 119Ignore the line above, it is a request id. 120 121`;if("string"==typeof r.content){r.content=o+r.content;return}if(!Array.isArray(r.content))return;let n=r.content[0];(0,t.s)(n)&&"text"===n.type&&"string"==typeof n.text?n.text=o+n.text:r.content.unshift({type:"text",text:o})}(o);let n=(0,t.L)(o.messages),i=n[n.length-1];e.deepSeekPrefix&&i?.role==="assistant"&&(i.prefix=!0),e.deepSeekReasoningContent&&i?.role==="assistant"&&(i.reasoning_content=e.deepSeekReasoningContent),e.deepSeekThinking&&(o.thinking={type:e.deepSeekThinking.enabled?"enabled":"disabled",reasoning_effort:e.deepSeekThinking.effort},delete o.reasoning_effort,e.deepSeekThinking.enabled&&(delete o.temperature,delete o.top_p,delete o.frequency_penalty,delete o.presence_penalty)),e.claudeAdaptive&&(o.thinking={type:"adaptive",display:"summarized"},o.output_config={effort:e.claudeAdaptive.effort},delete o.reasoning_effort),a={...a,body:JSON.stringify(o)}}}catch{}return fetch(r,a)}}])}])})(); 122 123//# chunkId=660b8357-1b8b-5c62-926f-86928a27b4fb
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.