blink 1.1.39 → 1.1.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import{__commonJSMin as e,__esmMin as t,__export as n,__reExport as r,__require as i,__toCommonJS as a,__toESM as o}from"../chunk-D9KrCrVq.js";import{APICallError as s,APIServerURLEnvironmentVariable as c,Agent as l,EmptyResponseBodyError as u,EventSourceParserStream as d,Hono as f,InvalidArgumentError as p,InvalidPromptError as m,InvalidResponseDataError as h,JSONParseError as g,LoadAPIKeyError as _,NoSuchModelError as v,StreamResponseFormatHeader as y,TooManyEmbeddingValuesForCallError as b,TypeValidationError as x,UnsupportedFunctionalityError as S,createGatewayProvider as C,createServerAdapter as w,hc as T,isToolApprovalOutput as E,lastUIOptions as D,tools as O,validator as ee}from"../index.node-B1vVJ49J.js";import"../token-error-488npYdU.js";import"../esm-CSXsVdYr.js";import"../context-Ch5QyxHM.js";import{resolveConfig as k}from"../build-DBcSkHHH.js";import{createRequire as A}from"node:module";import j,{z as M}from"zod/v4";import{ZodFirstPartyTypeKind as te}from"zod/v3";import{Buffer as N}from"node:buffer";import*as P from"node:fs";import F,{existsSync as I,mkdirSync as ne,readFileSync as re,unlinkSync as ie,writeFileSync as ae}from"node:fs";import{fileURLToPath as oe}from"node:url";import{Writable as se}from"node:stream";import{promisify as ce,stripVTControlCharacters as le}from"node:util";import{createHash as ue}from"node:crypto";import de,{createServer as fe}from"http";import{dirname as pe,join as me}from"path";import{existsSync as L,mkdirSync as he,readFileSync as ge,watch as _e,writeFileSync as ve}from"fs";import{convertToModelMessages as ye,isToolOrDynamicToolUIPart as be,readUIMessageStream as xe,streamText as Se,tool as Ce}from"ai";import{readFile as we,stat as Te,writeFile as Ee}from"fs/promises";import{spawn as De}from"child_process";import{createContext as Oe,useCallback as R,useEffect as z,useMemo as ke,useRef as B,useState as V}from"react";import H,{z as U}from"zod";import*as W from"node:path";import Ae,{dirname as je,join as Me}from"node:path";import G,{stdin as Ne,stdout as Pe}from"node:process";import*as Fe from"node:readline";import Ie from"node:readline";import Le from"node:os";import Re from"node:tty";import ze,{execFile as Be}from"node:child_process";import Ve,{constants as He}from"node:fs/promises";import"@blink-sdk/compute-protocol/client";import{createInMemoryClientServer as Ue}from"@blink-sdk/compute-protocol/transport";function We(...e){return e.reduce((e,t)=>({...e,...t??{}}),{})}function Ge(e){return Object.fromEntries([...e.headers])}function Ke(e=globalThis){return e.window?`runtime/browser`:e.navigator?.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:e.process?.versions?.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?`runtime/vercel-edge`:`runtime/unknown`}function qe(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null))}function Je(e,...t){let n=qe(e??{}),r=new Headers(n),i=r.get(`user-agent`)||``;return r.set(`user-agent`,[i,...t].filter(Boolean).join(` `)),Object.fromEntries(r)}var Ye=(({prefix:e,size:t=16,alphabet:n=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`,separator:r=`-`}={})=>{let i=()=>{let e=n.length,r=Array(t);for(let i=0;i<t;i++)r[i]=n[Math.random()*e|0];return r.join(``)};if(e==null)return i;if(n.includes(r))throw new p({argument:`separator`,message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${i()}`})();function Xe(e){return(e instanceof Error||e instanceof DOMException)&&(e.name===`AbortError`||e.name===`ResponseAborted`||e.name===`TimeoutError`)}var Ze=[`fetch failed`,`failed to fetch`];function Qe({error:e,url:t,requestBodyValues:n}){if(Xe(e))return e;if(e instanceof TypeError&&Ze.includes(e.message.toLowerCase())){let r=e.cause;if(r!=null)return new s({message:`Cannot connect to API: ${r.message}`,cause:r,url:t,requestBodyValues:n,isRetryable:!0})}return e}var $e=`3.0.10`;function et({apiKey:e,environmentVariableName:t,apiKeyParameterName:n=`apiKey`,description:r}){if(typeof e==`string`)return e;if(e!=null)throw new _({message:`${r} API key must be a string.`});if(typeof process>`u`)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter. Environment variables is not supported in this environment.`});if(e=process.env[t],e==null)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter or the ${t} environment variable.`});if(typeof e!=`string`)throw new _({message:`${r} API key must be a string. The value of the ${t} environment variable is not a string.`});return e}var tt=/"__proto__"\s*:/,nt=/"constructor"\s*:/;function rt(e){let t=JSON.parse(e);return typeof t!=`object`||!t||tt.test(e)===!1&&nt.test(e)===!1?t:it(t)}function it(e){let t=[e];for(;t.length;){let e=t;t=[];for(let n of e){if(Object.prototype.hasOwnProperty.call(n,`__proto__`)||Object.prototype.hasOwnProperty.call(n,`constructor`)&&Object.prototype.hasOwnProperty.call(n.constructor,`prototype`))throw SyntaxError(`Object contains forbidden prototype property`);for(let e in n){let r=n[e];r&&typeof r==`object`&&t.push(r)}}}return e}function at(e){let{stackTraceLimit:t}=Error;Error.stackTraceLimit=0;try{return rt(e)}finally{Error.stackTraceLimit=t}}var ot=Symbol.for(`vercel.ai.validator`);function st(e){return{[ot]:!0,validate:e}}function ct(e){return typeof e==`object`&&!!e&&ot in e&&e[ot]===!0&&`validate`in e}function lt(e){return ct(e)?e:ut(e)}function ut(e){return st(async t=>{let n=await e[`~standard`].validate(t);return n.issues==null?{success:!0,value:n.value}:{success:!1,error:new x({value:t,cause:n.issues})}})}async function dt({value:e,schema:t}){let n=await ft({value:e,schema:t});if(!n.success)throw x.wrap({value:e,cause:n.error});return n.value}async function ft({value:e,schema:t}){let n=lt(t);try{if(n.validate==null)return{success:!0,value:e,rawValue:e};let t=await n.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:x.wrap({value:e,cause:t.error}),rawValue:e}}catch(t){return{success:!1,error:x.wrap({value:e,cause:t}),rawValue:e}}}async function pt({text:e,schema:t}){try{let n=at(e);return t==null?n:dt({value:n,schema:t})}catch(t){throw g.isInstance(t)||x.isInstance(t)?t:new g({text:e,cause:t})}}async function mt({text:e,schema:t}){try{let n=at(e);return t==null?{success:!0,value:n,rawValue:n}:await ft({value:n,schema:t})}catch(t){return{success:!1,error:g.isInstance(t)?t:new g({text:e,cause:t}),rawValue:void 0}}}function ht({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new d).pipeThrough(new TransformStream({async transform({data:e},n){e!==`[DONE]`&&n.enqueue(await mt({text:e,schema:t}))}}))}async function gt({provider:e,providerOptions:t,schema:n}){if(t?.[e]==null)return;let r=await ft({value:t[e],schema:n});if(!r.success)throw new p({argument:`providerOptions`,message:`invalid ${e} provider options`,cause:r.error});return r.value}var _t=()=>globalThis.fetch,vt=async({url:e,headers:t,body:n,failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o})=>yt({url:e,headers:{"Content-Type":`application/json`,...t},body:{content:JSON.stringify(n),values:n},failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o}),yt=async({url:e,headers:t={},body:n,successfulResponseHandler:r,failedResponseHandler:i,abortSignal:a,fetch:o=_t()})=>{try{let c=await o(e,{method:`POST`,headers:Je(t,`ai-sdk/provider-utils/${$e}`,Ke()),body:n.content,signal:a}),l=Ge(c);if(!c.ok){let t;try{t=await i({response:c,url:e,requestBodyValues:n.values})}catch(t){throw Xe(t)||s.isInstance(t)?t:new s({message:`Failed to process error response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}throw t.value}try{return await r({response:c,url:e,requestBodyValues:n.values})}catch(t){throw t instanceof Error&&(Xe(t)||s.isInstance(t))?t:new s({message:`Failed to process successful response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}}catch(t){throw Qe({error:t,url:e,requestBodyValues:n.values})}};function bt(e){return e}function xt({id:e,name:t,inputSchema:n}){return({execute:r,outputSchema:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>bt({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:i,execute:r,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}function St({id:e,name:t,inputSchema:n,outputSchema:r}){return({execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>bt({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:r,execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}async function Ct(e){return typeof e==`function`&&(e=e()),Promise.resolve(e)}var wt=({errorSchema:e,errorToMessage:t,isRetryable:n})=>async({response:r,url:i,requestBodyValues:a})=>{let o=await r.text(),c=Ge(r);if(o.trim()===``)return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})};try{let l=await pt({text:o,schema:e});return{responseHeaders:c,value:new s({message:t(l),url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,data:l,isRetryable:n?.(r,l)})}}catch{return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})}}},Tt=e=>async({response:t})=>{let n=Ge(t);if(t.body==null)throw new u({});return{responseHeaders:n,value:ht({stream:t.body,schema:e})}},Et=e=>async({response:t,url:n,requestBodyValues:r})=>{let i=await t.text(),a=await mt({text:i,schema:e}),o=Ge(t);if(!a.success)throw new s({message:`Invalid JSON response`,cause:a.error,statusCode:t.status,responseHeaders:o,responseBody:i,url:n,requestBodyValues:r});return{responseHeaders:o,value:a.value,rawValue:a.rawValue}},{btoa:Dt,atob:Ot}=globalThis;function kt(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCodePoint(e[n]);return Dt(t)}function At(e){return e instanceof Uint8Array?kt(e):e}function jt(e){return e?.replace(/\/$/,``)}var Mt=`2.0.23`,Nt=M.object({type:M.literal(`error`),error:M.object({type:M.string(),message:M.string()})}),Pt=wt({errorSchema:Nt,errorToMessage:e=>e.error.message}),Ft=M.object({citations:M.object({enabled:M.boolean()}).optional(),title:M.string().optional(),context:M.string().optional()}),It=M.object({sendReasoning:M.boolean().optional(),thinking:M.object({type:M.union([M.literal(`enabled`),M.literal(`disabled`)]),budgetTokens:M.number().optional()}).optional(),disableParallelToolUse:M.boolean().optional(),cacheControl:M.object({type:M.literal(`ephemeral`),ttl:M.union([M.literal(`5m`),M.literal(`1h`)]).optional()}).optional()});function Lt(e){let t=e?.anthropic;return t?.cacheControl??t?.cache_control}var Rt=M.object({maxCharacters:M.number().optional()}),zt=xt({id:`anthropic.text_editor_20250728`,name:`str_replace_based_edit_tool`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),Bt=(e={})=>zt(e),Vt=M.object({maxUses:M.number().optional(),allowedDomains:M.array(M.string()).optional(),blockedDomains:M.array(M.string()).optional(),userLocation:M.object({type:M.literal(`approximate`),city:M.string().optional(),region:M.string().optional(),country:M.string().optional(),timezone:M.string().optional()}).optional()}),Ht=M.array(M.object({url:M.string(),title:M.string(),pageAge:M.string().nullable(),encryptedContent:M.string(),type:M.literal(`web_search_result`)})),Ut=St({id:`anthropic.web_search_20250305`,name:`web_search`,inputSchema:M.object({query:M.string()}),outputSchema:Ht}),Wt=(e={})=>Ut(e),Gt=M.object({maxUses:M.number().optional(),allowedDomains:M.array(M.string()).optional(),blockedDomains:M.array(M.string()).optional(),citations:M.object({enabled:M.boolean()}).optional(),maxContentTokens:M.number().optional()}),Kt=M.object({type:M.literal(`web_fetch_result`),url:M.string(),content:M.object({type:M.literal(`document`),title:M.string(),citations:M.object({enabled:M.boolean()}).optional(),source:M.union([M.object({type:M.literal(`base64`),mediaType:M.literal(`application/pdf`),data:M.string()}),M.object({type:M.literal(`text`),mediaType:M.literal(`text/plain`),data:M.string()})])}),retrievedAt:M.string().nullable()}),qt=St({id:`anthropic.web_fetch_20250910`,name:`web_fetch`,inputSchema:M.object({url:M.string()}),outputSchema:Kt}),Jt=(e={})=>qt(e);function Yt({tools:e,toolChoice:t,disableParallelToolUse:n}){e=e?.length?e:void 0;let r=[],i=new Set;if(e==null)return{tools:void 0,toolChoice:void 0,toolWarnings:r,betas:i};let a=[];for(let t of e)switch(t.type){case`function`:{let e=Lt(t.providerOptions);a.push({name:t.name,description:t.description,input_schema:t.inputSchema,cache_control:e});break}case`provider-defined`:switch(t.id){case`anthropic.code_execution_20250522`:i.add(`code-execution-2025-05-22`),a.push({type:`code_execution_20250522`,name:`code_execution`});break;case`anthropic.computer_20250124`:i.add(`computer-use-2025-01-24`),a.push({name:`computer`,type:`computer_20250124`,display_width_px:t.args.displayWidthPx,display_height_px:t.args.displayHeightPx,display_number:t.args.displayNumber});break;case`anthropic.computer_20241022`:i.add(`computer-use-2024-10-22`),a.push({name:`computer`,type:`computer_20241022`,display_width_px:t.args.displayWidthPx,display_height_px:t.args.displayHeightPx,display_number:t.args.displayNumber});break;case`anthropic.text_editor_20250124`:i.add(`computer-use-2025-01-24`),a.push({name:`str_replace_editor`,type:`text_editor_20250124`});break;case`anthropic.text_editor_20241022`:i.add(`computer-use-2024-10-22`),a.push({name:`str_replace_editor`,type:`text_editor_20241022`});break;case`anthropic.text_editor_20250429`:i.add(`computer-use-2025-01-24`),a.push({name:`str_replace_based_edit_tool`,type:`text_editor_20250429`});break;case`anthropic.text_editor_20250728`:{let e=Rt.parse(t.args);a.push({name:`str_replace_based_edit_tool`,type:`text_editor_20250728`,max_characters:e.maxCharacters});break}case`anthropic.bash_20250124`:i.add(`computer-use-2025-01-24`),a.push({name:`bash`,type:`bash_20250124`});break;case`anthropic.bash_20241022`:i.add(`computer-use-2024-10-22`),a.push({name:`bash`,type:`bash_20241022`});break;case`anthropic.web_fetch_20250910`:{i.add(`web-fetch-2025-09-10`);let e=Gt.parse(t.args);a.push({type:`web_fetch_20250910`,name:`web_fetch`,max_uses:e.maxUses,allowed_domains:e.allowedDomains,blocked_domains:e.blockedDomains,citations:e.citations,max_content_tokens:e.maxContentTokens});break}case`anthropic.web_search_20250305`:{let e=Vt.parse(t.args);a.push({type:`web_search_20250305`,name:`web_search`,max_uses:e.maxUses,allowed_domains:e.allowedDomains,blocked_domains:e.blockedDomains,user_location:e.userLocation});break}default:r.push({type:`unsupported-tool`,tool:t});break}break;default:r.push({type:`unsupported-tool`,tool:t});break}if(t==null)return{tools:a,toolChoice:n?{type:`auto`,disable_parallel_tool_use:n}:void 0,toolWarnings:r,betas:i};let o=t.type;switch(o){case`auto`:return{tools:a,toolChoice:{type:`auto`,disable_parallel_tool_use:n},toolWarnings:r,betas:i};case`required`:return{tools:a,toolChoice:{type:`any`,disable_parallel_tool_use:n},toolWarnings:r,betas:i};case`none`:return{tools:void 0,toolChoice:void 0,toolWarnings:r,betas:i};case`tool`:return{tools:a,toolChoice:{type:`tool`,name:t.toolName,disable_parallel_tool_use:n},toolWarnings:r,betas:i};default:throw new S({functionality:`tool choice type: ${o}`})}}var Xt=M.object({type:M.literal(`code_execution_result`),stdout:M.string(),stderr:M.string(),return_code:M.number()}),Zt=St({id:`anthropic.code_execution_20250522`,name:`code_execution`,inputSchema:M.object({code:M.string()}),outputSchema:Xt}),Qt=(e={})=>Zt(e);function $t(e){if(typeof e==`string`)return Buffer.from(e,`base64`).toString(`utf-8`);if(e instanceof Uint8Array)return new TextDecoder().decode(e);throw e instanceof URL?new S({functionality:`URL-based text documents are not supported for citations`}):new S({functionality:`unsupported data type for text documents: ${typeof e}`})}async function en({prompt:e,sendReasoning:t,warnings:n}){let r=new Set,i=tn(e),a,o=[];async function s(e){return(await gt({provider:`anthropic`,providerOptions:e,schema:Ft}))?.citations?.enabled??!1}async function c(e){let t=await gt({provider:`anthropic`,providerOptions:e,schema:Ft});return{title:t?.title,context:t?.context}}for(let e=0;e<i.length;e++){let l=i[e],u=e===i.length-1,d=l.type;switch(d){case`system`:if(a!=null)throw new S({functionality:`Multiple system messages that are separated by user/assistant messages`});a=l.messages.map(({content:e,providerOptions:t})=>({type:`text`,text:e,cache_control:Lt(t)}));break;case`user`:{let e=[];for(let t of l.messages){let{role:n,content:i}=t;switch(n){case`user`:for(let n=0;n<i.length;n++){let a=i[n],o=n===i.length-1,l=Lt(a.providerOptions)??(o?Lt(t.providerOptions):void 0);switch(a.type){case`text`:e.push({type:`text`,text:a.text,cache_control:l});break;case`file`:if(a.mediaType.startsWith(`image/`))e.push({type:`image`,source:a.data instanceof URL?{type:`url`,url:a.data.toString()}:{type:`base64`,media_type:a.mediaType===`image/*`?`image/jpeg`:a.mediaType,data:At(a.data)},cache_control:l});else if(a.mediaType===`application/pdf`){r.add(`pdfs-2024-09-25`);let t=await s(a.providerOptions),n=await c(a.providerOptions);e.push({type:`document`,source:a.data instanceof URL?{type:`url`,url:a.data.toString()}:{type:`base64`,media_type:`application/pdf`,data:At(a.data)},title:n.title??a.filename,...n.context&&{context:n.context},...t&&{citations:{enabled:!0}},cache_control:l})}else if(a.mediaType===`text/plain`){let t=await s(a.providerOptions),n=await c(a.providerOptions);e.push({type:`document`,source:a.data instanceof URL?{type:`url`,url:a.data.toString()}:{type:`text`,media_type:`text/plain`,data:$t(a.data)},title:n.title??a.filename,...n.context&&{context:n.context},...t&&{citations:{enabled:!0}},cache_control:l})}else throw new S({functionality:`media type: ${a.mediaType}`});break}}break;case`tool`:for(let n=0;n<i.length;n++){let r=i[n],a=n===i.length-1,o=Lt(r.providerOptions)??(a?Lt(t.providerOptions):void 0),s=r.output,c;switch(s.type){case`content`:c=s.value.map(e=>{switch(e.type){case`text`:return{type:`text`,text:e.text,cache_control:void 0};case`media`:if(e.mediaType.startsWith(`image/`))return{type:`image`,source:{type:`base64`,media_type:e.mediaType,data:e.data},cache_control:void 0};throw new S({functionality:`media type: ${e.mediaType}`})}});break;case`text`:case`error-text`:c=s.value;break;case`json`:case`error-json`:default:c=JSON.stringify(s.value);break}e.push({type:`tool_result`,tool_use_id:r.toolCallId,content:c,is_error:s.type===`error-text`||s.type===`error-json`?!0:void 0,cache_control:o})}break;default:{let e=n;throw Error(`Unsupported role: ${e}`)}}}o.push({role:`user`,content:e});break}case`assistant`:{let e=[];for(let r=0;r<l.messages.length;r++){let i=l.messages[r],a=r===l.messages.length-1,{content:o}=i;for(let r=0;r<o.length;r++){let s=o[r],c=r===o.length-1,l=Lt(s.providerOptions)??(c?Lt(i.providerOptions):void 0);switch(s.type){case`text`:e.push({type:`text`,text:u&&a&&c?s.text.trim():s.text,cache_control:l});break;case`reasoning`:if(t){let t=await gt({provider:`anthropic`,providerOptions:s.providerOptions,schema:dn});t==null?n.push({type:`other`,message:`unsupported reasoning metadata`}):t.signature==null?t.redactedData==null?n.push({type:`other`,message:`unsupported reasoning metadata`}):e.push({type:`redacted_thinking`,data:t.redactedData,cache_control:l}):e.push({type:`thinking`,thinking:s.text,signature:t.signature,cache_control:l})}else n.push({type:`other`,message:`sending reasoning content is disabled for this model`});break;case`tool-call`:if(s.providerExecuted){s.toolName===`code_execution`||s.toolName===`web_fetch`||s.toolName===`web_search`?e.push({type:`server_tool_use`,id:s.toolCallId,name:s.toolName,input:s.input,cache_control:l}):n.push({type:`other`,message:`provider executed tool call for tool ${s.toolName} is not supported`});break}e.push({type:`tool_use`,id:s.toolCallId,name:s.toolName,input:s.input,cache_control:l});break;case`tool-result`:if(s.toolName===`code_execution`){let t=s.output;if(t.type!==`json`){n.push({type:`other`,message:`provider executed tool result output type ${t.type} for tool ${s.toolName} is not supported`});break}let r=Xt.parse(t.value);e.push({type:`code_execution_tool_result`,tool_use_id:s.toolCallId,content:{type:r.type,stdout:r.stdout,stderr:r.stderr,return_code:r.return_code},cache_control:l});break}if(s.toolName===`web_fetch`){let t=s.output;if(t.type!==`json`){n.push({type:`other`,message:`provider executed tool result output type ${t.type} for tool ${s.toolName} is not supported`});break}let r=Kt.parse(t.value);e.push({type:`web_fetch_tool_result`,tool_use_id:s.toolCallId,content:{type:`web_fetch_result`,url:r.url,retrieved_at:r.retrievedAt,content:{type:`document`,title:r.content.title,citations:r.content.citations,source:{type:r.content.source.type,media_type:r.content.source.mediaType,data:r.content.source.data}}},cache_control:l});break}if(s.toolName===`web_search`){let t=s.output;if(t.type!==`json`){n.push({type:`other`,message:`provider executed tool result output type ${t.type} for tool ${s.toolName} is not supported`});break}let r=Ht.parse(t.value);e.push({type:`web_search_tool_result`,tool_use_id:s.toolCallId,content:r.map(e=>({url:e.url,title:e.title,page_age:e.pageAge,encrypted_content:e.encryptedContent,type:e.type})),cache_control:l});break}n.push({type:`other`,message:`provider executed tool result for tool ${s.toolName} is not supported`});break}}}o.push({role:`assistant`,content:e});break}default:{let e=d;throw Error(`content type: ${e}`)}}}return{prompt:{system:a,messages:o},betas:r}}function tn(e){let t=[],n;for(let r of e){let{role:e}=r;switch(e){case`system`:n?.type!==`system`&&(n={type:`system`,messages:[]},t.push(n)),n.messages.push(r);break;case`assistant`:n?.type!==`assistant`&&(n={type:`assistant`,messages:[]},t.push(n)),n.messages.push(r);break;case`user`:n?.type!==`user`&&(n={type:`user`,messages:[]},t.push(n)),n.messages.push(r);break;case`tool`:n?.type!==`user`&&(n={type:`user`,messages:[]},t.push(n)),n.messages.push(r);break;default:{let t=e;throw Error(`Unsupported role: ${t}`)}}}return t}function nn({finishReason:e,isJsonResponseFromTool:t}){switch(e){case`pause_turn`:case`end_turn`:case`stop_sequence`:return`stop`;case`refusal`:return`content-filter`;case`tool_use`:return t?`stop`:`tool-calls`;case`max_tokens`:return`length`;default:return`unknown`}}var rn={webSearchResult:M.object({type:M.literal(`web_search_result_location`),cited_text:M.string(),url:M.string(),title:M.string(),encrypted_index:M.string()}),pageLocation:M.object({type:M.literal(`page_location`),cited_text:M.string(),document_index:M.number(),document_title:M.string().nullable(),start_page_number:M.number(),end_page_number:M.number()}),charLocation:M.object({type:M.literal(`char_location`),cited_text:M.string(),document_index:M.number(),document_title:M.string().nullable(),start_char_index:M.number(),end_char_index:M.number()})},an=M.discriminatedUnion(`type`,[rn.webSearchResult,rn.pageLocation,rn.charLocation]);M.discriminatedUnion(`type`,[rn.pageLocation,rn.charLocation]);function on(e,t,n,r){if(e.type===`page_location`||e.type===`char_location`){let i=sn(e,t,n);i&&r(i)}}function sn(e,t,n){let r=t[e.document_index];if(!r)return null;let i=e.type===`page_location`?{citedText:e.cited_text,startPageNumber:e.start_page_number,endPageNumber:e.end_page_number}:{citedText:e.cited_text,startCharIndex:e.start_char_index,endCharIndex:e.end_char_index};return{type:`source`,sourceType:`document`,id:n(),mediaType:r.mediaType,title:e.document_title??r.title,filename:r.filename,providerMetadata:{anthropic:i}}}var cn=class{constructor(e,t){this.specificationVersion=`v2`,this.modelId=e,this.config=t,this.generateId=t.generateId??Ye}supportsUrl(e){return e.protocol===`https:`}get provider(){return this.config.provider}get supportedUrls(){var e;return(e=this.config).supportedUrls?.call(e)??{}}async getArgs({prompt:e,maxOutputTokens:t=4096,temperature:n,topP:r,topK:i,frequencyPenalty:a,presencePenalty:o,stopSequences:s,responseFormat:c,seed:l,tools:u,toolChoice:d,providerOptions:f}){let p=[];a!=null&&p.push({type:`unsupported-setting`,setting:`frequencyPenalty`}),o!=null&&p.push({type:`unsupported-setting`,setting:`presencePenalty`}),l!=null&&p.push({type:`unsupported-setting`,setting:`seed`}),c?.type===`json`&&(c.schema==null?p.push({type:`unsupported-setting`,setting:`responseFormat`,details:`JSON response format requires a schema. The response format is ignored.`}):u!=null&&p.push({type:`unsupported-setting`,setting:`tools`,details:`JSON response format does not support tools. The provided tools are ignored.`}));let m=c?.type===`json`&&c.schema!=null?{type:`function`,name:`json`,description:`Respond with a JSON object.`,inputSchema:c.schema}:void 0,h=await gt({provider:`anthropic`,providerOptions:f,schema:It}),{prompt:g,betas:_}=await en({prompt:e,sendReasoning:h?.sendReasoning??!0,warnings:p}),v=h?.thinking?.type===`enabled`,y=h?.thinking?.budgetTokens,b={model:this.modelId,max_tokens:t,temperature:n,top_k:i,top_p:r,stop_sequences:s,...v&&{thinking:{type:`enabled`,budget_tokens:y}},system:g.system,messages:g.messages};if(v){if(y==null)throw new S({functionality:`thinking requires a budget`});b.temperature!=null&&(b.temperature=void 0,p.push({type:`unsupported-setting`,setting:`temperature`,details:`temperature is not supported when thinking is enabled`})),i!=null&&(b.top_k=void 0,p.push({type:`unsupported-setting`,setting:`topK`,details:`topK is not supported when thinking is enabled`})),r!=null&&(b.top_p=void 0,p.push({type:`unsupported-setting`,setting:`topP`,details:`topP is not supported when thinking is enabled`})),b.max_tokens=t+y}let{tools:x,toolChoice:C,toolWarnings:w,betas:T}=Yt(m==null?{tools:u??[],toolChoice:d,disableParallelToolUse:h?.disableParallelToolUse}:{tools:[m],toolChoice:{type:`tool`,toolName:m.name},disableParallelToolUse:!0});return{args:{...b,tools:x,tool_choice:C},warnings:[...p,...w],betas:new Set([..._,...T]),usesJsonResponseTool:m!=null}}async getHeaders({betas:e,headers:t}){return We(await Ct(this.config.headers),e.size>0?{"anthropic-beta":Array.from(e).join(`,`)}:{},t)}buildRequestUrl(e){var t;return(t=this.config).buildRequestUrl?.call(t,this.config.baseURL,e)??`${this.config.baseURL}/messages`}transformRequestBody(e){var t;return(t=this.config).transformRequestBody?.call(t,e)??e}extractCitationDocuments(e){return e.filter(e=>e.role===`user`).flatMap(e=>e.content).filter(e=>e.type!==`file`||e.mediaType!==`application/pdf`&&e.mediaType!==`text/plain`?!1:e.providerOptions?.anthropic?.citations?.enabled??!1).map(e=>{let t=e;return{title:t.filename??`Untitled Document`,filename:t.filename,mediaType:t.mediaType}})}async doGenerate(e){let{args:t,warnings:n,betas:r,usesJsonResponseTool:i}=await this.getArgs(e),a=this.extractCitationDocuments(e.prompt),{responseHeaders:o,value:s,rawValue:c}=await vt({url:this.buildRequestUrl(!1),headers:await this.getHeaders({betas:r,headers:e.headers}),body:this.transformRequestBody(t),failedResponseHandler:Pt,successfulResponseHandler:Et(ln),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=[];for(let e of s.content)switch(e.type){case`text`:if(!i&&(l.push({type:`text`,text:e.text}),e.citations))for(let t of e.citations)on(t,a,this.generateId,e=>l.push(e));break;case`thinking`:l.push({type:`reasoning`,text:e.thinking,providerMetadata:{anthropic:{signature:e.signature}}});break;case`redacted_thinking`:l.push({type:`reasoning`,text:``,providerMetadata:{anthropic:{redactedData:e.data}}});break;case`tool_use`:l.push(i?{type:`text`,text:JSON.stringify(e.input)}:{type:`tool-call`,toolCallId:e.id,toolName:e.name,input:JSON.stringify(e.input)});break;case`server_tool_use`:(e.name===`web_search`||e.name===`code_execution`||e.name===`web_fetch`)&&l.push({type:`tool-call`,toolCallId:e.id,toolName:e.name,input:JSON.stringify(e.input),providerExecuted:!0});break;case`web_fetch_tool_result`:e.content.type===`web_fetch_result`?l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,result:{type:`web_fetch_result`,url:e.content.url,retrievedAt:e.content.retrieved_at,content:{type:e.content.content.type,title:e.content.content.title,citations:e.content.content.citations,source:{type:e.content.content.source.type,mediaType:e.content.content.source.media_type,data:e.content.content.source.data}}},providerExecuted:!0}):e.content.type===`web_fetch_tool_result_error`&&l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,isError:!0,result:{type:`web_fetch_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});break;case`web_search_tool_result`:if(Array.isArray(e.content)){l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,result:e.content.map(e=>({url:e.url,title:e.title,pageAge:e.page_age??null,encryptedContent:e.encrypted_content,type:e.type})),providerExecuted:!0});for(let t of e.content)l.push({type:`source`,sourceType:`url`,id:this.generateId(),url:t.url,title:t.title,providerMetadata:{anthropic:{pageAge:t.page_age??null}}})}else l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,isError:!0,result:{type:`web_search_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});break;case`code_execution_tool_result`:e.content.type===`code_execution_result`?l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,result:{type:e.content.type,stdout:e.content.stdout,stderr:e.content.stderr,return_code:e.content.return_code},providerExecuted:!0}):e.content.type===`code_execution_tool_result_error`&&l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,isError:!0,result:{type:`code_execution_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});break}return{content:l,finishReason:nn({finishReason:s.stop_reason,isJsonResponseFromTool:i}),usage:{inputTokens:s.usage.input_tokens,outputTokens:s.usage.output_tokens,totalTokens:s.usage.input_tokens+s.usage.output_tokens,cachedInputTokens:s.usage.cache_read_input_tokens??void 0},request:{body:t},response:{id:s.id??void 0,modelId:s.model??void 0,headers:o,body:c},warnings:n,providerMetadata:{anthropic:{usage:s.usage,cacheCreationInputTokens:s.usage.cache_creation_input_tokens??null,stopSequence:s.stop_sequence??null}}}}async doStream(e){let{args:t,warnings:n,betas:r,usesJsonResponseTool:i}=await this.getArgs(e),a=this.extractCitationDocuments(e.prompt),o={...t,stream:!0},{responseHeaders:s,value:c}=await vt({url:this.buildRequestUrl(!0),headers:await this.getHeaders({betas:r,headers:e.headers}),body:this.transformRequestBody(o),failedResponseHandler:Pt,successfulResponseHandler:Tt(un),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=`unknown`,u={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0},d={},f,p=null,m=null,h,g=this.generateId;return{stream:c.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:n})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){n.enqueue({type:`error`,error:t.error});return}let r=t.value;switch(r.type){case`ping`:return;case`content_block_start`:{let e=r.content_block.type;switch(h=e,e){case`text`:d[r.index]={type:`text`},n.enqueue({type:`text-start`,id:String(r.index)});return;case`thinking`:d[r.index]={type:`reasoning`},n.enqueue({type:`reasoning-start`,id:String(r.index)});return;case`redacted_thinking`:d[r.index]={type:`reasoning`},n.enqueue({type:`reasoning-start`,id:String(r.index),providerMetadata:{anthropic:{redactedData:r.content_block.data}}});return;case`tool_use`:d[r.index]=i?{type:`text`}:{type:`tool-call`,toolCallId:r.content_block.id,toolName:r.content_block.name,input:``},n.enqueue(i?{type:`text-start`,id:String(r.index)}:{type:`tool-input-start`,id:r.content_block.id,toolName:r.content_block.name});return;case`server_tool_use`:(r.content_block.name===`web_fetch`||r.content_block.name===`web_search`||r.content_block.name===`code_execution`)&&(d[r.index]={type:`tool-call`,toolCallId:r.content_block.id,toolName:r.content_block.name,input:``,providerExecuted:!0},n.enqueue({type:`tool-input-start`,id:r.content_block.id,toolName:r.content_block.name,providerExecuted:!0}));return;case`web_fetch_tool_result`:{let e=r.content_block;e.content.type===`web_fetch_result`?n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,result:{type:`web_fetch_result`,url:e.content.url,retrievedAt:e.content.retrieved_at,content:{type:e.content.content.type,title:e.content.content.title,citations:e.content.content.citations,source:{type:e.content.content.source.type,mediaType:e.content.content.source.media_type,data:e.content.content.source.data}}}}):e.content.type===`web_fetch_tool_result_error`&&n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,isError:!0,result:{type:`web_fetch_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});return}case`web_search_tool_result`:{let e=r.content_block;if(Array.isArray(e.content)){n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,result:e.content.map(e=>({url:e.url,title:e.title,pageAge:e.page_age??null,encryptedContent:e.encrypted_content,type:e.type})),providerExecuted:!0});for(let t of e.content)n.enqueue({type:`source`,sourceType:`url`,id:g(),url:t.url,title:t.title,providerMetadata:{anthropic:{pageAge:t.page_age??null}}})}else n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,isError:!0,result:{type:`web_search_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});return}case`code_execution_tool_result`:{let e=r.content_block;e.content.type===`code_execution_result`?n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,result:{type:e.content.type,stdout:e.content.stdout,stderr:e.content.stderr,return_code:e.content.return_code},providerExecuted:!0}):e.content.type===`code_execution_tool_result_error`&&n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,isError:!0,result:{type:`code_execution_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});return}default:{let t=e;throw Error(`Unsupported content block type: ${t}`)}}}case`content_block_stop`:if(d[r.index]!=null){let e=d[r.index];switch(e.type){case`text`:n.enqueue({type:`text-end`,id:String(r.index)});break;case`reasoning`:n.enqueue({type:`reasoning-end`,id:String(r.index)});break;case`tool-call`:i||(n.enqueue({type:`tool-input-end`,id:e.toolCallId}),n.enqueue(e));break}delete d[r.index]}h=void 0;return;case`content_block_delta`:{let e=r.delta.type;switch(e){case`text_delta`:if(i)return;n.enqueue({type:`text-delta`,id:String(r.index),delta:r.delta.text});return;case`thinking_delta`:n.enqueue({type:`reasoning-delta`,id:String(r.index),delta:r.delta.thinking});return;case`signature_delta`:h===`thinking`&&n.enqueue({type:`reasoning-delta`,id:String(r.index),delta:``,providerMetadata:{anthropic:{signature:r.delta.signature}}});return;case`input_json_delta`:{let e=d[r.index],t=r.delta.partial_json;if(i){if(e?.type!==`text`)return;n.enqueue({type:`text-delta`,id:String(r.index),delta:t})}else{if(e?.type!==`tool-call`)return;n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:t}),e.input+=t}return}case`citations_delta`:{let e=r.delta.citation;on(e,a,g,e=>n.enqueue(e));return}default:{let t=e;throw Error(`Unsupported delta type: ${t}`)}}}case`message_start`:u.inputTokens=r.message.usage.input_tokens,u.cachedInputTokens=r.message.usage.cache_read_input_tokens??void 0,f={...r.message.usage},p=r.message.usage.cache_creation_input_tokens??null,n.enqueue({type:`response-metadata`,id:r.message.id??void 0,modelId:r.message.model??void 0});return;case`message_delta`:u.outputTokens=r.usage.output_tokens,u.totalTokens=(u.inputTokens??0)+(r.usage.output_tokens??0),l=nn({finishReason:r.delta.stop_reason,isJsonResponseFromTool:i}),m=r.delta.stop_sequence??null,f={...f,...r.usage};return;case`message_stop`:n.enqueue({type:`finish`,finishReason:l,usage:u,providerMetadata:{anthropic:{usage:f??null,cacheCreationInputTokens:p,stopSequence:m}}});return;case`error`:n.enqueue({type:`error`,error:r.error});return;default:{let e=r;throw Error(`Unsupported chunk type: ${e}`)}}}})),request:{body:o},response:{headers:s}}}},ln=M.object({type:M.literal(`message`),id:M.string().nullish(),model:M.string().nullish(),content:M.array(M.discriminatedUnion(`type`,[M.object({type:M.literal(`text`),text:M.string(),citations:M.array(an).optional()}),M.object({type:M.literal(`thinking`),thinking:M.string(),signature:M.string()}),M.object({type:M.literal(`redacted_thinking`),data:M.string()}),M.object({type:M.literal(`tool_use`),id:M.string(),name:M.string(),input:M.unknown()}),M.object({type:M.literal(`server_tool_use`),id:M.string(),name:M.string(),input:M.record(M.string(),M.unknown()).nullish()}),M.object({type:M.literal(`web_fetch_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`web_fetch_result`),url:M.string(),retrieved_at:M.string(),content:M.object({type:M.literal(`document`),title:M.string().nullable(),citations:M.object({enabled:M.boolean()}).optional(),source:M.object({type:M.literal(`text`),media_type:M.string(),data:M.string()})})}),M.object({type:M.literal(`web_fetch_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`web_search_tool_result`),tool_use_id:M.string(),content:M.union([M.array(M.object({type:M.literal(`web_search_result`),url:M.string(),title:M.string(),encrypted_content:M.string(),page_age:M.string().nullish()})),M.object({type:M.literal(`web_search_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`code_execution_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`code_execution_result`),stdout:M.string(),stderr:M.string(),return_code:M.number()}),M.object({type:M.literal(`code_execution_tool_result_error`),error_code:M.string()})])})])),stop_reason:M.string().nullish(),stop_sequence:M.string().nullish(),usage:M.looseObject({input_tokens:M.number(),output_tokens:M.number(),cache_creation_input_tokens:M.number().nullish(),cache_read_input_tokens:M.number().nullish()})}),un=M.discriminatedUnion(`type`,[M.object({type:M.literal(`message_start`),message:M.object({id:M.string().nullish(),model:M.string().nullish(),usage:M.looseObject({input_tokens:M.number(),cache_creation_input_tokens:M.number().nullish(),cache_read_input_tokens:M.number().nullish()})})}),M.object({type:M.literal(`content_block_start`),index:M.number(),content_block:M.discriminatedUnion(`type`,[M.object({type:M.literal(`text`),text:M.string()}),M.object({type:M.literal(`thinking`),thinking:M.string()}),M.object({type:M.literal(`tool_use`),id:M.string(),name:M.string()}),M.object({type:M.literal(`redacted_thinking`),data:M.string()}),M.object({type:M.literal(`server_tool_use`),id:M.string(),name:M.string(),input:M.record(M.string(),M.unknown()).nullish()}),M.object({type:M.literal(`web_fetch_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`web_fetch_result`),url:M.string(),retrieved_at:M.string(),content:M.object({type:M.literal(`document`),title:M.string().nullable(),citations:M.object({enabled:M.boolean()}).optional(),source:M.object({type:M.literal(`text`),media_type:M.string(),data:M.string()})})}),M.object({type:M.literal(`web_fetch_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`web_search_tool_result`),tool_use_id:M.string(),content:M.union([M.array(M.object({type:M.literal(`web_search_result`),url:M.string(),title:M.string(),encrypted_content:M.string(),page_age:M.string().nullish()})),M.object({type:M.literal(`web_search_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`code_execution_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`code_execution_result`),stdout:M.string(),stderr:M.string(),return_code:M.number()}),M.object({type:M.literal(`code_execution_tool_result_error`),error_code:M.string()})])})])}),M.object({type:M.literal(`content_block_delta`),index:M.number(),delta:M.discriminatedUnion(`type`,[M.object({type:M.literal(`input_json_delta`),partial_json:M.string()}),M.object({type:M.literal(`text_delta`),text:M.string()}),M.object({type:M.literal(`thinking_delta`),thinking:M.string()}),M.object({type:M.literal(`signature_delta`),signature:M.string()}),M.object({type:M.literal(`citations_delta`),citation:an})])}),M.object({type:M.literal(`content_block_stop`),index:M.number()}),M.object({type:M.literal(`error`),error:M.object({type:M.string(),message:M.string()})}),M.object({type:M.literal(`message_delta`),delta:M.object({stop_reason:M.string().nullish(),stop_sequence:M.string().nullish()}),usage:M.looseObject({output_tokens:M.number(),cache_creation_input_tokens:M.number().nullish()})}),M.object({type:M.literal(`message_stop`)}),M.object({type:M.literal(`ping`)})]),dn=M.object({signature:M.string().optional(),redactedData:M.string().optional()}),fn=xt({id:`anthropic.bash_20241022`,name:`bash`,inputSchema:j.object({command:j.string(),restart:j.boolean().optional()})}),pn=xt({id:`anthropic.bash_20250124`,name:`bash`,inputSchema:j.object({command:j.string(),restart:j.boolean().optional()})}),mn=xt({id:`anthropic.computer_20241022`,name:`computer`,inputSchema:M.object({action:M.enum([`key`,`type`,`mouse_move`,`left_click`,`left_click_drag`,`right_click`,`middle_click`,`double_click`,`screenshot`,`cursor_position`]),coordinate:M.array(M.number().int()).optional(),text:M.string().optional()})}),hn=xt({id:`anthropic.computer_20250124`,name:`computer`,inputSchema:M.object({action:M.enum([`key`,`hold_key`,`type`,`cursor_position`,`mouse_move`,`left_mouse_down`,`left_mouse_up`,`left_click`,`left_click_drag`,`right_click`,`middle_click`,`double_click`,`triple_click`,`scroll`,`wait`,`screenshot`]),coordinate:M.tuple([M.number().int(),M.number().int()]).optional(),duration:M.number().optional(),scroll_amount:M.number().optional(),scroll_direction:M.enum([`up`,`down`,`left`,`right`]).optional(),start_coordinate:M.tuple([M.number().int(),M.number().int()]).optional(),text:M.string().optional()})}),gn=xt({id:`anthropic.text_editor_20241022`,name:`str_replace_editor`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`,`undo_edit`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),_n=xt({id:`anthropic.text_editor_20250124`,name:`str_replace_editor`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`,`undo_edit`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),vn=xt({id:`anthropic.text_editor_20250429`,name:`str_replace_based_edit_tool`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),yn={bash_20241022:fn,bash_20250124:pn,codeExecution_20250522:Qt,computer_20241022:mn,computer_20250124:hn,textEditor_20241022:gn,textEditor_20250124:_n,textEditor_20250429:vn,textEditor_20250728:Bt,webFetch_20250910:Jt,webSearch_20250305:Wt};function bn(e={}){let t=jt(e.baseURL)??`https://api.anthropic.com/v1`,n=()=>Je({"anthropic-version":`2023-06-01`,"x-api-key":et({apiKey:e.apiKey,environmentVariableName:`ANTHROPIC_API_KEY`,description:`Anthropic`}),...e.headers},`ai-sdk/anthropic/${Mt}`),r=r=>new cn(r,{provider:`anthropic.messages`,baseURL:t,headers:n,fetch:e.fetch,generateId:e.generateId??Ye,supportedUrls:()=>({"image/*":[/^https?:\/\/.*$/]})}),i=function(e){if(new.target)throw Error(`The Anthropic model function cannot be called with the new keyword.`);return r(e)};return i.languageModel=r,i.chat=r,i.messages=r,i.textEmbeddingModel=e=>{throw new v({modelId:e,modelType:`textEmbeddingModel`})},i.imageModel=e=>{throw new v({modelId:e,modelType:`imageModel`})},i.tools=yn,i}bn();function xn(...e){return e.reduce((e,t)=>({...e,...t??{}}),{})}function Sn(e){return Object.fromEntries([...e.headers])}function Cn(e=globalThis){return e.window?`runtime/browser`:e.navigator?.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:e.process?.versions?.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?`runtime/vercel-edge`:`runtime/unknown`}function wn(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null))}function Tn(e,...t){let n=wn(e??{}),r=new Headers(n),i=r.get(`user-agent`)||``;return r.set(`user-agent`,[i,...t].filter(Boolean).join(` `)),Object.fromEntries(r)}var En=(({prefix:e,size:t=16,alphabet:n=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`,separator:r=`-`}={})=>{let i=()=>{let e=n.length,r=Array(t);for(let i=0;i<t;i++)r[i]=n[Math.random()*e|0];return r.join(``)};if(e==null)return i;if(n.includes(r))throw new p({argument:`separator`,message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${i()}`})();function Dn(e){return(e instanceof Error||e instanceof DOMException)&&(e.name===`AbortError`||e.name===`ResponseAborted`||e.name===`TimeoutError`)}var On=[`fetch failed`,`failed to fetch`];function kn({error:e,url:t,requestBodyValues:n}){if(Dn(e))return e;if(e instanceof TypeError&&On.includes(e.message.toLowerCase())){let r=e.cause;if(r!=null)return new s({message:`Cannot connect to API: ${r.message}`,cause:r,url:t,requestBodyValues:n,isRetryable:!0})}return e}var An=`3.0.10`;function jn({apiKey:e,environmentVariableName:t,apiKeyParameterName:n=`apiKey`,description:r}){if(typeof e==`string`)return e;if(e!=null)throw new _({message:`${r} API key must be a string.`});if(typeof process>`u`)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter. Environment variables is not supported in this environment.`});if(e=process.env[t],e==null)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter or the ${t} environment variable.`});if(typeof e!=`string`)throw new _({message:`${r} API key must be a string. The value of the ${t} environment variable is not a string.`});return e}var Mn=/"__proto__"\s*:/,Nn=/"constructor"\s*:/;function Pn(e){let t=JSON.parse(e);return typeof t!=`object`||!t||Mn.test(e)===!1&&Nn.test(e)===!1?t:Fn(t)}function Fn(e){let t=[e];for(;t.length;){let e=t;t=[];for(let n of e){if(Object.prototype.hasOwnProperty.call(n,`__proto__`)||Object.prototype.hasOwnProperty.call(n,`constructor`)&&Object.prototype.hasOwnProperty.call(n.constructor,`prototype`))throw SyntaxError(`Object contains forbidden prototype property`);for(let e in n){let r=n[e];r&&typeof r==`object`&&t.push(r)}}}return e}function In(e){let{stackTraceLimit:t}=Error;Error.stackTraceLimit=0;try{return Pn(e)}finally{Error.stackTraceLimit=t}}var Ln=Symbol.for(`vercel.ai.validator`);function Rn(e){return{[Ln]:!0,validate:e}}function zn(e){return typeof e==`object`&&!!e&&Ln in e&&e[Ln]===!0&&`validate`in e}function Bn(e){return zn(e)?e:Vn(e)}function Vn(e){return Rn(async t=>{let n=await e[`~standard`].validate(t);return n.issues==null?{success:!0,value:n.value}:{success:!1,error:new x({value:t,cause:n.issues})}})}async function Hn({value:e,schema:t}){let n=await Un({value:e,schema:t});if(!n.success)throw x.wrap({value:e,cause:n.error});return n.value}async function Un({value:e,schema:t}){let n=Bn(t);try{if(n.validate==null)return{success:!0,value:e,rawValue:e};let t=await n.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:x.wrap({value:e,cause:t.error}),rawValue:e}}catch(t){return{success:!1,error:x.wrap({value:e,cause:t}),rawValue:e}}}async function Wn({text:e,schema:t}){try{let n=In(e);return t==null?n:Hn({value:n,schema:t})}catch(t){throw g.isInstance(t)||x.isInstance(t)?t:new g({text:e,cause:t})}}async function Gn({text:e,schema:t}){try{let n=In(e);return t==null?{success:!0,value:n,rawValue:n}:await Un({value:n,schema:t})}catch(t){return{success:!1,error:g.isInstance(t)?t:new g({text:e,cause:t}),rawValue:void 0}}}function Kn({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new d).pipeThrough(new TransformStream({async transform({data:e},n){e!==`[DONE]`&&n.enqueue(await Gn({text:e,schema:t}))}}))}async function qn({provider:e,providerOptions:t,schema:n}){if(t?.[e]==null)return;let r=await Un({value:t[e],schema:n});if(!r.success)throw new p({argument:`providerOptions`,message:`invalid ${e} provider options`,cause:r.error});return r.value}var Jn=()=>globalThis.fetch,Yn=async({url:e,headers:t,body:n,failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o})=>Xn({url:e,headers:{"Content-Type":`application/json`,...t},body:{content:JSON.stringify(n),values:n},failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o}),Xn=async({url:e,headers:t={},body:n,successfulResponseHandler:r,failedResponseHandler:i,abortSignal:a,fetch:o=Jn()})=>{try{let c=await o(e,{method:`POST`,headers:Tn(t,`ai-sdk/provider-utils/${An}`,Cn()),body:n.content,signal:a}),l=Sn(c);if(!c.ok){let t;try{t=await i({response:c,url:e,requestBodyValues:n.values})}catch(t){throw Dn(t)||s.isInstance(t)?t:new s({message:`Failed to process error response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}throw t.value}try{return await r({response:c,url:e,requestBodyValues:n.values})}catch(t){throw t instanceof Error&&(Dn(t)||s.isInstance(t))?t:new s({message:`Failed to process successful response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}}catch(t){throw kn({error:t,url:e,requestBodyValues:n.values})}};function Zn(e){return e}function Qn({id:e,name:t,inputSchema:n}){return({execute:r,outputSchema:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>Zn({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:i,execute:r,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}function $n({id:e,name:t,inputSchema:n,outputSchema:r}){return({execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>Zn({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:r,execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}async function er(e){return typeof e==`function`&&(e=e()),Promise.resolve(e)}var tr=({errorSchema:e,errorToMessage:t,isRetryable:n})=>async({response:r,url:i,requestBodyValues:a})=>{let o=await r.text(),c=Sn(r);if(o.trim()===``)return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})};try{let l=await Wn({text:o,schema:e});return{responseHeaders:c,value:new s({message:t(l),url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,data:l,isRetryable:n?.(r,l)})}}catch{return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})}}},nr=e=>async({response:t})=>{let n=Sn(t);if(t.body==null)throw new u({});return{responseHeaders:n,value:Kn({stream:t.body,schema:e})}},rr=e=>async({response:t,url:n,requestBodyValues:r})=>{let i=await t.text(),a=await Gn({text:i,schema:e}),o=Sn(t);if(!a.success)throw new s({message:`Invalid JSON response`,cause:a.error,statusCode:t.status,responseHeaders:o,responseBody:i,url:n,requestBodyValues:r});return{responseHeaders:o,value:a.value,rawValue:a.rawValue}},{btoa:ir,atob:ar}=globalThis;function or(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCodePoint(e[n]);return ir(t)}function sr(e){return e instanceof Uint8Array?or(e):e}function cr(e){return e?.replace(/\/$/,``)}var lr=`2.0.17`,ur=M.object({error:M.object({code:M.number().nullable(),message:M.string(),status:M.string()})}),dr=tr({errorSchema:ur,errorToMessage:e=>e.error.message}),fr=M.object({outputDimensionality:M.number().optional(),taskType:M.enum([`SEMANTIC_SIMILARITY`,`CLASSIFICATION`,`CLUSTERING`,`RETRIEVAL_DOCUMENT`,`RETRIEVAL_QUERY`,`QUESTION_ANSWERING`,`FACT_VERIFICATION`,`CODE_RETRIEVAL_QUERY`]).optional()}),pr=class{constructor(e,t){this.specificationVersion=`v2`,this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0,this.modelId=e,this.config=t}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:n,providerOptions:r}){let i=await qn({provider:`google`,providerOptions:r,schema:fr});if(e.length>this.maxEmbeddingsPerCall)throw new b({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:e});let a=xn(await er(this.config.headers),t);if(e.length===1){let{responseHeaders:t,value:r,rawValue:o}=await Yn({url:`${this.config.baseURL}/models/${this.modelId}:embedContent`,headers:a,body:{model:`models/${this.modelId}`,content:{parts:[{text:e[0]}]},outputDimensionality:i?.outputDimensionality,taskType:i?.taskType},failedResponseHandler:dr,successfulResponseHandler:rr(hr),abortSignal:n,fetch:this.config.fetch});return{embeddings:[r.embedding.values],usage:void 0,response:{headers:t,body:o}}}let{responseHeaders:o,value:s,rawValue:c}=await Yn({url:`${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,headers:a,body:{requests:e.map(e=>({model:`models/${this.modelId}`,content:{role:`user`,parts:[{text:e}]},outputDimensionality:i?.outputDimensionality,taskType:i?.taskType}))},failedResponseHandler:dr,successfulResponseHandler:rr(mr),abortSignal:n,fetch:this.config.fetch});return{embeddings:s.embeddings.map(e=>e.values),usage:void 0,response:{headers:o,body:c}}}},mr=M.object({embeddings:M.array(M.object({values:M.array(M.number())}))}),hr=M.object({embedding:M.object({values:M.array(M.number())})});function gr(e){if(e==null||_r(e))return;if(typeof e==`boolean`)return{type:`boolean`,properties:{}};let{type:t,description:n,required:r,properties:i,items:a,allOf:o,anyOf:s,oneOf:c,format:l,const:u,minLength:d,enum:f}=e,p={};if(n&&(p.description=n),r&&(p.required=r),l&&(p.format=l),u!==void 0&&(p.enum=[u]),t&&(Array.isArray(t)?t.includes(`null`)?(p.type=t.filter(e=>e!==`null`)[0],p.nullable=!0):p.type=t:t===`null`?p.type=`null`:p.type=t),f!==void 0&&(p.enum=f),i!=null&&(p.properties=Object.entries(i).reduce((e,[t,n])=>(e[t]=gr(n),e),{})),a&&(p.items=Array.isArray(a)?a.map(gr):gr(a)),o&&(p.allOf=o.map(gr)),s)if(s.some(e=>typeof e==`object`&&e?.type===`null`)){let e=s.filter(e=>!(typeof e==`object`&&e?.type===`null`));if(e.length===1){let t=gr(e[0]);typeof t==`object`&&(p.nullable=!0,Object.assign(p,t))}else p.anyOf=e.map(gr),p.nullable=!0}else p.anyOf=s.map(gr);return c&&(p.oneOf=c.map(gr)),d!==void 0&&(p.minLength=d),p}function _r(e){return typeof e==`object`&&!!e&&e.type===`object`&&(e.properties==null||Object.keys(e.properties).length===0)&&!e.additionalProperties}function vr(e,t){let n=[],r=[],i=!0,a=t?.isGemmaModel??!1;for(let{role:t,content:a}of e)switch(t){case`system`:if(!i)throw new S({functionality:`system messages are only supported at the beginning of the conversation`});n.push({text:a});break;case`user`:{i=!1;let e=[];for(let t of a)switch(t.type){case`text`:e.push({text:t.text});break;case`file`:{let n=t.mediaType===`image/*`?`image/jpeg`:t.mediaType;e.push(t.data instanceof URL?{fileData:{mimeType:n,fileUri:t.data.toString()}}:{inlineData:{mimeType:n,data:sr(t.data)}});break}}r.push({role:`user`,parts:e});break}case`assistant`:i=!1,r.push({role:`model`,parts:a.map(e=>{switch(e.type){case`text`:return e.text.length===0?void 0:{text:e.text,thoughtSignature:e.providerOptions?.google?.thoughtSignature};case`reasoning`:return e.text.length===0?void 0:{text:e.text,thought:!0,thoughtSignature:e.providerOptions?.google?.thoughtSignature};case`file`:if(e.mediaType!==`image/png`)throw new S({functionality:`Only PNG images are supported in assistant messages`});if(e.data instanceof URL)throw new S({functionality:`File data URLs in assistant messages are not supported`});return{inlineData:{mimeType:e.mediaType,data:sr(e.data)}};case`tool-call`:return{functionCall:{name:e.toolName,args:e.input},thoughtSignature:e.providerOptions?.google?.thoughtSignature}}}).filter(e=>e!==void 0)});break;case`tool`:{i=!1;let e=[];for(let t of a){let n=t.output;if(n.type===`content`)for(let r of n.value)switch(r.type){case`text`:e.push({functionResponse:{name:t.toolName,response:{name:t.toolName,content:r.text}}});break;case`media`:e.push({inlineData:{mimeType:r.mediaType,data:r.data}},{text:`Tool executed successfully and returned this image as a response`});break;default:e.push({text:JSON.stringify(r)});break}else e.push({functionResponse:{name:t.toolName,response:{name:t.toolName,content:n.value}}})}r.push({role:`user`,parts:e});break}}if(a&&n.length>0&&r.length>0&&r[0].role===`user`){let e=n.map(e=>e.text).join(`
1
+ import{__commonJSMin as e,__esmMin as t,__export as n,__reExport as r,__require as i,__toCommonJS as a,__toESM as o}from"../chunk-D9KrCrVq.js";import{APICallError as s,APIServerURLEnvironmentVariable as c,Agent as l,EmptyResponseBodyError as u,EventSourceParserStream as d,Hono as f,InvalidArgumentError as p,InvalidPromptError as m,InvalidResponseDataError as h,JSONParseError as g,LoadAPIKeyError as _,NoSuchModelError as v,StreamResponseFormatHeader as y,TooManyEmbeddingValuesForCallError as b,TypeValidationError as x,UnsupportedFunctionalityError as S,createGatewayProvider as C,createServerAdapter as w,hc as T,isToolApprovalOutput as E,lastUIOptions as D,tools as O,validator as ee}from"../index.node--S8bRadX.js";import"../token-error-488npYdU.js";import"../esm-CSXsVdYr.js";import"../context-Ch5QyxHM.js";import{resolveConfig as k}from"../build-DBcSkHHH.js";import{createRequire as A}from"node:module";import j,{z as M}from"zod/v4";import{ZodFirstPartyTypeKind as te}from"zod/v3";import{Buffer as N}from"node:buffer";import*as P from"node:fs";import F,{existsSync as I,mkdirSync as ne,readFileSync as re,unlinkSync as ie,writeFileSync as ae}from"node:fs";import{fileURLToPath as oe}from"node:url";import{Writable as se}from"node:stream";import{promisify as ce,stripVTControlCharacters as le}from"node:util";import{createHash as ue}from"node:crypto";import de,{createServer as fe}from"http";import{dirname as pe,join as me}from"path";import{existsSync as L,mkdirSync as he,readFileSync as ge,watch as _e,writeFileSync as ve}from"fs";import{convertToModelMessages as ye,isToolOrDynamicToolUIPart as be,readUIMessageStream as xe,streamText as Se,tool as Ce}from"ai";import{readFile as we,stat as Te,writeFile as Ee}from"fs/promises";import{spawn as De}from"child_process";import{createContext as Oe,useCallback as R,useEffect as z,useMemo as ke,useRef as B,useState as V}from"react";import H,{z as U}from"zod";import*as W from"node:path";import Ae,{dirname as je,join as Me}from"node:path";import G,{stdin as Ne,stdout as Pe}from"node:process";import*as Fe from"node:readline";import Ie from"node:readline";import Le from"node:os";import Re from"node:tty";import ze,{execFile as Be}from"node:child_process";import Ve,{constants as He}from"node:fs/promises";import"@blink-sdk/compute-protocol/client";import{createInMemoryClientServer as Ue}from"@blink-sdk/compute-protocol/transport";function We(...e){return e.reduce((e,t)=>({...e,...t??{}}),{})}function Ge(e){return Object.fromEntries([...e.headers])}function Ke(e=globalThis){return e.window?`runtime/browser`:e.navigator?.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:e.process?.versions?.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?`runtime/vercel-edge`:`runtime/unknown`}function qe(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null))}function Je(e,...t){let n=qe(e??{}),r=new Headers(n),i=r.get(`user-agent`)||``;return r.set(`user-agent`,[i,...t].filter(Boolean).join(` `)),Object.fromEntries(r)}var Ye=(({prefix:e,size:t=16,alphabet:n=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`,separator:r=`-`}={})=>{let i=()=>{let e=n.length,r=Array(t);for(let i=0;i<t;i++)r[i]=n[Math.random()*e|0];return r.join(``)};if(e==null)return i;if(n.includes(r))throw new p({argument:`separator`,message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${i()}`})();function Xe(e){return(e instanceof Error||e instanceof DOMException)&&(e.name===`AbortError`||e.name===`ResponseAborted`||e.name===`TimeoutError`)}var Ze=[`fetch failed`,`failed to fetch`];function Qe({error:e,url:t,requestBodyValues:n}){if(Xe(e))return e;if(e instanceof TypeError&&Ze.includes(e.message.toLowerCase())){let r=e.cause;if(r!=null)return new s({message:`Cannot connect to API: ${r.message}`,cause:r,url:t,requestBodyValues:n,isRetryable:!0})}return e}var $e=`3.0.10`;function et({apiKey:e,environmentVariableName:t,apiKeyParameterName:n=`apiKey`,description:r}){if(typeof e==`string`)return e;if(e!=null)throw new _({message:`${r} API key must be a string.`});if(typeof process>`u`)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter. Environment variables is not supported in this environment.`});if(e=process.env[t],e==null)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter or the ${t} environment variable.`});if(typeof e!=`string`)throw new _({message:`${r} API key must be a string. The value of the ${t} environment variable is not a string.`});return e}var tt=/"__proto__"\s*:/,nt=/"constructor"\s*:/;function rt(e){let t=JSON.parse(e);return typeof t!=`object`||!t||tt.test(e)===!1&&nt.test(e)===!1?t:it(t)}function it(e){let t=[e];for(;t.length;){let e=t;t=[];for(let n of e){if(Object.prototype.hasOwnProperty.call(n,`__proto__`)||Object.prototype.hasOwnProperty.call(n,`constructor`)&&Object.prototype.hasOwnProperty.call(n.constructor,`prototype`))throw SyntaxError(`Object contains forbidden prototype property`);for(let e in n){let r=n[e];r&&typeof r==`object`&&t.push(r)}}}return e}function at(e){let{stackTraceLimit:t}=Error;Error.stackTraceLimit=0;try{return rt(e)}finally{Error.stackTraceLimit=t}}var ot=Symbol.for(`vercel.ai.validator`);function st(e){return{[ot]:!0,validate:e}}function ct(e){return typeof e==`object`&&!!e&&ot in e&&e[ot]===!0&&`validate`in e}function lt(e){return ct(e)?e:ut(e)}function ut(e){return st(async t=>{let n=await e[`~standard`].validate(t);return n.issues==null?{success:!0,value:n.value}:{success:!1,error:new x({value:t,cause:n.issues})}})}async function dt({value:e,schema:t}){let n=await ft({value:e,schema:t});if(!n.success)throw x.wrap({value:e,cause:n.error});return n.value}async function ft({value:e,schema:t}){let n=lt(t);try{if(n.validate==null)return{success:!0,value:e,rawValue:e};let t=await n.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:x.wrap({value:e,cause:t.error}),rawValue:e}}catch(t){return{success:!1,error:x.wrap({value:e,cause:t}),rawValue:e}}}async function pt({text:e,schema:t}){try{let n=at(e);return t==null?n:dt({value:n,schema:t})}catch(t){throw g.isInstance(t)||x.isInstance(t)?t:new g({text:e,cause:t})}}async function mt({text:e,schema:t}){try{let n=at(e);return t==null?{success:!0,value:n,rawValue:n}:await ft({value:n,schema:t})}catch(t){return{success:!1,error:g.isInstance(t)?t:new g({text:e,cause:t}),rawValue:void 0}}}function ht({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new d).pipeThrough(new TransformStream({async transform({data:e},n){e!==`[DONE]`&&n.enqueue(await mt({text:e,schema:t}))}}))}async function gt({provider:e,providerOptions:t,schema:n}){if(t?.[e]==null)return;let r=await ft({value:t[e],schema:n});if(!r.success)throw new p({argument:`providerOptions`,message:`invalid ${e} provider options`,cause:r.error});return r.value}var _t=()=>globalThis.fetch,vt=async({url:e,headers:t,body:n,failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o})=>yt({url:e,headers:{"Content-Type":`application/json`,...t},body:{content:JSON.stringify(n),values:n},failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o}),yt=async({url:e,headers:t={},body:n,successfulResponseHandler:r,failedResponseHandler:i,abortSignal:a,fetch:o=_t()})=>{try{let c=await o(e,{method:`POST`,headers:Je(t,`ai-sdk/provider-utils/${$e}`,Ke()),body:n.content,signal:a}),l=Ge(c);if(!c.ok){let t;try{t=await i({response:c,url:e,requestBodyValues:n.values})}catch(t){throw Xe(t)||s.isInstance(t)?t:new s({message:`Failed to process error response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}throw t.value}try{return await r({response:c,url:e,requestBodyValues:n.values})}catch(t){throw t instanceof Error&&(Xe(t)||s.isInstance(t))?t:new s({message:`Failed to process successful response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}}catch(t){throw Qe({error:t,url:e,requestBodyValues:n.values})}};function bt(e){return e}function xt({id:e,name:t,inputSchema:n}){return({execute:r,outputSchema:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>bt({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:i,execute:r,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}function St({id:e,name:t,inputSchema:n,outputSchema:r}){return({execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>bt({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:r,execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}async function Ct(e){return typeof e==`function`&&(e=e()),Promise.resolve(e)}var wt=({errorSchema:e,errorToMessage:t,isRetryable:n})=>async({response:r,url:i,requestBodyValues:a})=>{let o=await r.text(),c=Ge(r);if(o.trim()===``)return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})};try{let l=await pt({text:o,schema:e});return{responseHeaders:c,value:new s({message:t(l),url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,data:l,isRetryable:n?.(r,l)})}}catch{return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})}}},Tt=e=>async({response:t})=>{let n=Ge(t);if(t.body==null)throw new u({});return{responseHeaders:n,value:ht({stream:t.body,schema:e})}},Et=e=>async({response:t,url:n,requestBodyValues:r})=>{let i=await t.text(),a=await mt({text:i,schema:e}),o=Ge(t);if(!a.success)throw new s({message:`Invalid JSON response`,cause:a.error,statusCode:t.status,responseHeaders:o,responseBody:i,url:n,requestBodyValues:r});return{responseHeaders:o,value:a.value,rawValue:a.rawValue}},{btoa:Dt,atob:Ot}=globalThis;function kt(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCodePoint(e[n]);return Dt(t)}function At(e){return e instanceof Uint8Array?kt(e):e}function jt(e){return e?.replace(/\/$/,``)}var Mt=`2.0.23`,Nt=M.object({type:M.literal(`error`),error:M.object({type:M.string(),message:M.string()})}),Pt=wt({errorSchema:Nt,errorToMessage:e=>e.error.message}),Ft=M.object({citations:M.object({enabled:M.boolean()}).optional(),title:M.string().optional(),context:M.string().optional()}),It=M.object({sendReasoning:M.boolean().optional(),thinking:M.object({type:M.union([M.literal(`enabled`),M.literal(`disabled`)]),budgetTokens:M.number().optional()}).optional(),disableParallelToolUse:M.boolean().optional(),cacheControl:M.object({type:M.literal(`ephemeral`),ttl:M.union([M.literal(`5m`),M.literal(`1h`)]).optional()}).optional()});function Lt(e){let t=e?.anthropic;return t?.cacheControl??t?.cache_control}var Rt=M.object({maxCharacters:M.number().optional()}),zt=xt({id:`anthropic.text_editor_20250728`,name:`str_replace_based_edit_tool`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),Bt=(e={})=>zt(e),Vt=M.object({maxUses:M.number().optional(),allowedDomains:M.array(M.string()).optional(),blockedDomains:M.array(M.string()).optional(),userLocation:M.object({type:M.literal(`approximate`),city:M.string().optional(),region:M.string().optional(),country:M.string().optional(),timezone:M.string().optional()}).optional()}),Ht=M.array(M.object({url:M.string(),title:M.string(),pageAge:M.string().nullable(),encryptedContent:M.string(),type:M.literal(`web_search_result`)})),Ut=St({id:`anthropic.web_search_20250305`,name:`web_search`,inputSchema:M.object({query:M.string()}),outputSchema:Ht}),Wt=(e={})=>Ut(e),Gt=M.object({maxUses:M.number().optional(),allowedDomains:M.array(M.string()).optional(),blockedDomains:M.array(M.string()).optional(),citations:M.object({enabled:M.boolean()}).optional(),maxContentTokens:M.number().optional()}),Kt=M.object({type:M.literal(`web_fetch_result`),url:M.string(),content:M.object({type:M.literal(`document`),title:M.string(),citations:M.object({enabled:M.boolean()}).optional(),source:M.union([M.object({type:M.literal(`base64`),mediaType:M.literal(`application/pdf`),data:M.string()}),M.object({type:M.literal(`text`),mediaType:M.literal(`text/plain`),data:M.string()})])}),retrievedAt:M.string().nullable()}),qt=St({id:`anthropic.web_fetch_20250910`,name:`web_fetch`,inputSchema:M.object({url:M.string()}),outputSchema:Kt}),Jt=(e={})=>qt(e);function Yt({tools:e,toolChoice:t,disableParallelToolUse:n}){e=e?.length?e:void 0;let r=[],i=new Set;if(e==null)return{tools:void 0,toolChoice:void 0,toolWarnings:r,betas:i};let a=[];for(let t of e)switch(t.type){case`function`:{let e=Lt(t.providerOptions);a.push({name:t.name,description:t.description,input_schema:t.inputSchema,cache_control:e});break}case`provider-defined`:switch(t.id){case`anthropic.code_execution_20250522`:i.add(`code-execution-2025-05-22`),a.push({type:`code_execution_20250522`,name:`code_execution`});break;case`anthropic.computer_20250124`:i.add(`computer-use-2025-01-24`),a.push({name:`computer`,type:`computer_20250124`,display_width_px:t.args.displayWidthPx,display_height_px:t.args.displayHeightPx,display_number:t.args.displayNumber});break;case`anthropic.computer_20241022`:i.add(`computer-use-2024-10-22`),a.push({name:`computer`,type:`computer_20241022`,display_width_px:t.args.displayWidthPx,display_height_px:t.args.displayHeightPx,display_number:t.args.displayNumber});break;case`anthropic.text_editor_20250124`:i.add(`computer-use-2025-01-24`),a.push({name:`str_replace_editor`,type:`text_editor_20250124`});break;case`anthropic.text_editor_20241022`:i.add(`computer-use-2024-10-22`),a.push({name:`str_replace_editor`,type:`text_editor_20241022`});break;case`anthropic.text_editor_20250429`:i.add(`computer-use-2025-01-24`),a.push({name:`str_replace_based_edit_tool`,type:`text_editor_20250429`});break;case`anthropic.text_editor_20250728`:{let e=Rt.parse(t.args);a.push({name:`str_replace_based_edit_tool`,type:`text_editor_20250728`,max_characters:e.maxCharacters});break}case`anthropic.bash_20250124`:i.add(`computer-use-2025-01-24`),a.push({name:`bash`,type:`bash_20250124`});break;case`anthropic.bash_20241022`:i.add(`computer-use-2024-10-22`),a.push({name:`bash`,type:`bash_20241022`});break;case`anthropic.web_fetch_20250910`:{i.add(`web-fetch-2025-09-10`);let e=Gt.parse(t.args);a.push({type:`web_fetch_20250910`,name:`web_fetch`,max_uses:e.maxUses,allowed_domains:e.allowedDomains,blocked_domains:e.blockedDomains,citations:e.citations,max_content_tokens:e.maxContentTokens});break}case`anthropic.web_search_20250305`:{let e=Vt.parse(t.args);a.push({type:`web_search_20250305`,name:`web_search`,max_uses:e.maxUses,allowed_domains:e.allowedDomains,blocked_domains:e.blockedDomains,user_location:e.userLocation});break}default:r.push({type:`unsupported-tool`,tool:t});break}break;default:r.push({type:`unsupported-tool`,tool:t});break}if(t==null)return{tools:a,toolChoice:n?{type:`auto`,disable_parallel_tool_use:n}:void 0,toolWarnings:r,betas:i};let o=t.type;switch(o){case`auto`:return{tools:a,toolChoice:{type:`auto`,disable_parallel_tool_use:n},toolWarnings:r,betas:i};case`required`:return{tools:a,toolChoice:{type:`any`,disable_parallel_tool_use:n},toolWarnings:r,betas:i};case`none`:return{tools:void 0,toolChoice:void 0,toolWarnings:r,betas:i};case`tool`:return{tools:a,toolChoice:{type:`tool`,name:t.toolName,disable_parallel_tool_use:n},toolWarnings:r,betas:i};default:throw new S({functionality:`tool choice type: ${o}`})}}var Xt=M.object({type:M.literal(`code_execution_result`),stdout:M.string(),stderr:M.string(),return_code:M.number()}),Zt=St({id:`anthropic.code_execution_20250522`,name:`code_execution`,inputSchema:M.object({code:M.string()}),outputSchema:Xt}),Qt=(e={})=>Zt(e);function $t(e){if(typeof e==`string`)return Buffer.from(e,`base64`).toString(`utf-8`);if(e instanceof Uint8Array)return new TextDecoder().decode(e);throw e instanceof URL?new S({functionality:`URL-based text documents are not supported for citations`}):new S({functionality:`unsupported data type for text documents: ${typeof e}`})}async function en({prompt:e,sendReasoning:t,warnings:n}){let r=new Set,i=tn(e),a,o=[];async function s(e){return(await gt({provider:`anthropic`,providerOptions:e,schema:Ft}))?.citations?.enabled??!1}async function c(e){let t=await gt({provider:`anthropic`,providerOptions:e,schema:Ft});return{title:t?.title,context:t?.context}}for(let e=0;e<i.length;e++){let l=i[e],u=e===i.length-1,d=l.type;switch(d){case`system`:if(a!=null)throw new S({functionality:`Multiple system messages that are separated by user/assistant messages`});a=l.messages.map(({content:e,providerOptions:t})=>({type:`text`,text:e,cache_control:Lt(t)}));break;case`user`:{let e=[];for(let t of l.messages){let{role:n,content:i}=t;switch(n){case`user`:for(let n=0;n<i.length;n++){let a=i[n],o=n===i.length-1,l=Lt(a.providerOptions)??(o?Lt(t.providerOptions):void 0);switch(a.type){case`text`:e.push({type:`text`,text:a.text,cache_control:l});break;case`file`:if(a.mediaType.startsWith(`image/`))e.push({type:`image`,source:a.data instanceof URL?{type:`url`,url:a.data.toString()}:{type:`base64`,media_type:a.mediaType===`image/*`?`image/jpeg`:a.mediaType,data:At(a.data)},cache_control:l});else if(a.mediaType===`application/pdf`){r.add(`pdfs-2024-09-25`);let t=await s(a.providerOptions),n=await c(a.providerOptions);e.push({type:`document`,source:a.data instanceof URL?{type:`url`,url:a.data.toString()}:{type:`base64`,media_type:`application/pdf`,data:At(a.data)},title:n.title??a.filename,...n.context&&{context:n.context},...t&&{citations:{enabled:!0}},cache_control:l})}else if(a.mediaType===`text/plain`){let t=await s(a.providerOptions),n=await c(a.providerOptions);e.push({type:`document`,source:a.data instanceof URL?{type:`url`,url:a.data.toString()}:{type:`text`,media_type:`text/plain`,data:$t(a.data)},title:n.title??a.filename,...n.context&&{context:n.context},...t&&{citations:{enabled:!0}},cache_control:l})}else throw new S({functionality:`media type: ${a.mediaType}`});break}}break;case`tool`:for(let n=0;n<i.length;n++){let r=i[n],a=n===i.length-1,o=Lt(r.providerOptions)??(a?Lt(t.providerOptions):void 0),s=r.output,c;switch(s.type){case`content`:c=s.value.map(e=>{switch(e.type){case`text`:return{type:`text`,text:e.text,cache_control:void 0};case`media`:if(e.mediaType.startsWith(`image/`))return{type:`image`,source:{type:`base64`,media_type:e.mediaType,data:e.data},cache_control:void 0};throw new S({functionality:`media type: ${e.mediaType}`})}});break;case`text`:case`error-text`:c=s.value;break;case`json`:case`error-json`:default:c=JSON.stringify(s.value);break}e.push({type:`tool_result`,tool_use_id:r.toolCallId,content:c,is_error:s.type===`error-text`||s.type===`error-json`?!0:void 0,cache_control:o})}break;default:{let e=n;throw Error(`Unsupported role: ${e}`)}}}o.push({role:`user`,content:e});break}case`assistant`:{let e=[];for(let r=0;r<l.messages.length;r++){let i=l.messages[r],a=r===l.messages.length-1,{content:o}=i;for(let r=0;r<o.length;r++){let s=o[r],c=r===o.length-1,l=Lt(s.providerOptions)??(c?Lt(i.providerOptions):void 0);switch(s.type){case`text`:e.push({type:`text`,text:u&&a&&c?s.text.trim():s.text,cache_control:l});break;case`reasoning`:if(t){let t=await gt({provider:`anthropic`,providerOptions:s.providerOptions,schema:dn});t==null?n.push({type:`other`,message:`unsupported reasoning metadata`}):t.signature==null?t.redactedData==null?n.push({type:`other`,message:`unsupported reasoning metadata`}):e.push({type:`redacted_thinking`,data:t.redactedData,cache_control:l}):e.push({type:`thinking`,thinking:s.text,signature:t.signature,cache_control:l})}else n.push({type:`other`,message:`sending reasoning content is disabled for this model`});break;case`tool-call`:if(s.providerExecuted){s.toolName===`code_execution`||s.toolName===`web_fetch`||s.toolName===`web_search`?e.push({type:`server_tool_use`,id:s.toolCallId,name:s.toolName,input:s.input,cache_control:l}):n.push({type:`other`,message:`provider executed tool call for tool ${s.toolName} is not supported`});break}e.push({type:`tool_use`,id:s.toolCallId,name:s.toolName,input:s.input,cache_control:l});break;case`tool-result`:if(s.toolName===`code_execution`){let t=s.output;if(t.type!==`json`){n.push({type:`other`,message:`provider executed tool result output type ${t.type} for tool ${s.toolName} is not supported`});break}let r=Xt.parse(t.value);e.push({type:`code_execution_tool_result`,tool_use_id:s.toolCallId,content:{type:r.type,stdout:r.stdout,stderr:r.stderr,return_code:r.return_code},cache_control:l});break}if(s.toolName===`web_fetch`){let t=s.output;if(t.type!==`json`){n.push({type:`other`,message:`provider executed tool result output type ${t.type} for tool ${s.toolName} is not supported`});break}let r=Kt.parse(t.value);e.push({type:`web_fetch_tool_result`,tool_use_id:s.toolCallId,content:{type:`web_fetch_result`,url:r.url,retrieved_at:r.retrievedAt,content:{type:`document`,title:r.content.title,citations:r.content.citations,source:{type:r.content.source.type,media_type:r.content.source.mediaType,data:r.content.source.data}}},cache_control:l});break}if(s.toolName===`web_search`){let t=s.output;if(t.type!==`json`){n.push({type:`other`,message:`provider executed tool result output type ${t.type} for tool ${s.toolName} is not supported`});break}let r=Ht.parse(t.value);e.push({type:`web_search_tool_result`,tool_use_id:s.toolCallId,content:r.map(e=>({url:e.url,title:e.title,page_age:e.pageAge,encrypted_content:e.encryptedContent,type:e.type})),cache_control:l});break}n.push({type:`other`,message:`provider executed tool result for tool ${s.toolName} is not supported`});break}}}o.push({role:`assistant`,content:e});break}default:{let e=d;throw Error(`content type: ${e}`)}}}return{prompt:{system:a,messages:o},betas:r}}function tn(e){let t=[],n;for(let r of e){let{role:e}=r;switch(e){case`system`:n?.type!==`system`&&(n={type:`system`,messages:[]},t.push(n)),n.messages.push(r);break;case`assistant`:n?.type!==`assistant`&&(n={type:`assistant`,messages:[]},t.push(n)),n.messages.push(r);break;case`user`:n?.type!==`user`&&(n={type:`user`,messages:[]},t.push(n)),n.messages.push(r);break;case`tool`:n?.type!==`user`&&(n={type:`user`,messages:[]},t.push(n)),n.messages.push(r);break;default:{let t=e;throw Error(`Unsupported role: ${t}`)}}}return t}function nn({finishReason:e,isJsonResponseFromTool:t}){switch(e){case`pause_turn`:case`end_turn`:case`stop_sequence`:return`stop`;case`refusal`:return`content-filter`;case`tool_use`:return t?`stop`:`tool-calls`;case`max_tokens`:return`length`;default:return`unknown`}}var rn={webSearchResult:M.object({type:M.literal(`web_search_result_location`),cited_text:M.string(),url:M.string(),title:M.string(),encrypted_index:M.string()}),pageLocation:M.object({type:M.literal(`page_location`),cited_text:M.string(),document_index:M.number(),document_title:M.string().nullable(),start_page_number:M.number(),end_page_number:M.number()}),charLocation:M.object({type:M.literal(`char_location`),cited_text:M.string(),document_index:M.number(),document_title:M.string().nullable(),start_char_index:M.number(),end_char_index:M.number()})},an=M.discriminatedUnion(`type`,[rn.webSearchResult,rn.pageLocation,rn.charLocation]);M.discriminatedUnion(`type`,[rn.pageLocation,rn.charLocation]);function on(e,t,n,r){if(e.type===`page_location`||e.type===`char_location`){let i=sn(e,t,n);i&&r(i)}}function sn(e,t,n){let r=t[e.document_index];if(!r)return null;let i=e.type===`page_location`?{citedText:e.cited_text,startPageNumber:e.start_page_number,endPageNumber:e.end_page_number}:{citedText:e.cited_text,startCharIndex:e.start_char_index,endCharIndex:e.end_char_index};return{type:`source`,sourceType:`document`,id:n(),mediaType:r.mediaType,title:e.document_title??r.title,filename:r.filename,providerMetadata:{anthropic:i}}}var cn=class{constructor(e,t){this.specificationVersion=`v2`,this.modelId=e,this.config=t,this.generateId=t.generateId??Ye}supportsUrl(e){return e.protocol===`https:`}get provider(){return this.config.provider}get supportedUrls(){var e;return(e=this.config).supportedUrls?.call(e)??{}}async getArgs({prompt:e,maxOutputTokens:t=4096,temperature:n,topP:r,topK:i,frequencyPenalty:a,presencePenalty:o,stopSequences:s,responseFormat:c,seed:l,tools:u,toolChoice:d,providerOptions:f}){let p=[];a!=null&&p.push({type:`unsupported-setting`,setting:`frequencyPenalty`}),o!=null&&p.push({type:`unsupported-setting`,setting:`presencePenalty`}),l!=null&&p.push({type:`unsupported-setting`,setting:`seed`}),c?.type===`json`&&(c.schema==null?p.push({type:`unsupported-setting`,setting:`responseFormat`,details:`JSON response format requires a schema. The response format is ignored.`}):u!=null&&p.push({type:`unsupported-setting`,setting:`tools`,details:`JSON response format does not support tools. The provided tools are ignored.`}));let m=c?.type===`json`&&c.schema!=null?{type:`function`,name:`json`,description:`Respond with a JSON object.`,inputSchema:c.schema}:void 0,h=await gt({provider:`anthropic`,providerOptions:f,schema:It}),{prompt:g,betas:_}=await en({prompt:e,sendReasoning:h?.sendReasoning??!0,warnings:p}),v=h?.thinking?.type===`enabled`,y=h?.thinking?.budgetTokens,b={model:this.modelId,max_tokens:t,temperature:n,top_k:i,top_p:r,stop_sequences:s,...v&&{thinking:{type:`enabled`,budget_tokens:y}},system:g.system,messages:g.messages};if(v){if(y==null)throw new S({functionality:`thinking requires a budget`});b.temperature!=null&&(b.temperature=void 0,p.push({type:`unsupported-setting`,setting:`temperature`,details:`temperature is not supported when thinking is enabled`})),i!=null&&(b.top_k=void 0,p.push({type:`unsupported-setting`,setting:`topK`,details:`topK is not supported when thinking is enabled`})),r!=null&&(b.top_p=void 0,p.push({type:`unsupported-setting`,setting:`topP`,details:`topP is not supported when thinking is enabled`})),b.max_tokens=t+y}let{tools:x,toolChoice:C,toolWarnings:w,betas:T}=Yt(m==null?{tools:u??[],toolChoice:d,disableParallelToolUse:h?.disableParallelToolUse}:{tools:[m],toolChoice:{type:`tool`,toolName:m.name},disableParallelToolUse:!0});return{args:{...b,tools:x,tool_choice:C},warnings:[...p,...w],betas:new Set([..._,...T]),usesJsonResponseTool:m!=null}}async getHeaders({betas:e,headers:t}){return We(await Ct(this.config.headers),e.size>0?{"anthropic-beta":Array.from(e).join(`,`)}:{},t)}buildRequestUrl(e){var t;return(t=this.config).buildRequestUrl?.call(t,this.config.baseURL,e)??`${this.config.baseURL}/messages`}transformRequestBody(e){var t;return(t=this.config).transformRequestBody?.call(t,e)??e}extractCitationDocuments(e){return e.filter(e=>e.role===`user`).flatMap(e=>e.content).filter(e=>e.type!==`file`||e.mediaType!==`application/pdf`&&e.mediaType!==`text/plain`?!1:e.providerOptions?.anthropic?.citations?.enabled??!1).map(e=>{let t=e;return{title:t.filename??`Untitled Document`,filename:t.filename,mediaType:t.mediaType}})}async doGenerate(e){let{args:t,warnings:n,betas:r,usesJsonResponseTool:i}=await this.getArgs(e),a=this.extractCitationDocuments(e.prompt),{responseHeaders:o,value:s,rawValue:c}=await vt({url:this.buildRequestUrl(!1),headers:await this.getHeaders({betas:r,headers:e.headers}),body:this.transformRequestBody(t),failedResponseHandler:Pt,successfulResponseHandler:Et(ln),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=[];for(let e of s.content)switch(e.type){case`text`:if(!i&&(l.push({type:`text`,text:e.text}),e.citations))for(let t of e.citations)on(t,a,this.generateId,e=>l.push(e));break;case`thinking`:l.push({type:`reasoning`,text:e.thinking,providerMetadata:{anthropic:{signature:e.signature}}});break;case`redacted_thinking`:l.push({type:`reasoning`,text:``,providerMetadata:{anthropic:{redactedData:e.data}}});break;case`tool_use`:l.push(i?{type:`text`,text:JSON.stringify(e.input)}:{type:`tool-call`,toolCallId:e.id,toolName:e.name,input:JSON.stringify(e.input)});break;case`server_tool_use`:(e.name===`web_search`||e.name===`code_execution`||e.name===`web_fetch`)&&l.push({type:`tool-call`,toolCallId:e.id,toolName:e.name,input:JSON.stringify(e.input),providerExecuted:!0});break;case`web_fetch_tool_result`:e.content.type===`web_fetch_result`?l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,result:{type:`web_fetch_result`,url:e.content.url,retrievedAt:e.content.retrieved_at,content:{type:e.content.content.type,title:e.content.content.title,citations:e.content.content.citations,source:{type:e.content.content.source.type,mediaType:e.content.content.source.media_type,data:e.content.content.source.data}}},providerExecuted:!0}):e.content.type===`web_fetch_tool_result_error`&&l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,isError:!0,result:{type:`web_fetch_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});break;case`web_search_tool_result`:if(Array.isArray(e.content)){l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,result:e.content.map(e=>({url:e.url,title:e.title,pageAge:e.page_age??null,encryptedContent:e.encrypted_content,type:e.type})),providerExecuted:!0});for(let t of e.content)l.push({type:`source`,sourceType:`url`,id:this.generateId(),url:t.url,title:t.title,providerMetadata:{anthropic:{pageAge:t.page_age??null}}})}else l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,isError:!0,result:{type:`web_search_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});break;case`code_execution_tool_result`:e.content.type===`code_execution_result`?l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,result:{type:e.content.type,stdout:e.content.stdout,stderr:e.content.stderr,return_code:e.content.return_code},providerExecuted:!0}):e.content.type===`code_execution_tool_result_error`&&l.push({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,isError:!0,result:{type:`code_execution_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});break}return{content:l,finishReason:nn({finishReason:s.stop_reason,isJsonResponseFromTool:i}),usage:{inputTokens:s.usage.input_tokens,outputTokens:s.usage.output_tokens,totalTokens:s.usage.input_tokens+s.usage.output_tokens,cachedInputTokens:s.usage.cache_read_input_tokens??void 0},request:{body:t},response:{id:s.id??void 0,modelId:s.model??void 0,headers:o,body:c},warnings:n,providerMetadata:{anthropic:{usage:s.usage,cacheCreationInputTokens:s.usage.cache_creation_input_tokens??null,stopSequence:s.stop_sequence??null}}}}async doStream(e){let{args:t,warnings:n,betas:r,usesJsonResponseTool:i}=await this.getArgs(e),a=this.extractCitationDocuments(e.prompt),o={...t,stream:!0},{responseHeaders:s,value:c}=await vt({url:this.buildRequestUrl(!0),headers:await this.getHeaders({betas:r,headers:e.headers}),body:this.transformRequestBody(o),failedResponseHandler:Pt,successfulResponseHandler:Tt(un),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=`unknown`,u={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0},d={},f,p=null,m=null,h,g=this.generateId;return{stream:c.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:n})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){n.enqueue({type:`error`,error:t.error});return}let r=t.value;switch(r.type){case`ping`:return;case`content_block_start`:{let e=r.content_block.type;switch(h=e,e){case`text`:d[r.index]={type:`text`},n.enqueue({type:`text-start`,id:String(r.index)});return;case`thinking`:d[r.index]={type:`reasoning`},n.enqueue({type:`reasoning-start`,id:String(r.index)});return;case`redacted_thinking`:d[r.index]={type:`reasoning`},n.enqueue({type:`reasoning-start`,id:String(r.index),providerMetadata:{anthropic:{redactedData:r.content_block.data}}});return;case`tool_use`:d[r.index]=i?{type:`text`}:{type:`tool-call`,toolCallId:r.content_block.id,toolName:r.content_block.name,input:``},n.enqueue(i?{type:`text-start`,id:String(r.index)}:{type:`tool-input-start`,id:r.content_block.id,toolName:r.content_block.name});return;case`server_tool_use`:(r.content_block.name===`web_fetch`||r.content_block.name===`web_search`||r.content_block.name===`code_execution`)&&(d[r.index]={type:`tool-call`,toolCallId:r.content_block.id,toolName:r.content_block.name,input:``,providerExecuted:!0},n.enqueue({type:`tool-input-start`,id:r.content_block.id,toolName:r.content_block.name,providerExecuted:!0}));return;case`web_fetch_tool_result`:{let e=r.content_block;e.content.type===`web_fetch_result`?n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,result:{type:`web_fetch_result`,url:e.content.url,retrievedAt:e.content.retrieved_at,content:{type:e.content.content.type,title:e.content.content.title,citations:e.content.content.citations,source:{type:e.content.content.source.type,mediaType:e.content.content.source.media_type,data:e.content.content.source.data}}}}):e.content.type===`web_fetch_tool_result_error`&&n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_fetch`,isError:!0,result:{type:`web_fetch_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});return}case`web_search_tool_result`:{let e=r.content_block;if(Array.isArray(e.content)){n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,result:e.content.map(e=>({url:e.url,title:e.title,pageAge:e.page_age??null,encryptedContent:e.encrypted_content,type:e.type})),providerExecuted:!0});for(let t of e.content)n.enqueue({type:`source`,sourceType:`url`,id:g(),url:t.url,title:t.title,providerMetadata:{anthropic:{pageAge:t.page_age??null}}})}else n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`web_search`,isError:!0,result:{type:`web_search_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});return}case`code_execution_tool_result`:{let e=r.content_block;e.content.type===`code_execution_result`?n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,result:{type:e.content.type,stdout:e.content.stdout,stderr:e.content.stderr,return_code:e.content.return_code},providerExecuted:!0}):e.content.type===`code_execution_tool_result_error`&&n.enqueue({type:`tool-result`,toolCallId:e.tool_use_id,toolName:`code_execution`,isError:!0,result:{type:`code_execution_tool_result_error`,errorCode:e.content.error_code},providerExecuted:!0});return}default:{let t=e;throw Error(`Unsupported content block type: ${t}`)}}}case`content_block_stop`:if(d[r.index]!=null){let e=d[r.index];switch(e.type){case`text`:n.enqueue({type:`text-end`,id:String(r.index)});break;case`reasoning`:n.enqueue({type:`reasoning-end`,id:String(r.index)});break;case`tool-call`:i||(n.enqueue({type:`tool-input-end`,id:e.toolCallId}),n.enqueue(e));break}delete d[r.index]}h=void 0;return;case`content_block_delta`:{let e=r.delta.type;switch(e){case`text_delta`:if(i)return;n.enqueue({type:`text-delta`,id:String(r.index),delta:r.delta.text});return;case`thinking_delta`:n.enqueue({type:`reasoning-delta`,id:String(r.index),delta:r.delta.thinking});return;case`signature_delta`:h===`thinking`&&n.enqueue({type:`reasoning-delta`,id:String(r.index),delta:``,providerMetadata:{anthropic:{signature:r.delta.signature}}});return;case`input_json_delta`:{let e=d[r.index],t=r.delta.partial_json;if(i){if(e?.type!==`text`)return;n.enqueue({type:`text-delta`,id:String(r.index),delta:t})}else{if(e?.type!==`tool-call`)return;n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:t}),e.input+=t}return}case`citations_delta`:{let e=r.delta.citation;on(e,a,g,e=>n.enqueue(e));return}default:{let t=e;throw Error(`Unsupported delta type: ${t}`)}}}case`message_start`:u.inputTokens=r.message.usage.input_tokens,u.cachedInputTokens=r.message.usage.cache_read_input_tokens??void 0,f={...r.message.usage},p=r.message.usage.cache_creation_input_tokens??null,n.enqueue({type:`response-metadata`,id:r.message.id??void 0,modelId:r.message.model??void 0});return;case`message_delta`:u.outputTokens=r.usage.output_tokens,u.totalTokens=(u.inputTokens??0)+(r.usage.output_tokens??0),l=nn({finishReason:r.delta.stop_reason,isJsonResponseFromTool:i}),m=r.delta.stop_sequence??null,f={...f,...r.usage};return;case`message_stop`:n.enqueue({type:`finish`,finishReason:l,usage:u,providerMetadata:{anthropic:{usage:f??null,cacheCreationInputTokens:p,stopSequence:m}}});return;case`error`:n.enqueue({type:`error`,error:r.error});return;default:{let e=r;throw Error(`Unsupported chunk type: ${e}`)}}}})),request:{body:o},response:{headers:s}}}},ln=M.object({type:M.literal(`message`),id:M.string().nullish(),model:M.string().nullish(),content:M.array(M.discriminatedUnion(`type`,[M.object({type:M.literal(`text`),text:M.string(),citations:M.array(an).optional()}),M.object({type:M.literal(`thinking`),thinking:M.string(),signature:M.string()}),M.object({type:M.literal(`redacted_thinking`),data:M.string()}),M.object({type:M.literal(`tool_use`),id:M.string(),name:M.string(),input:M.unknown()}),M.object({type:M.literal(`server_tool_use`),id:M.string(),name:M.string(),input:M.record(M.string(),M.unknown()).nullish()}),M.object({type:M.literal(`web_fetch_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`web_fetch_result`),url:M.string(),retrieved_at:M.string(),content:M.object({type:M.literal(`document`),title:M.string().nullable(),citations:M.object({enabled:M.boolean()}).optional(),source:M.object({type:M.literal(`text`),media_type:M.string(),data:M.string()})})}),M.object({type:M.literal(`web_fetch_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`web_search_tool_result`),tool_use_id:M.string(),content:M.union([M.array(M.object({type:M.literal(`web_search_result`),url:M.string(),title:M.string(),encrypted_content:M.string(),page_age:M.string().nullish()})),M.object({type:M.literal(`web_search_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`code_execution_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`code_execution_result`),stdout:M.string(),stderr:M.string(),return_code:M.number()}),M.object({type:M.literal(`code_execution_tool_result_error`),error_code:M.string()})])})])),stop_reason:M.string().nullish(),stop_sequence:M.string().nullish(),usage:M.looseObject({input_tokens:M.number(),output_tokens:M.number(),cache_creation_input_tokens:M.number().nullish(),cache_read_input_tokens:M.number().nullish()})}),un=M.discriminatedUnion(`type`,[M.object({type:M.literal(`message_start`),message:M.object({id:M.string().nullish(),model:M.string().nullish(),usage:M.looseObject({input_tokens:M.number(),cache_creation_input_tokens:M.number().nullish(),cache_read_input_tokens:M.number().nullish()})})}),M.object({type:M.literal(`content_block_start`),index:M.number(),content_block:M.discriminatedUnion(`type`,[M.object({type:M.literal(`text`),text:M.string()}),M.object({type:M.literal(`thinking`),thinking:M.string()}),M.object({type:M.literal(`tool_use`),id:M.string(),name:M.string()}),M.object({type:M.literal(`redacted_thinking`),data:M.string()}),M.object({type:M.literal(`server_tool_use`),id:M.string(),name:M.string(),input:M.record(M.string(),M.unknown()).nullish()}),M.object({type:M.literal(`web_fetch_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`web_fetch_result`),url:M.string(),retrieved_at:M.string(),content:M.object({type:M.literal(`document`),title:M.string().nullable(),citations:M.object({enabled:M.boolean()}).optional(),source:M.object({type:M.literal(`text`),media_type:M.string(),data:M.string()})})}),M.object({type:M.literal(`web_fetch_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`web_search_tool_result`),tool_use_id:M.string(),content:M.union([M.array(M.object({type:M.literal(`web_search_result`),url:M.string(),title:M.string(),encrypted_content:M.string(),page_age:M.string().nullish()})),M.object({type:M.literal(`web_search_tool_result_error`),error_code:M.string()})])}),M.object({type:M.literal(`code_execution_tool_result`),tool_use_id:M.string(),content:M.union([M.object({type:M.literal(`code_execution_result`),stdout:M.string(),stderr:M.string(),return_code:M.number()}),M.object({type:M.literal(`code_execution_tool_result_error`),error_code:M.string()})])})])}),M.object({type:M.literal(`content_block_delta`),index:M.number(),delta:M.discriminatedUnion(`type`,[M.object({type:M.literal(`input_json_delta`),partial_json:M.string()}),M.object({type:M.literal(`text_delta`),text:M.string()}),M.object({type:M.literal(`thinking_delta`),thinking:M.string()}),M.object({type:M.literal(`signature_delta`),signature:M.string()}),M.object({type:M.literal(`citations_delta`),citation:an})])}),M.object({type:M.literal(`content_block_stop`),index:M.number()}),M.object({type:M.literal(`error`),error:M.object({type:M.string(),message:M.string()})}),M.object({type:M.literal(`message_delta`),delta:M.object({stop_reason:M.string().nullish(),stop_sequence:M.string().nullish()}),usage:M.looseObject({output_tokens:M.number(),cache_creation_input_tokens:M.number().nullish()})}),M.object({type:M.literal(`message_stop`)}),M.object({type:M.literal(`ping`)})]),dn=M.object({signature:M.string().optional(),redactedData:M.string().optional()}),fn=xt({id:`anthropic.bash_20241022`,name:`bash`,inputSchema:j.object({command:j.string(),restart:j.boolean().optional()})}),pn=xt({id:`anthropic.bash_20250124`,name:`bash`,inputSchema:j.object({command:j.string(),restart:j.boolean().optional()})}),mn=xt({id:`anthropic.computer_20241022`,name:`computer`,inputSchema:M.object({action:M.enum([`key`,`type`,`mouse_move`,`left_click`,`left_click_drag`,`right_click`,`middle_click`,`double_click`,`screenshot`,`cursor_position`]),coordinate:M.array(M.number().int()).optional(),text:M.string().optional()})}),hn=xt({id:`anthropic.computer_20250124`,name:`computer`,inputSchema:M.object({action:M.enum([`key`,`hold_key`,`type`,`cursor_position`,`mouse_move`,`left_mouse_down`,`left_mouse_up`,`left_click`,`left_click_drag`,`right_click`,`middle_click`,`double_click`,`triple_click`,`scroll`,`wait`,`screenshot`]),coordinate:M.tuple([M.number().int(),M.number().int()]).optional(),duration:M.number().optional(),scroll_amount:M.number().optional(),scroll_direction:M.enum([`up`,`down`,`left`,`right`]).optional(),start_coordinate:M.tuple([M.number().int(),M.number().int()]).optional(),text:M.string().optional()})}),gn=xt({id:`anthropic.text_editor_20241022`,name:`str_replace_editor`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`,`undo_edit`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),_n=xt({id:`anthropic.text_editor_20250124`,name:`str_replace_editor`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`,`undo_edit`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),vn=xt({id:`anthropic.text_editor_20250429`,name:`str_replace_based_edit_tool`,inputSchema:M.object({command:M.enum([`view`,`create`,`str_replace`,`insert`]),path:M.string(),file_text:M.string().optional(),insert_line:M.number().int().optional(),new_str:M.string().optional(),old_str:M.string().optional(),view_range:M.array(M.number().int()).optional()})}),yn={bash_20241022:fn,bash_20250124:pn,codeExecution_20250522:Qt,computer_20241022:mn,computer_20250124:hn,textEditor_20241022:gn,textEditor_20250124:_n,textEditor_20250429:vn,textEditor_20250728:Bt,webFetch_20250910:Jt,webSearch_20250305:Wt};function bn(e={}){let t=jt(e.baseURL)??`https://api.anthropic.com/v1`,n=()=>Je({"anthropic-version":`2023-06-01`,"x-api-key":et({apiKey:e.apiKey,environmentVariableName:`ANTHROPIC_API_KEY`,description:`Anthropic`}),...e.headers},`ai-sdk/anthropic/${Mt}`),r=r=>new cn(r,{provider:`anthropic.messages`,baseURL:t,headers:n,fetch:e.fetch,generateId:e.generateId??Ye,supportedUrls:()=>({"image/*":[/^https?:\/\/.*$/]})}),i=function(e){if(new.target)throw Error(`The Anthropic model function cannot be called with the new keyword.`);return r(e)};return i.languageModel=r,i.chat=r,i.messages=r,i.textEmbeddingModel=e=>{throw new v({modelId:e,modelType:`textEmbeddingModel`})},i.imageModel=e=>{throw new v({modelId:e,modelType:`imageModel`})},i.tools=yn,i}bn();function xn(...e){return e.reduce((e,t)=>({...e,...t??{}}),{})}function Sn(e){return Object.fromEntries([...e.headers])}function Cn(e=globalThis){return e.window?`runtime/browser`:e.navigator?.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:e.process?.versions?.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?`runtime/vercel-edge`:`runtime/unknown`}function wn(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>t!=null))}function Tn(e,...t){let n=wn(e??{}),r=new Headers(n),i=r.get(`user-agent`)||``;return r.set(`user-agent`,[i,...t].filter(Boolean).join(` `)),Object.fromEntries(r)}var En=(({prefix:e,size:t=16,alphabet:n=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`,separator:r=`-`}={})=>{let i=()=>{let e=n.length,r=Array(t);for(let i=0;i<t;i++)r[i]=n[Math.random()*e|0];return r.join(``)};if(e==null)return i;if(n.includes(r))throw new p({argument:`separator`,message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${i()}`})();function Dn(e){return(e instanceof Error||e instanceof DOMException)&&(e.name===`AbortError`||e.name===`ResponseAborted`||e.name===`TimeoutError`)}var On=[`fetch failed`,`failed to fetch`];function kn({error:e,url:t,requestBodyValues:n}){if(Dn(e))return e;if(e instanceof TypeError&&On.includes(e.message.toLowerCase())){let r=e.cause;if(r!=null)return new s({message:`Cannot connect to API: ${r.message}`,cause:r,url:t,requestBodyValues:n,isRetryable:!0})}return e}var An=`3.0.10`;function jn({apiKey:e,environmentVariableName:t,apiKeyParameterName:n=`apiKey`,description:r}){if(typeof e==`string`)return e;if(e!=null)throw new _({message:`${r} API key must be a string.`});if(typeof process>`u`)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter. Environment variables is not supported in this environment.`});if(e=process.env[t],e==null)throw new _({message:`${r} API key is missing. Pass it using the '${n}' parameter or the ${t} environment variable.`});if(typeof e!=`string`)throw new _({message:`${r} API key must be a string. The value of the ${t} environment variable is not a string.`});return e}var Mn=/"__proto__"\s*:/,Nn=/"constructor"\s*:/;function Pn(e){let t=JSON.parse(e);return typeof t!=`object`||!t||Mn.test(e)===!1&&Nn.test(e)===!1?t:Fn(t)}function Fn(e){let t=[e];for(;t.length;){let e=t;t=[];for(let n of e){if(Object.prototype.hasOwnProperty.call(n,`__proto__`)||Object.prototype.hasOwnProperty.call(n,`constructor`)&&Object.prototype.hasOwnProperty.call(n.constructor,`prototype`))throw SyntaxError(`Object contains forbidden prototype property`);for(let e in n){let r=n[e];r&&typeof r==`object`&&t.push(r)}}}return e}function In(e){let{stackTraceLimit:t}=Error;Error.stackTraceLimit=0;try{return Pn(e)}finally{Error.stackTraceLimit=t}}var Ln=Symbol.for(`vercel.ai.validator`);function Rn(e){return{[Ln]:!0,validate:e}}function zn(e){return typeof e==`object`&&!!e&&Ln in e&&e[Ln]===!0&&`validate`in e}function Bn(e){return zn(e)?e:Vn(e)}function Vn(e){return Rn(async t=>{let n=await e[`~standard`].validate(t);return n.issues==null?{success:!0,value:n.value}:{success:!1,error:new x({value:t,cause:n.issues})}})}async function Hn({value:e,schema:t}){let n=await Un({value:e,schema:t});if(!n.success)throw x.wrap({value:e,cause:n.error});return n.value}async function Un({value:e,schema:t}){let n=Bn(t);try{if(n.validate==null)return{success:!0,value:e,rawValue:e};let t=await n.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:x.wrap({value:e,cause:t.error}),rawValue:e}}catch(t){return{success:!1,error:x.wrap({value:e,cause:t}),rawValue:e}}}async function Wn({text:e,schema:t}){try{let n=In(e);return t==null?n:Hn({value:n,schema:t})}catch(t){throw g.isInstance(t)||x.isInstance(t)?t:new g({text:e,cause:t})}}async function Gn({text:e,schema:t}){try{let n=In(e);return t==null?{success:!0,value:n,rawValue:n}:await Un({value:n,schema:t})}catch(t){return{success:!1,error:g.isInstance(t)?t:new g({text:e,cause:t}),rawValue:void 0}}}function Kn({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new d).pipeThrough(new TransformStream({async transform({data:e},n){e!==`[DONE]`&&n.enqueue(await Gn({text:e,schema:t}))}}))}async function qn({provider:e,providerOptions:t,schema:n}){if(t?.[e]==null)return;let r=await Un({value:t[e],schema:n});if(!r.success)throw new p({argument:`providerOptions`,message:`invalid ${e} provider options`,cause:r.error});return r.value}var Jn=()=>globalThis.fetch,Yn=async({url:e,headers:t,body:n,failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o})=>Xn({url:e,headers:{"Content-Type":`application/json`,...t},body:{content:JSON.stringify(n),values:n},failedResponseHandler:r,successfulResponseHandler:i,abortSignal:a,fetch:o}),Xn=async({url:e,headers:t={},body:n,successfulResponseHandler:r,failedResponseHandler:i,abortSignal:a,fetch:o=Jn()})=>{try{let c=await o(e,{method:`POST`,headers:Tn(t,`ai-sdk/provider-utils/${An}`,Cn()),body:n.content,signal:a}),l=Sn(c);if(!c.ok){let t;try{t=await i({response:c,url:e,requestBodyValues:n.values})}catch(t){throw Dn(t)||s.isInstance(t)?t:new s({message:`Failed to process error response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}throw t.value}try{return await r({response:c,url:e,requestBodyValues:n.values})}catch(t){throw t instanceof Error&&(Dn(t)||s.isInstance(t))?t:new s({message:`Failed to process successful response`,cause:t,statusCode:c.status,url:e,responseHeaders:l,requestBodyValues:n.values})}}catch(t){throw kn({error:t,url:e,requestBodyValues:n.values})}};function Zn(e){return e}function Qn({id:e,name:t,inputSchema:n}){return({execute:r,outputSchema:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>Zn({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:i,execute:r,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}function $n({id:e,name:t,inputSchema:n,outputSchema:r}){return({execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c,...l})=>Zn({type:`provider-defined`,id:e,name:t,args:l,inputSchema:n,outputSchema:r,execute:i,toModelOutput:a,onInputStart:o,onInputDelta:s,onInputAvailable:c})}async function er(e){return typeof e==`function`&&(e=e()),Promise.resolve(e)}var tr=({errorSchema:e,errorToMessage:t,isRetryable:n})=>async({response:r,url:i,requestBodyValues:a})=>{let o=await r.text(),c=Sn(r);if(o.trim()===``)return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})};try{let l=await Wn({text:o,schema:e});return{responseHeaders:c,value:new s({message:t(l),url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,data:l,isRetryable:n?.(r,l)})}}catch{return{responseHeaders:c,value:new s({message:r.statusText,url:i,requestBodyValues:a,statusCode:r.status,responseHeaders:c,responseBody:o,isRetryable:n?.(r)})}}},nr=e=>async({response:t})=>{let n=Sn(t);if(t.body==null)throw new u({});return{responseHeaders:n,value:Kn({stream:t.body,schema:e})}},rr=e=>async({response:t,url:n,requestBodyValues:r})=>{let i=await t.text(),a=await Gn({text:i,schema:e}),o=Sn(t);if(!a.success)throw new s({message:`Invalid JSON response`,cause:a.error,statusCode:t.status,responseHeaders:o,responseBody:i,url:n,requestBodyValues:r});return{responseHeaders:o,value:a.value,rawValue:a.rawValue}},{btoa:ir,atob:ar}=globalThis;function or(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCodePoint(e[n]);return ir(t)}function sr(e){return e instanceof Uint8Array?or(e):e}function cr(e){return e?.replace(/\/$/,``)}var lr=`2.0.17`,ur=M.object({error:M.object({code:M.number().nullable(),message:M.string(),status:M.string()})}),dr=tr({errorSchema:ur,errorToMessage:e=>e.error.message}),fr=M.object({outputDimensionality:M.number().optional(),taskType:M.enum([`SEMANTIC_SIMILARITY`,`CLASSIFICATION`,`CLUSTERING`,`RETRIEVAL_DOCUMENT`,`RETRIEVAL_QUERY`,`QUESTION_ANSWERING`,`FACT_VERIFICATION`,`CODE_RETRIEVAL_QUERY`]).optional()}),pr=class{constructor(e,t){this.specificationVersion=`v2`,this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0,this.modelId=e,this.config=t}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:n,providerOptions:r}){let i=await qn({provider:`google`,providerOptions:r,schema:fr});if(e.length>this.maxEmbeddingsPerCall)throw new b({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:e});let a=xn(await er(this.config.headers),t);if(e.length===1){let{responseHeaders:t,value:r,rawValue:o}=await Yn({url:`${this.config.baseURL}/models/${this.modelId}:embedContent`,headers:a,body:{model:`models/${this.modelId}`,content:{parts:[{text:e[0]}]},outputDimensionality:i?.outputDimensionality,taskType:i?.taskType},failedResponseHandler:dr,successfulResponseHandler:rr(hr),abortSignal:n,fetch:this.config.fetch});return{embeddings:[r.embedding.values],usage:void 0,response:{headers:t,body:o}}}let{responseHeaders:o,value:s,rawValue:c}=await Yn({url:`${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,headers:a,body:{requests:e.map(e=>({model:`models/${this.modelId}`,content:{role:`user`,parts:[{text:e}]},outputDimensionality:i?.outputDimensionality,taskType:i?.taskType}))},failedResponseHandler:dr,successfulResponseHandler:rr(mr),abortSignal:n,fetch:this.config.fetch});return{embeddings:s.embeddings.map(e=>e.values),usage:void 0,response:{headers:o,body:c}}}},mr=M.object({embeddings:M.array(M.object({values:M.array(M.number())}))}),hr=M.object({embedding:M.object({values:M.array(M.number())})});function gr(e){if(e==null||_r(e))return;if(typeof e==`boolean`)return{type:`boolean`,properties:{}};let{type:t,description:n,required:r,properties:i,items:a,allOf:o,anyOf:s,oneOf:c,format:l,const:u,minLength:d,enum:f}=e,p={};if(n&&(p.description=n),r&&(p.required=r),l&&(p.format=l),u!==void 0&&(p.enum=[u]),t&&(Array.isArray(t)?t.includes(`null`)?(p.type=t.filter(e=>e!==`null`)[0],p.nullable=!0):p.type=t:t===`null`?p.type=`null`:p.type=t),f!==void 0&&(p.enum=f),i!=null&&(p.properties=Object.entries(i).reduce((e,[t,n])=>(e[t]=gr(n),e),{})),a&&(p.items=Array.isArray(a)?a.map(gr):gr(a)),o&&(p.allOf=o.map(gr)),s)if(s.some(e=>typeof e==`object`&&e?.type===`null`)){let e=s.filter(e=>!(typeof e==`object`&&e?.type===`null`));if(e.length===1){let t=gr(e[0]);typeof t==`object`&&(p.nullable=!0,Object.assign(p,t))}else p.anyOf=e.map(gr),p.nullable=!0}else p.anyOf=s.map(gr);return c&&(p.oneOf=c.map(gr)),d!==void 0&&(p.minLength=d),p}function _r(e){return typeof e==`object`&&!!e&&e.type===`object`&&(e.properties==null||Object.keys(e.properties).length===0)&&!e.additionalProperties}function vr(e,t){let n=[],r=[],i=!0,a=t?.isGemmaModel??!1;for(let{role:t,content:a}of e)switch(t){case`system`:if(!i)throw new S({functionality:`system messages are only supported at the beginning of the conversation`});n.push({text:a});break;case`user`:{i=!1;let e=[];for(let t of a)switch(t.type){case`text`:e.push({text:t.text});break;case`file`:{let n=t.mediaType===`image/*`?`image/jpeg`:t.mediaType;e.push(t.data instanceof URL?{fileData:{mimeType:n,fileUri:t.data.toString()}}:{inlineData:{mimeType:n,data:sr(t.data)}});break}}r.push({role:`user`,parts:e});break}case`assistant`:i=!1,r.push({role:`model`,parts:a.map(e=>{switch(e.type){case`text`:return e.text.length===0?void 0:{text:e.text,thoughtSignature:e.providerOptions?.google?.thoughtSignature};case`reasoning`:return e.text.length===0?void 0:{text:e.text,thought:!0,thoughtSignature:e.providerOptions?.google?.thoughtSignature};case`file`:if(e.mediaType!==`image/png`)throw new S({functionality:`Only PNG images are supported in assistant messages`});if(e.data instanceof URL)throw new S({functionality:`File data URLs in assistant messages are not supported`});return{inlineData:{mimeType:e.mediaType,data:sr(e.data)}};case`tool-call`:return{functionCall:{name:e.toolName,args:e.input},thoughtSignature:e.providerOptions?.google?.thoughtSignature}}}).filter(e=>e!==void 0)});break;case`tool`:{i=!1;let e=[];for(let t of a){let n=t.output;if(n.type===`content`)for(let r of n.value)switch(r.type){case`text`:e.push({functionResponse:{name:t.toolName,response:{name:t.toolName,content:r.text}}});break;case`media`:e.push({inlineData:{mimeType:r.mediaType,data:r.data}},{text:`Tool executed successfully and returned this image as a response`});break;default:e.push({text:JSON.stringify(r)});break}else e.push({functionResponse:{name:t.toolName,response:{name:t.toolName,content:n.value}}})}r.push({role:`user`,parts:e});break}}if(a&&n.length>0&&r.length>0&&r[0].role===`user`){let e=n.map(e=>e.text).join(`
2
2
 
3
3
  `);r[0].parts.unshift({text:e+`
4
4
 
@@ -701,12 +701,12 @@ agent.serve();
701
701
  "deploy": "blink deploy"
702
702
  },
703
703
  "devDependencies": {
704
- "zod": "latest",
704
+ "zod": "^4",
705
705
  "ai": "^5",
706
706
  {{#if (eq aiProvider "anthropic")}}
707
- "@ai-sdk/anthropic": "latest",
707
+ "@ai-sdk/anthropic": "^2",
708
708
  {{else if (eq aiProvider "openai")}}
709
- "@ai-sdk/openai": "latest",
709
+ "@ai-sdk/openai": "^2",
710
710
  {{/if}}
711
711
  "blink": "latest",
712
712
  "esbuild": "latest",
@@ -1238,12 +1238,12 @@ agent.serve();
1238
1238
  "deploy": "blink deploy"
1239
1239
  },
1240
1240
  "devDependencies": {
1241
- "zod": "latest",
1241
+ "zod": "^4",
1242
1242
  "ai": "^5",
1243
1243
  {{#if (eq aiProvider "anthropic")}}
1244
- "@ai-sdk/anthropic": "latest",
1244
+ "@ai-sdk/anthropic": "^2",
1245
1245
  {{else if (eq aiProvider "openai")}}
1246
- "@ai-sdk/openai": "latest",
1246
+ "@ai-sdk/openai": "^2",
1247
1247
  {{/if}}
1248
1248
  "blink": "latest",
1249
1249
  "esbuild": "latest",
@@ -1843,12 +1843,12 @@ agent.serve();`,"package.json.hbs":`{
1843
1843
  "deploy": "blink deploy"
1844
1844
  },
1845
1845
  "devDependencies": {
1846
- "zod": "latest",
1846
+ "zod": "^4",
1847
1847
  "ai": "^5",
1848
1848
  {{#if (eq aiProvider "anthropic")}}
1849
- "@ai-sdk/anthropic": "latest",
1849
+ "@ai-sdk/anthropic": "^2",
1850
1850
  {{else if (eq aiProvider "openai")}}
1851
- "@ai-sdk/openai": "latest",
1851
+ "@ai-sdk/openai": "^2",
1852
1852
  {{/if}}
1853
1853
  "blink": "latest",
1854
1854
  "esbuild": "latest",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blink",
3
- "version": "1.1.39",
3
+ "version": "1.1.41",
4
4
  "description": "Blink is a tool for building and deploying AI agents.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1 +0,0 @@
1
- import"./wrapper-DRdRnzOz.js";import"./auth-CoSUgwyr.js";import{WorkspaceConnect as e,connect as t}from"./connect-Bv4IIsf7.js";export{e as WorkspaceConnect,t as default};
@@ -1 +0,0 @@
1
- import{loginIfNeeded as e}from"./auth-CoSUgwyr.js";async function t(t){await e(t)}export{t as default};
@@ -1 +0,0 @@
1
- import{deleteAuthToken as e}from"./auth-CoSUgwyr.js";function t(){e(),console.log(`Logged out successfully.`)}export{t as default};