1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[59],{1758:(e,t,a)=>{a.d(t,{d1:()=>tu,jz:()=>function e(t,a){if(t===a)return!0;if(null==t||null==a)return!1;if("object"!=typeof t&&"object"!=typeof a)return t===a;if(t.constructor!==a.constructor)return!1;if(t instanceof Date&&a instanceof Date)return t.getTime()===a.getTime();if(Array.isArray(t)){if(t.length!==a.length)return!1;for(let r=0;r<t.length;r++)if(!e(t[r],a[r]))return!1;return!0}let r=Object.keys(t),o=Object.keys(a);if(r.length!==o.length)return!1;for(let s of r)if(!o.includes(s)||!e(t[s],a[s]))return!1;return!0},vl:()=>tZ});var r,o,s,i,n,l,u,p,d,c,m,h,v,y,f,g=a(1810),I=a(3031),b=a(9315),E=a(8968),x=Object.defineProperty,T="AI_InvalidArgumentError",w=`vercel.ai.error.${T}`,j=Symbol.for(w),M=class extends I.bD{constructor({parameter:e,value:t,message:a}){super({name:T,message:`Invalid argument for parameter ${e}: ${a}`}),this[r]=!0,this.parameter=e,this.value=t}static isInstance(e){return I.bD.hasMarker(e,w)}};r=j,Symbol.for("vercel.ai.error.AI_InvalidStreamPartError"),I.bD;var k="AI_InvalidToolApprovalError",N=`vercel.ai.error.${k}`,R=Symbol.for(N),A=class extends I.bD{constructor({approvalId:e}){super({name:k,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[o]=!0,this.approvalId=e}static isInstance(e){return I.bD.hasMarker(e,N)}};o=R;var S="AI_InvalidToolInputError",Y=`vercel.ai.error.${S}`,C=Symbol.for(Y),_=class extends I.bD{constructor({toolInput:e,toolName:t,cause:a,message:r=`Invalid input for tool ${t}: ${(0,I.u1)(a)}`}){super({name:S,message:r,cause:a}),this[s]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return I.bD.hasMarker(e,Y)}};s=C;var D="AI_ToolCallNotFoundForApprovalError",O=`vercel.ai.error.${D}`,$=Symbol.for(O),P=class extends I.bD{constructor({toolCallId:e,approvalId:t}){super({name:D,message:`Tool call "${e}" not found for approval request "${t}".`}),this[i]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return I.bD.hasMarker(e,O)}};i=$;var L="AI_MissingToolResultsError",F=`vercel.ai.error.${L}`,U=Symbol.for(F),Z=class extends I.bD{constructor({toolCallIds:e}){super({name:L,message:`Tool result${e.length>1?"s are":" is"} missing for tool call${e.length>1?"s":""} ${e.join(", ")}.`}),this[n]=!0,this.toolCallIds=e}static isInstance(e){return I.bD.hasMarker(e,F)}};n=U;var q=Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");I.bD;var z="AI_NoObjectGeneratedError",B=`vercel.ai.error.${z}`,W=Symbol.for(B),K=class extends I.bD{constructor({message:e="No object generated.",cause:t,text:a,response:r,usage:o,finishReason:s}){super({name:z,message:e,cause:t}),this[l]=!0,this.text=a,this.response=r,this.usage=o,this.finishReason=s}static isInstance(e){return I.bD.hasMarker(e,B)}};l=W;var J="AI_NoOutputGeneratedError",V=`vercel.ai.error.${J}`,G=Symbol.for(V),H=class extends I.bD{constructor({message:e="No output generated.",cause:t}={}){super({name:J,message:e,cause:t}),this[u]=!0}static isInstance(e){return I.bD.hasMarker(e,V)}};u=G;var Q=Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");I.bD;var X=Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");I.bD;var ee=Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");I.bD;var et="AI_NoSuchToolError",ea=`vercel.ai.error.${et}`,er=Symbol.for(ea),eo=class extends I.bD{constructor({toolName:e,availableTools:t,message:a=`Model tried to call unavailable tool '${e}'. ${void 0===t?"No tools are available.":`Available tools: ${t.join(", ")}.`}`}){super({name:et,message:a}),this[p]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return I.bD.hasMarker(e,ea)}};p=er;var es="AI_ToolCallRepairError",ei=`vercel.ai.error.${es}`,en=Symbol.for(ei),el=class extends I.bD{constructor({cause:e,originalError:t,message:a=`Error repairing tool call: ${(0,I.u1)(e)}`}){super({name:es,message:a,cause:e}),this[d]=!0,this.originalError=t}static isInstance(e){return I.bD.hasMarker(e,ei)}};d=en;var eu=class extends I.bD{constructor(e){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${e.ver
1sion} 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}},ep="AI_UIMessageStreamError",ed=`vercel.ai.error.${ep}`,ec=Symbol.for(ed),em=class extends I.bD{constructor({chunkType:e,chunkId:t,message:a}){super({name:ep,message:a}),this[c]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return I.bD.hasMarker(e,ed)}};c=ec;var eh="AI_InvalidDataContentError",ev=`vercel.ai.error.${eh}`,ey=Symbol.for(ev);I.bD,m=ey;var ef="AI_InvalidMessageRoleError",eg=`vercel.ai.error.${ef}`,eI=Symbol.for(eg),eb=class extends I.bD{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:ef,message:t}),this[h]=!0,this.role=e}static isInstance(e){return I.bD.hasMarker(e,eg)}};h=eI;var eE="AI_MessageConversionError",ex=`vercel.ai.error.${eE}`,eT=Symbol.for(ex),ew=class extends I.bD{constructor({originalMessage:e,message:t}){super({name:eE,message:t}),this[v]=!0,this.originalMessage=e}static isInstance(e){return I.bD.hasMarker(e,ex)}};v=eT;var ej="AI_RetryError",eM=`vercel.ai.error.${ej}`,ek=Symbol.for(eM),eN=class extends I.bD{constructor({message:e,reason:t,errors:a}){super({name:ej,message:e}),this[y]=!0,this.reason=t,this.errors=a,this.lastError=a[a.length-1]}static isInstance(e){return I.bD.hasMarker(e,eM)}};y=ek;var eR=!1,eA=e=>{if(0===e.warnings.length)return;let t=globalThis.AI_SDK_LOG_WARNINGS;if(!1!==t){if("function"==typeof t){t(e);return}for(let t of(eR||(eR=!0,console.info("AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.")),e.warnings))console.warn(function({warning:e,provider:t,model:a}){let r=`AI SDK Warning (${t} / ${a}):`;switch(e.type){case"unsupported":{let t=`${r} The feature "${e.feature}" is not supported.`;return e.details&&(t+=` ${e.details}`),t}case"compatibility":{let t=`${r} The feature "${e.feature}" is used in a compatibility mode.`;return e.details&&(t+=` ${e.details}`),t}case"other":return`${r} ${e.message}`;default:return`${r} ${JSON.stringify(e,null,2)}`}}({warning:t,provider:e.provider,model:e.model}))}};function eS({provider:e,modelId:t}){eA({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:e,model:t})}function eY(e){return{unified:"unknown"===e?"other":e,raw:void 0}}function eC(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}}}var e_=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],eD=e=>{let t="string"==typeof e?convertBase64ToUint8Array(e):e,a=(127&t[6])<<21|(127&t[7])<<14|(127&t[8])<<7|127&t[9];return t.slice(a+10)},eO="6.0.68",e$=async({url:e})=>{var t;let a=e.toString();try{let e=await fetch(a,{headers:withUserAgentSuffix({},`ai-sdk/${eO}`,getRuntimeEnvironmentUserAgent())});if(!e.ok)throw new DownloadError2({url:a,statusCode:e.status,statusText:e.statusText});return{data:new Uint8Array(await e.arrayBuffer()),mediaType:null!=(t=e.headers.get("content-type"))?t:void 0}}catch(e){if(DownloadError2.isInstance(e))throw e;throw new DownloadError2({url:a,cause:e})}},eP=(e=e$)=>t=>Promise.all(t.map(async t=>t.isUrlSupportedByModel?null:e(t))),eL=b.KC([b.Yj(),b.Nl(Uint8Array),b.Nl(ArrayBuffer),b.Ie(e=>{var t,a;return null!=(a=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&a},{message:"Must be a Buffer"})]);function eF(e){if(e instanceof Uint8Array)return{data:e,mediaType:void 0};if(e instanceof ArrayBuffer)return{data:new Uint8Array(e),mediaType:void 0};if("string"==typeof e)try{e=new URL(e)}catch(e){}if(e instanceof URL&&"data:"===e.protocol){let{mediaType:t,base64Content:a}
1=function(e){try{let[t,a]=e.split(",");return{mediaType:t.split(";")[0].split(":")[1],base64Content:a}}catch(e){return{mediaType:void 0,base64Content:void 0}}}(e.toString());if(null==t||null==a)throw new AISDKError22({name:"InvalidDataContentError",message:`Invalid data URL format in content ${e.toString()}`});return{data:a,mediaType:t}}return{data:e,mediaType:void 0}}function eU(e){return void 0===e?[]:Array.isArray(e)?e:[e]}async function eZ(e,t,a){let r=e.filter(e=>"user"===e.role).map(e=>e.content).filter(e=>Array.isArray(e)).flat().filter(e=>"image"===e.type||"file"===e.type).map(e=>{var t;let a=null!=(t=e.mediaType)?t:"image"===e.type?"image/*":void 0,r="image"===e.type?e.image:e.data;if("string"==typeof r)try{r=new URL(r)}catch(e){}return{mediaType:a,data:r}}).filter(e=>e.data instanceof URL).map(e=>({url:e.data,isUrlSupportedByModel:null!=e.mediaType&&isUrlSupported({url:e.data.toString(),mediaType:e.mediaType,supportedUrls:a})}));return Object.fromEntries((await t(r)).map((e,t)=>null==e?null:[r[t].url.toString(),{data:e.data,mediaType:e.mediaType}]).filter(e=>null!=e))}function eq(e){return"content"!==e.type?e:{type:"content",value:e.value.map(e=>"media"!==e.type?e:e.mediaType.startsWith("image/")?{type:"image-data",data:e.data,mediaType:e.mediaType}:{type:"file-data",data:e.data,mediaType:e.mediaType})}}async function ez({toolCallId:e,input:t,output:a,tool:r,errorMode:o}){return"text"===o?{type:"error-text",value:getErrorMessage3(a)}:"json"===o?{type:"error-json",value:eB(a)}:(null==r?void 0:r.toModelOutput)?await r.toModelOutput({toolCallId:e,input:t,output:a}):"string"==typeof a?{type:"text",value:a}:{type:"json",value:eB(a)}}function eB(e){return void 0===e?null:e}var eW=b.RZ(()=>b.KC([b.ch(),b.Yj(),b.ai(),b.zM(),b.g1(b.Yj(),eW.optional()),b.YO(eW)])),eK=b.g1(b.Yj(),b.g1(b.Yj(),eW.optional())),eJ=b.Ik({type:b.eu("text"),text:b.Yj(),providerOptions:eK.optional()}),eV=b.Ik({type:b.eu("image"),image:b.KC([eL,b.Nl(URL)]),mediaType:b.Yj().optional(),providerOptions:eK.optional()}),eG=b.Ik({type:b.eu("file"),data:b.KC([eL,b.Nl(URL)]),filename:b.Yj().optional(),mediaType:b.Yj(),providerOptions:eK.optional()}),eH=b.Ik({type:b.eu("reasoning"),text:b.Yj(),providerOptions:eK.optional()}),eQ=b.Ik({type:b.eu("tool-call"),toolCallId:b.Yj(),toolName:b.Yj(),input:b.L5(),providerOptions:eK.optional(),providerExecuted:b.zM().optional()}),eX=b.gM("type",[b.Ik({type:b.eu("text"),value:b.Yj(),providerOptions:eK.optional()}),b.Ik({type:b.eu("json"),value:eW,providerOptions:eK.optional()}),b.Ik({type:b.eu("execution-denied"),reason:b.Yj().optional(),providerOptions:eK.optional()}),b.Ik({type:b.eu("error-text"),value:b.Yj(),providerOptions:eK.optional()}),b.Ik({type:b.eu("error-json"),value:eW,providerOptions:eK.optional()}),b.Ik({type:b.eu("content"),value:b.YO(b.KC([b.Ik({type:b.eu("text"),text:b.Yj(),providerOptions:eK.optional()}),b.Ik({type:b.eu("media"),data:b.Yj(),mediaType:b.Yj()}),b.Ik({type:b.eu("file-data"),data:b.Yj(),mediaType:b.Yj(),filename:b.Yj().optional(),providerOptions:eK.optional()}),b.Ik({type:b.eu("file-url"),url:b.Yj(),providerOptions:eK.optional()}),b.Ik({type:b.eu("file-id"),fileId:b.KC([b.Yj(),b.g1(b.Yj(),b.Yj())]),providerOptions:eK.optional()}),b.Ik({type:b.eu("image-data"),data:b.Yj(),mediaType:b.Yj(),providerOptions:eK.optional()}),b.Ik({type:b.eu("image-url"),url:b.Yj(),providerOptions:eK.optional()}),b.Ik({type:b.eu("image-file-id"),fileId:b.KC([b.Yj(),b.g1(b.Yj(),b.Yj())]),providerOptions:eK.optional()}),b.Ik({type:b.eu("custom"),providerOptions:eK.optional()})]))})]),e0=b.Ik({type:b.eu("tool-result"),toolCallId:b.Yj(),toolName:b.Yj(),output:eX,providerOptions:eK.optional()}),e1=b.Ik({type:b.eu("tool-approval-request"),approvalId:b.Yj(),toolCallId:b.Yj()}),e5=b.Ik({type:b.eu("tool-approval-response"),approvalId:b.Yj(),approved:b.zM(),reason:b.Yj().optional()}),e2=b.Ik({role:b.eu("system"),content:b.Yj(),providerOptions:eK.optional()}),e8=b.Ik({role:b.eu("user"),content:b.KC([b.Yj(),b.YO(b.KC([eJ,eV,eG]))]),providerOptions:eK.optional()}),e7=b.Ik({role:b.eu("assistant"),content:b.KC([b.Yj(),b.YO(b.KC([eJ,eG,eH,eQ,e0,e1]))]),providerOptions:eK.optional()}),e3=b.Ik({role:b.eu("tool"),content:b.YO(b.KC([e0,e5])),providerOptions:eK.optional()}),e6=b.KC([e2,e8,e7,e3]),e4={startSpan:()=>e9,startActiveSpan:(e,t,a,r)=>"function"==typeof t?t(e9):"function"==typeof a?a(e9):"function"==typeof r?r(e9):void 0},e9={spanContext:()=>te,setAttribute(){return this},setAttributes(){return this},addEvent(){return this},addLink(){return this},addLinks(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording:()=>!1,recordException(){return this}},te={traceId:"",spanId:"",traceFlags:0};async function tt({name:e,tracer:t,attributes:a,fn:r,endWhenDone:o=!0}){return t.startActiveSpan(e,{attributes:await a},async e=>{let t=context.active();try{let a=await context.with(t,()=>r(e));return o&&e.end(),a}catch(t){try{ta(e,t)}finally{e.end()}throw t}})}function ta(e,t){t instanceof Error?(e.recordException({name:t.name,message:t.message,stack:t.stack}),e.setStatus({code:SpanStatusCode.ERROR,message:t.message})):e.setStatus({code:SpanStatusCode.ERROR})}async function tr({telemetry:e,attributes:t}){if((null==e?void 0:e.isEnabled)!==!0)return{};let a={};
1for(let[r,o]of Object.entries(t))if(null!=o){if("object"==typeof o&&"input"in o&&"function"==typeof o.input){if((null==e?void 0:e.recordInputs)===!1)continue;let t=await o.input();null!=t&&(a[r]=t);continue}if("object"==typeof o&&"output"in o&&"function"==typeof o.output){if((null==e?void 0:e.recordOutputs)===!1)continue;let t=await o.output();null!=t&&(a[r]=t);continue}a[r]=o}return a}function to(e,t){return null==e&&null==t?void 0:(null!=e?e:0)+(null!=t?t:0)}var ts=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:a=2,abortSignal:r}={})=>async o=>ti(o,{maxRetries:e,delayInMs:t,backoffFactor:a,abortSignal:r});async function ti(e,{maxRetries:t,delayInMs:a,backoffFactor:r,abortSignal:o},s=[]){try{return await e()}catch(u){if(isAbortError(u)||0===t)throw u;let i=getErrorMessage4(u),n=[...s,u],l=n.length;if(l>t)throw new eN({message:`Failed after ${l} attempts. Last error: ${i}`,reason:"maxRetriesExceeded",errors:n});if(u instanceof Error&&APICallError2.isInstance(u)&&!0===u.isRetryable&&l<=t)return await delay(function({error:e,exponentialBackoffDelay:t}){let a;let r=e.responseHeaders;if(!r)return t;let o=r["retry-after-ms"];if(o){let e=parseFloat(o);Number.isNaN(e)||(a=e)}let s=r["retry-after"];if(s&&void 0===a){let e=parseFloat(s);a=Number.isNaN(e)?Date.parse(s)-Date.now():1e3*e}return null!=a&&!Number.isNaN(a)&&0<=a&&(a<6e4||a<t)?a:t}({error:u,exponentialBackoffDelay:a}),{abortSignal:o}),ti(e,{maxRetries:t,delayInMs:r*a,backoffFactor:r,abortSignal:o},n);if(1===l)throw u;throw new eN({message:`Failed after ${l} attempts with non-retryable error: '${i}'`,reason:"errorNotRetryable",errors:n})}}async function tn({toolCall:e,tools:t,tracer:a,telemetry:r,messages:o,abortSignal:s,experimental_context:i,onPreliminaryToolResult:n}){let{toolName:l,toolCallId:u,input:p}=e,d=null==t?void 0:t[l];if((null==d?void 0:d.execute)!=null)return tt({name:"ai.toolCall",attributes:tr({telemetry:r,attributes:{...function({operationId:e,telemetry:t}){return{"operation.name":`${e}${(null==t?void 0:t.functionId)!=null?` ${t.functionId}`:""}`,"resource.name":null==t?void 0:t.functionId,"ai.operationId":e,"ai.telemetry.functionId":null==t?void 0:t.functionId}}({operationId:"ai.toolCall",telemetry:r}),"ai.toolCall.name":l,"ai.toolCall.id":u,"ai.toolCall.args":{output:()=>JSON.stringify(p)}}}),tracer:a,fn:async t=>{let a;try{for await(let t of executeTool({execute:d.execute.bind(d),input:p,options:{toolCallId:u,messages:o,abortSignal:s,experimental_context:i}}))"preliminary"===t.type?null==n||n({...e,type:"tool-result",output:t.output,preliminary:!0}):a=t.output}catch(a){return ta(t,a),{type:"tool-error",toolCallId:u,toolName:l,input:p,error:a,dynamic:"dynamic"===d.type,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}}}try{t.setAttributes(await tr({telemetry:r,attributes:{"ai.toolCall.result":{output:()=>JSON.stringify(a)}}}))}catch(e){}return{type:"tool-result",toolCallId:u,toolName:l,input:p,output:a,dynamic:"dynamic"===d.type,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}}}})}var tl=class{constructor({data:e,mediaType:t}){let a=e instanceof Uint8Array;this.base64Data=a?void 0:e,this.uint8ArrayData=a?e:void 0,this.mediaType=t}get base64(){return null==this.base64Data&&(this.base64Data=(0,g.n_)(this.uint8ArrayData)),this.base64Data}get uint8Array(){return null==this.uint8ArrayData&&(this.uint8ArrayData=(0,g.Z9)(this.base64Data)),this.uint8ArrayData}};async function tu(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await (0,g.N8)({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await (0,g.N8)({text:function(e){let t=["ROOT"],a=-1,r=null;function o(e,o,s){switch(e){case'"':a=o,t.pop(),t.push(s),t.push("INSIDE_STRING");break;case"f":case"t":case"n":a=o,r=o,t.pop(),t.push(s),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(s),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":a=o,t.pop(),t.push(s),t.push("INSIDE_NUMBER");break;case"{":a=o,t.pop(),t.push(s),t.push("INSIDE_OBJECT_START");break;case"[":a=o,t.pop(),t.push(s),t.push("INSIDE_ARRAY_START")}}function s(e,r){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":a=r,t.pop()}}function i(e,r){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=r,t.pop()}}for(let n=0;n<e.length;n++){let l=e[n];switch(t[t.length-1]){case"ROOT":o(l,n,"FINISH");break;case"INSIDE_OBJECT_START":switch(l){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":a=n,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===l&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===l&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===l&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":o(l,n,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":s(l,n);break;case"INSIDE_STRING":switch(l){case'"':t.pop(),a=n;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:a=n}break;case"INSIDE_ARRAY_START":"]"===l?(a=n,t.pop()):(a=n,o(l,n,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(l){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":a=n,t.pop();break;default:a=n}break;case"INSIDE_ARRAY_AFTER_COMMA":o(l,n,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),a=n;break;case"INSIDE_NUMBER":switch(l){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":a=n;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(l,n
1);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(l,n);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n);break;default:t.pop()}break;case"INSIDE_LITERAL":{let o=e.substring(r,n+1);"false".startsWith(o)||"true".startsWith(o)||"null".startsWith(o)?a=n:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?s(l,n):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(l,n))}}}let n=e.slice(0,a+1);for(let a=t.length-1;a>=0;a--)switch(t[a]){case"INSIDE_STRING":n+='"';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":n+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":n+="]";break;case"INSIDE_LITERAL":{let t=e.substring(r,e.length);"true".startsWith(t)?n+="true".slice(t.length):"false".startsWith(t)?n+="false".slice(t.length):"null".startsWith(t)&&(n+="null".slice(t.length))}}return n}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}((e,t)=>{for(var a in t)x(e,a,{get:t[a],enumerable:!0})})({},{array:()=>tc,choice:()=>tm,json:()=>th,object:()=>td,text:()=>tp});var tp=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:e})=>e,parsePartialOutput:async({text:e})=>({partial:e}),createElementStreamTransform(){}}),td=({schema:e,name:t,description:a})=>{let r=(0,g.mD)(e);return{name:"object",responseFormat:(0,g.hd)(r.jsonSchema).then(e=>({type:"json",schema:e,...null!=t&&{name:t},...null!=a&&{description:a}})),async parseCompleteOutput({text:e},t){let a=await (0,g.N8)({text:e});if(!a.success)throw new K({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let o=await (0,g.ZZ)({value:a.value,schema:r});if(!o.success)throw new K({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return o.value},async parsePartialOutput({text:e}){let t=await tu(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:t.value}}},createElementStreamTransform(){}}},tc=({element:e,name:t,description:a})=>{let r=(0,g.mD)(e);return{name:"array",responseFormat:(0,g.hd)(r.jsonSchema).then(e=>{let{$schema:r,...o}=e;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:o}},required:["elements"],additionalProperties:!1},...null!=t&&{name:t},...null!=a&&{description:a}}}),async parseCompleteOutput({text:e},t){let a=await (0,g.N8)({text:e});if(!a.success)throw new K({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let o=a.value;if(null==o||"object"!=typeof o||!("elements"in o)||!Array.isArray(o.elements))throw new K({message:"No object generated: response did not match schema.",cause:new I.iM({value:o,cause:"response must be an object with an elements array"}),text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});for(let a of o.elements){let o=await (0,g.ZZ)({value:a,schema:r});if(!o.success)throw new K({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason})}return o.elements},async parsePartialOutput({text:e}){let t=await tu(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=t.value;if(null==e||"object"!=typeof e||!("elements"in e)||!Array.isArray(e.elements))return;let a="repaired-parse"===t.state&&e.elements.length>0?e.elements.slice(0,-1):e.elements,o=[];for(let e of a){let t=await (0,g.ZZ)({value:e,schema:r});t.success&&o.push(t.value)}return{partial:o}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},a){if(null!=t)for(;e<t.length;e++)a.enqueue(t[e])}})}}},tm=({options:e,name:t,description:a})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...null!=t&&{name:t},...null!=a&&{description:a}}),async parseCompleteOutput({text:t},a){let r=await (0,g.N8)({text:t});if(!r.success)throw new K({message:"No object generated: could not parse the response.",cause:r.error,text:t,response:a.response,usage:a.usage,finishReason:a.finishReason});let o=r.value;if(null==o||"object"!=typeof o||!("result"in o)||"string"!=typeof o.result||!e.includes(o.result))throw new K({message:"No object generated: response did not match sc
1hema.",cause:new I.iM({value:o,cause:"response must be an object that contains a choice value."}),text:t,response:a.response,usage:a.usage,finishReason:a.finishReason});return o.result},async parsePartialOutput({text:t}){let a=await tu(t);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let t=a.value;if(null==t||"object"!=typeof t||!("result"in t)||"string"!=typeof t.result)return;let r=e.filter(e=>e.startsWith(t.result));if("successful-parse"===a.state)return r.includes(t.result)?{partial:t.result}:void 0;return 1===r.length?{partial:r[0]}:void 0}}},createElementStreamTransform(){}}),th=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=e&&{name:e},...null!=t&&{description:t}}),async parseCompleteOutput({text:e},t){let a=await (0,g.N8)({text:e});if(!a.success)throw new K({message:"No object generated: could not parse the response.",cause:a.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return a.value},async parsePartialOutput({text:e}){let t=await tu(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===t.value?void 0:{partial:t.value}}},createElementStreamTransform(){}});async function tv(e){let t=""===e.input.trim()?{success:!0,value:{}}:await safeParseJSON3({text:e.input});if(!1===t.success)throw new _({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 ty({toolCall:e,tools:t}){let a=e.toolName,r=t[a];if(null==r){if(e.providerExecuted&&e.dynamic)return await tv(e);throw new eo({toolName:e.toolName,availableTools:Object.keys(t)})}let o=asSchema3(r.inputSchema),s=""===e.input.trim()?await safeValidateTypes3({value:{},schema:o}):await safeParseJSON3({text:e.input,schema:o});if(!1===s.success)throw new _({toolName:a,toolInput:e.input,cause:s.error});return"dynamic"===r.type?{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:s.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,dynamic:!0,title:r.title}:{type:"tool-call",toolCallId:e.toolCallId,toolName:a,input:s.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:r.title}}(0,g.hK)({prefix:"aitxt",size:24});function tf(e,t){let a=new Headers(null!=e?e:{});for(let[e,r]of Object.entries(t))a.has(e)||a.set(e,r);return a}TransformStream;var tg=(0,g.ID)(()=>(0,g.jN)(b.KC([b.re({type:b.eu("text-start"),id:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.eu("text-delta"),id:b.Yj(),delta:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.eu("text-end"),id:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.eu("error"),errorText:b.Yj()}),b.re({type:b.eu("tool-input-start"),toolCallId:b.Yj(),toolName:b.Yj(),providerExecuted:b.zM().optional(),providerMetadata:eK.optional(),dynamic:b.zM().optional(),title:b.Yj().optional()}),b.re({type:b.eu("tool-input-delta"),toolCallId:b.Yj(),inputTextDelta:b.Yj()}),b.re({type:b.eu("tool-input-available"),toolCallId:b.Yj(),toolName:b.Yj(),input:b.L5(),providerExecuted:b.zM().optional(),providerMetadata:eK.optional(),dynamic:b.zM().optional(),title:b.Yj().optional()}),b.re({type:b.eu("tool-input-error"),toolCallId:b.Yj(),toolName:b.Yj(),input:b.L5(),providerExecuted:b.zM().optional(),providerMetadata:eK.optional(),dynamic:b.zM().optional(),errorText:b.Yj(),title:b.Yj().optional()}),b.re({type:b.eu("tool-approval-request"),approvalId:b.Yj(),toolCallId:b.Yj()}),b.re({type:b.eu("tool-output-available"),toolCallId:b.Yj(),output:b.L5(),providerExecuted:b.zM().optional(),dynamic:b.zM().optional(),preliminary:b.zM().optional()}),b.re({type:b.eu("tool-output-error"),toolCallId:b.Yj(),errorText:b.Yj(),providerExecuted:b.zM().optional(),dynamic:b.zM().optional()}),b.re({type:b.eu("tool-output-denied"),toolCallId:b.Yj()}),b.re({type:b.eu("reasoning-start"),id:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.eu("reasoning-delta"),id:b.Yj(),delta:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.eu("reasoning-end"),id:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.eu("source-url"),sourceId:b.Yj(),url:b.Yj(),title:b.Yj().optional(),providerMetadata:eK.optional()}),b.re({type:b.eu("source-document"),sourceId:b.Yj(),mediaType:b.Yj(),title:b.Yj(),filename:b.Yj().optional(),providerMetadata:eK.optional()}),b.re({type:b.eu("file"),url:b.Yj(),mediaType:b.Yj(),providerMetadata:eK.optional()}),b.re({type:b.Ie(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:b.Yj().optional(),data:b.L5(),transient:b.zM().optional()}),b.re({type:b.eu("start-step")}),b.re({type:b.eu("finish-step")}),b.re({type:b.eu("start"),messageId:b.Yj().optional(),messageMetadata:b.L5().optional()}),b.re({type:b.eu("finish"),finishReason:b.k5(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:b.L5().optional()}),b.re({type:b.eu("abort"),reason:b.Yj().optional()}),b.re({type:b.eu("message-metadata"),messageMetadata:b.L5()})])));function tI(e){return e.type.startsWith("data-")}function tb(e){return"text"===e.type}function tE(e){return"file"===e.type}function tx(e){return"reasoning"===e.type}function tT(e){return e.type.startsWith("tool-")}function tw(e){return"dynamic-tool"===e.type}function tj(e){return tT(e)||tw(e)}function tM(e){return e.type.split("-").slice(1).join("-")}function tk(e){return tw(e)?e.toolName:tM(e)}async function tN({stream:e,onError:t}){let a=e.getReader();try{for(;;){let{done:e}=await a.read();if(e)break}}catch(e){null==t||t(e)}finally{a.releaseLock()}}function tR(){let e,t;return{promise:new Promise((a,r)=>{e=a,t=r}),resolve:e,reject:t}}(0,g.hK)({prefix:"aitxt",size:24});var tA=(0,g.ID)(()=>(0,g.jN)(b.YO(b.Ik({id:b.Yj(),role:b.k5(["system","user","assistant"]),metadata:b.L5().optional(),parts:b.YO(b.KC([b.Ik({type:b.eu("text"),text:b.Yj(),state:b.k5(["streaming","done"]).optional(),providerMetadata:eK.optional()}),b.Ik({type:b.eu("reasoning"),text:b.Yj(),state:b.k5(["streaming","done"]).optional(),providerMetadata:eK.optional()}),b.Ik({type:b.eu("source-url"),sourceId:b.Yj(),url:b.Yj(),title:b.Yj().optional(),providerMetadata:eK.optional()}),b.Ik({type:b.eu("source-document"),sourceId:b.Yj(),mediaType:b.Yj(),title:b.Yj(),filename:b.Yj().optional(),providerMetadata:eK.optional()}),b.Ik({type:b.eu("file"),mediaType:b.Yj(),filename:b.Yj().optional(),url:b.Yj(),providerMetadata:eK.optional()}),b.Ik({type:b.eu("step-start")}),b.Ik({type:b.Yj().startsWith("data-"),id:b.Yj().optional(),data:b.L5()}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("input-streaming"),input:b.L5().optional(),providerExecuted:b.zM().optional(),callProviderMetadata:eK.optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),approval:b.Zm().optional()}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("input-available"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Zm().optional()}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("approval-requested"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.Zm().optional(),reason:b.Zm().optional()})}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("approval-responded"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.zM(),reason:b.Yj().optional()})}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("output-available"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.L5(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),preliminary:b.zM().optional(),approval:b.Ik({id:b.Yj(),approved:b.eu(!0),reason:b.Yj().optional()}).optional()}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("output-error"),input:b.L5(),rawInput:b.L5().optional(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Yj(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.eu(!0),reason:b.Yj().optional()}).optional()}),b.Ik({type:b.eu("dynamic-tool"),toolName:b.Yj(),toolCallId:b.Yj(),state:b.eu("output-denied"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.eu(!1),reason:b.Yj().optional()})}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("input-streaming"),providerExecuted:b.zM().optional(),callProviderMetadata:eK.optional(),input
1:b.L5().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),approval:b.Zm().optional()}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("input-available"),providerExecuted:b.zM().optional(),input:b.L5(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Zm().optional()}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("approval-requested"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.Zm().optional(),reason:b.Zm().optional()})}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("approval-responded"),input:b.L5(),providerExecuted:b.zM().optional(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.zM(),reason:b.Yj().optional()})}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("output-available"),providerExecuted:b.zM().optional(),input:b.L5(),output:b.L5(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),preliminary:b.zM().optional(),approval:b.Ik({id:b.Yj(),approved:b.eu(!0),reason:b.Yj().optional()}).optional()}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("output-error"),providerExecuted:b.zM().optional(),input:b.L5(),rawInput:b.L5().optional(),output:b.Zm().optional(),errorText:b.Yj(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.eu(!0),reason:b.Yj().optional()}).optional()}),b.Ik({type:b.Yj().startsWith("tool-"),toolCallId:b.Yj(),state:b.eu("output-denied"),providerExecuted:b.zM().optional(),input:b.L5(),output:b.Zm().optional(),errorText:b.Zm().optional(),callProviderMetadata:eK.optional(),approval:b.Ik({id:b.Yj(),approved:b.eu(!1),reason:b.Yj().optional()})})])).nonempty("Message must contain at least one part")})).nonempty("Messages array must not be empty")));async function tS({messages:e,metadataSchema:t,dataSchemas:a,tools:r}){try{if(null==e)return{success:!1,error:new M({parameter:"messages",value:e,message:"messages parameter must be provided"})};let o=await validateTypes2({value:e,schema:tA});if(t)for(let[e,a]of o.entries())await validateTypes2({value:a.metadata,schema:t,context:{field:`messages[${e}].metadata`,entityId:a.id}});if(a||r)for(let[e,t]of o.entries())for(let[o,s]of t.parts.entries()){if(a&&s.type.startsWith("data-")){let t=s.type.slice(5),r=a[t];if(!r)return{success:!1,error:new TypeValidationError3({value:s.data,cause:`No data schema found for data part ${t}`,context:{field:`messages[${e}].parts[${o}].data`,entityName:t,entityId:s.id}})};await validateTypes2({value:s.data,schema:r,context:{field:`messages[${e}].parts[${o}].data`,entityName:t,entityId:s.id}})}if(r&&s.type.startsWith("tool-")){let t=s.type.slice(5),a=r[t];if(!a)return{success:!1,error:new TypeValidationError3({value:s.input,cause:`No tool schema found for tool part ${t}`,context:{field:`messages[${e}].parts[${o}].input`,entityName:t,entityId:s.toolCallId}})};("input-available"===s.state||"output-available"===s.state||"output-error"===s.state&&void 0!==s.input)&&await validateTypes2({value:s.input,schema:a.inputSchema,context:{field:`messages[${e}].parts[${o}].input`,entityName:t,entityId:s.toolCallId}}),"output-available"===s.state&&a.outputSchema&&await validateTypes2({value:s.output,schema:a.outputSc
1hema,context:{field:`messages[${e}].parts[${o}].output`,entityName:t,entityId:s.toolCallId}})}}return{success:!0,data:o}}catch(e){return{success:!1,error:e}}}async function tY(e,t,a){let r=await safeParseJSON4({text:e});if(!r.success)throw new K({message:"No object generated: could not parse the response.",cause:r.error,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let o=await t.validateFinalResult(r.value,{text:e,response:a.response,usage:a.usage});if(!o.success)throw new K({message:"No object generated: response did not match schema.",cause:o.error,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});return o.value}(0,g.hK)({prefix:"aiobj",size:24});var tC=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,a)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){a(e)}}),this.processQueue()})}};(0,g.hK)({prefix:"aiobj",size:24});var t_=({model:e,middleware:{transformParams:t,wrapGenerate:a,wrapStream:r,overrideProvider:o,overrideModelId:s,overrideSupportedUrls:i},modelId:n,providerId:l})=>{var u,p,d;async function c({params:a,type:r}){return t?await t({params:a,type:r,model:e}):a}return{specificationVersion:"v3",provider:null!=(u=null!=l?l:null==o?void 0:o({model:e}))?u:e.provider,modelId:null!=(p=null!=n?n:null==s?void 0:s({model:e}))?p:e.modelId,supportedUrls:null!=(d=null==i?void 0:i({model:e}))?d:e.supportedUrls,async doGenerate(t){let r=await c({params:t,type:"generate"}),o=async()=>e.doGenerate(r),s=async()=>e.doStream(r);return a?a({doGenerate:o,doStream:s,params:r,model:e}):o()},async doStream(t){let a=await c({params:t,type:"stream"}),o=async()=>e.doGenerate(a),s=async()=>e.doStream(a);return r?r({doGenerate:o,doStream:s,params:a,model:e}):s()}}},tD=({model:e,middleware:{transformParams:t,wrapGenerate:a,overrideProvider:r,overrideModelId:o,overrideMaxImagesPerCall:s},modelId:i,providerId:n})=>{var l,u,p;async function d({params:a}){return t?await t({params:a,model:e}):a}let c=null!=(l=null==s?void 0:s({model:e}))?l:e.maxImagesPerCall,m=c instanceof Function?c.bind(e):c;return{specificationVersion:"v3",provider:null!=(u=null!=n?n:null==r?void 0:r({model:e}))?u:e.provider,modelId:null!=(p=null!=i?i:null==o?void 0:o({model:e}))?p:e.modelId,maxImagesPerCall:m,async doGenerate(t){let r=await d({params:t}),o=async()=>e.doGenerate(r);return a?a({doGenerate:o,params:r,model:e}):o()}}},tO="AI_NoSuchProviderError",t$=`vercel.ai.error.${tO}`,tP=Symbol.for(t$);async function tL(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async e=>{let{name:t,type:a}=e;return{type:"file",mediaType:a,filename:t,url:await new Promise((t,a)=>{let r=new FileReader;r.onload=e=>{var a;t(null==(a=e.target)?void 0:a.result)},r.onerror=e=>a(e),r.readAsDataURL(e)})}}))}I.eM,f=tP;var tF=class{constructor({api:e="/api/chat",credentials:t,headers:a,body:r,fetch:o,prepareSendMessagesRequest:s,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=a,this.body=r,this.fetch=o,this.prepareSendMessagesRequest=s,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var a,r,o,s,i;let n=await (0,g.hd)(this.body),l=await (0,g.hd)(this.headers),u=await (0,g.hd)(this.credentials),p={...(0,g.qx)(l),...(0,g.qx)(t.headers)},d=await (null==(a=this.prepareSendMessagesRequest)?void 0:a.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...n,...t.body},headers:p,credentials:u,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),c=null!=(r=null==d?void 0:d.api)?r:this.api,m=(null==d?void 0:d.headers)!==void 0?(0,g.qx)(d.headers):p,h=(null==d?void 0:d.body)!==void 0?d.body:{...n,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},v=null!=(o=null==d?void 0:d.credentials)?o:u,y=null!=(s=this.fetch)?s:globalThis.fetch,f=await y(c,{method:"POST",headers:(0,g.WZ)({"Content-Type":"application/json",...m},`ai-sdk/${eO}`,(0,g.G1)()),body:JSON.stringify(h),credentials:v,signal:e});if(!f.ok)throw Error(null!=(i=await f.text())?i:"Failed to fetch the chat response.");if(!f.body)throw Error("The response body is empty.");return this.processResponseStream(f.body)}async reconnectToStream(e){var t,a,r,o,s;let i=await (0,g.hd)(this.body),n=await (0,g.hd)(this.headers),l=await (0,g.hd)(this.credentials),u={...(0,g.qx)(n),...(0,g.qx)(e.headers)},p=await (null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:u,credentials:l,requestMetadata:e.metadata})),d=null!=(a=null==p?void 0:p.api)?a:`${this.api}/${e.chatId}/stream`,c=(null==p?void 0:p.headers)!==void 0?(0,g.qx)(p.headers):u,m=null!=(r=null==p?void 0:p.credentials)?r:l,h=null!=(o=this.fetch)?o:globalThis.fetch,v=await h(d,{method:"GET",headers:(0,g.WZ)(c,`ai-sdk/${eO}`,(0,g.G1)()),credentials:m});if(204===v.status)return null;if(!v.ok)throw Error(null!=(s=await v.text())?s:"Failed to fetch the chat response.");if(!v.body)throw Error("The response body is empty.");return this.processResponseStream(v.body)}},tU=class extends tF{constructor(e={}){super(e)}processResponseStream(e){return(0,g._Z)({stream:e,schema:tg}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},tZ=class{constructor({generateId:e=g.$C,id:t=e(),transport:a=new tU,messageMetadataSchema:r,dataPartSchemas:o,state:s,onError:i,onToolCall:n,onFinish:l,onData:u,sendAutomaticallyWhen:p}){this.activeResponse=void 0,this.jobExecutor=new tC,this.sendMessage=async(e,t)=>{var a,r,o,s;let i;
1if(null==e){await this.makeRequest({trigger:"submit-message",messageId:null==(a=this.lastMessage)?void 0:a.id,...t});return}if(i="text"in e||"files"in e?{parts:[...Array.isArray(e.files)?e.files:await tL(e.files),..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}:e,null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw Error(`message with id ${e.messageId} not found`);if("user"!==this.state.messages[t].role)throw Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{...i,id:e.messageId,role:null!=(r=i.role)?r:"user",metadata:e.metadata})}else this.state.pushMessage({...i,id:null!=(o=i.id)?o:this.generateId(),role:null!=(s=i.role)?s:"user",metadata:e.metadata});await this.makeRequest({trigger:"submit-message",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let a=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===a)throw Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[a].role?a:a+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:a})=>this.jobExecutor.run(async()=>{let r=this.state.messages,o=r[r.length-1],s=r=>tj(r)&&"approval-requested"===r.state&&r.approval.id===e?{...r,state:"approval-responded",approval:{id:e,approved:t,reason:a}}:r;this.state.replaceMessage(r.length-1,{...o,parts:o.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&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id})})}),this.addToolOutput=async({state:e="output-available",tool:t,toolCallId:a,output:r,errorText:o})=>this.jobExecutor.run(async()=>{let t=this.state.messages,s=t[t.length-1],i=t=>tj(t)&&t.toolCallId===a?{...t,state:e,output:r,errorText:o}:t;this.state.replaceMessage(t.length-1,{...s,parts:s.parts.map(i)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(i)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e;("streaming"===this.status||"submitted"===this.status)&&(null==(e=this.activeResponse)?void 0:e.abortController)&&this.activeResponse.abortController.abort()},this.id=t,this.transport=a,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=o,this.state=s,this.onError=i,this.onToolCall=n,this.onFinish=l,this.onData=u,this.sendAutomaticallyWhen=p}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(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 makeRequest({trigger:e,metadata:t,headers:a,body:r,messageId:o}){var s,i,n;this.setStatus({status:"submitted",error:void 0});let l=this.lastMessage,u=!1,p=!1,d=!1;try{let s;let i={state:function({lastMessage:e,messageId:t}){return{message:(null==e?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};if(i.abortController.signal.addEventListener("abort",()=>{u=!0}
1),this.activeResponse=i,"resume-stream"===e){let e=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:a,body:r});if(null==e){this.setStatus({status:"ready"});return}s=e}else s=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:i.abortController.signal,metadata:t,headers:a,body:r,trigger:e,messageId:o});await tN({stream:function({stream:e,messageMetadataSchema:t,dataPartSchemas:a,runUpdateMessageJob:r,onError:o,onToolCall:s,onData:i}){return e.pipeThrough(new TransformStream({async transform(e,n){await r(async({state:r,write:l})=>{var u,p,d,c;function m(e){let t=r.message.parts.filter(tj).find(t=>t.toolCallId===e);if(null==t)throw new em({chunkType:"tool-invocation",chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function h(e){var t;let a=r.message.parts.find(t=>tT(t)&&t.toolCallId===e.toolCallId);null!=a?(a.state=e.state,a.input=e.input,a.output=e.output,a.errorText=e.errorText,a.rawInput=e.rawInput,a.preliminary=e.preliminary,void 0!==e.title&&(a.title=e.title),a.providerExecuted=null!=(t=e.providerExecuted)?t:a.providerExecuted,null!=e.providerMetadata&&(a.callProviderMetadata=e.providerMetadata)):r.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary,...null!=e.providerMetadata?{callProviderMetadata:e.providerMetadata}:{}})}function v(e){var t,a;let o=r.message.parts.find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);null!=o?(o.state=e.state,o.toolName=e.toolName,o.input=e.input,o.output=e.output,o.errorText=e.errorText,o.rawInput=null!=(t=e.rawInput)?t:o.rawInput,o.preliminary=e.preliminary,void 0!==e.title&&(o.title=e.title),o.providerExecuted=null!=(a=e.providerExecuted)?a:o.providerExecuted,null!=e.providerMetadata&&(o.callProviderMetadata=e.providerMetadata)):r.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,...null!=e.providerMetadata?{callProviderMetadata:e.providerMetadata}:{}})}async function y(e){if(null!=e){let a=null!=r.message.metadata?function e(t,a){if(void 0===t&&void 0===a)return;if(void 0===t)return a;
1if(void 0===a)return t;let r={...t};for(let o in a)if(Object.prototype.hasOwnProperty.call(a,o)){let s=a[o];if(void 0===s)continue;let i=o in t?t[o]:void 0,n=null!==s&&"object"==typeof s&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp),l=null!=i&&"object"==typeof i&&!Array.isArray(i)&&!(i instanceof Date)&&!(i instanceof RegExp);n&&l?r[o]=e(i,s):r[o]=s}return r}(r.message.metadata,e):e;null!=t&&await (0,g.k5)({value:a,schema:t,context:{field:"message.metadata",entityId:r.message.id}}),r.message.metadata=a}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};r.activeTextParts[e.id]=t,r.message.parts.push(t),l();break}case"text-delta":{let t=r.activeTextParts[e.id];if(null==t)throw new em({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=null!=(u=e.providerMetadata)?u:t.providerMetadata,l();break}case"text-end":{let t=r.activeTextParts[e.id];if(null==t)throw new em({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=null!=(p=e.providerMetadata)?p:t.providerMetadata,delete r.activeTextParts[e.id],l();break}case"reasoning-start":{let t={type:"reasoning",text:"",providerMetadata:e.providerMetadata,state:"streaming"};r.activeReasoningParts[e.id]=t,r.message.parts.push(t),l();break}case"reasoning-delta":{let t=r.activeReasoningParts[e.id];if(null==t)throw new em({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=null!=(d=e.providerMetadata)?d:t.providerMetadata,l();break}case"reasoning-end":{let t=r.activeReasoningParts[e.id];if(null==t)throw new em({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=null!=(c=e.providerMetadata)?c:t.providerMetadata,t.state="done",delete r.activeReasoningParts[e.id],l();break}case"file":r.message.parts.push({type:"file",mediaType:e.mediaType,url:e.url}),l();break;case"source-url":r.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),l();break;case"source-document":r.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),l();break;case"tool-input-start":{let t=r.message.parts.filter(tT);r.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title},e.dynamic?v({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,providerMetadata:e.providerMetadata}):h({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,providerMetadata:e.providerMetadata}),l();break}case"tool-input-delta":{let t=r.partialToolCalls[e.toolCallId];if(null==t)throw new em({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:a}=await tu(t.text);t.dynamic?v({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title}):h({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:a,title:t.title}),l();break}case"tool-input-available":e.dynamic?v({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title}):h({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title}),l(),s&&!e.providerExecuted&&await s({toolCall:e});break;case"tool-input-error":e.dynamic?v({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):h({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),l();break;case"tool-approval-request":{let t=m(e.toolCallId);t.state="approval-requested",t.approval={id:e.approvalId},l();break}case"tool-output-denied":m(e.toolCallId).state="output-denied",l();break;case"tool-output-available":{let t=m(e.toolCallId);"dynamic-tool"===t.type?v({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:t.title}):h({toolCallId:e.toolCallId,toolName:tM(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,title:t.title}),l();break}case"tool-output-error":{let t=m(e.toolCallId);"dynamic-tool"===t.type?v({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,title:t.title}):h({toolCallId:e.toolCallId,toolName:tM(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,title:t.title}),l();break}case"start-step":r.message.parts.push({type:"step-start"});break;case"finish-step":r.activeTextParts={},r.activeReasoningParts={};break;case"start":null!=e.messageId&&(r.message.id=e.messageId),await y(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&l();break;
1case"finish":null!=e.finishReason&&(r.finishReason=e.finishReason),await y(e.messageMetadata),null!=e.messageMetadata&&l();break;case"message-metadata":await y(e.messageMetadata),null!=e.messageMetadata&&l();break;case"error":null==o||o(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if((null==a?void 0:a[e.type])!=null){let t=r.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),o=t>=0?t:r.message.parts.length;await (0,g.k5)({value:e.data,schema:a[e.type],context:{field:`message.parts[${o}].data`,entityName:e.type,entityId:e.id}})}if(e.transient){null==i||i(e);break}let t=null!=e.id?r.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:r.message.parts.push(e),null==i||i(e),l()}}n.enqueue(e)})}}))}({stream:s,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:e=>this.jobExecutor.run(()=>e({state:i.state,write:()=>{var e;this.setStatus({status:"streaming"}),i.state.message.id===(null==(e=this.lastMessage)?void 0:e.id)?this.state.replaceMessage(this.state.messages.length-1,i.state.message):this.state.pushMessage(i.state.message)}})),onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:"ready"})}catch(e){if(u||"AbortError"===e.name)return u=!0,this.setStatus({status:"ready"}),null;d=!0,e instanceof TypeError&&(e.message.toLowerCase().includes("fetch")||e.message.toLowerCase().includes("network"))&&(p=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{null==(i=this.onFinish)||i.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:u,isDisconnect:p,isError:d,finishReason:null==(s=this.activeResponse)?void 0:s.state.finishReason})}catch(e){console.error(e)}this.activeResponse=void 0}!d&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(n=this.lastMessage)?void 0:n.id,metadata:t,headers:a,body:r})}}}}]);
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.