You're Invited:Meet the Socket Team at RSAC and BSidesSF 2026, March 23–26.RSVP
Socket
Book a DemoSign in
Socket

ai

Package Overview
Dependencies
Maintainers
5
Versions
1016
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ai - npm Package Compare versions

Comparing version
7.0.0-beta.20
to
7.0.0-beta.21
+36
src/generate-text/create-stream-text-part-transform.ts
import { LanguageModelV4StreamPart } from '@ai-sdk/provider';
import { ProviderMetadata } from '../types/provider-metadata';
export type UglyTransformedStreamTextPart =
| Exclude<
LanguageModelV4StreamPart,
{
type: 'text-delta';
}
>
| {
type: 'text-delta';
id: string;
providerMetadata?: ProviderMetadata;
text: string;
};
export function createStreamTextPartTransform() {
return new TransformStream<
LanguageModelV4StreamPart,
UglyTransformedStreamTextPart
>({
async transform(chunk, controller) {
if (chunk.type === 'text-delta') {
controller.enqueue({
type: 'text-delta',
id: chunk.id,
text: chunk.delta,
providerMetadata: chunk.providerMetadata,
});
} else {
controller.enqueue(chunk);
}
},
});
}
+1
-0

@@ -96,2 +96,3 @@ import { SystemModelMessage, ModelMessage, Tool } from '@ai-sdk/provider-utils';

chunkMs?: number;
toolMs?: number;
};

@@ -98,0 +99,0 @@ type CallSettings = {

@@ -96,2 +96,3 @@ import { SystemModelMessage, ModelMessage, Tool } from '@ai-sdk/provider-utils';

chunkMs?: number;
toolMs?: number;
};

@@ -98,0 +99,0 @@ type CallSettings = {

+1
-1

@@ -156,3 +156,3 @@ "use strict";

// src/version.ts
var VERSION = true ? "7.0.0-beta.20" : "0.0.0-test";
var VERSION = true ? "7.0.0-beta.21" : "0.0.0-test";

@@ -159,0 +159,0 @@ // src/util/download/download.ts

@@ -136,3 +136,3 @@ // internal/index.ts

// src/version.ts
var VERSION = true ? "7.0.0-beta.20" : "0.0.0-test";
var VERSION = true ? "7.0.0-beta.21" : "0.0.0-test";

@@ -139,0 +139,0 @@ // src/util/download/download.ts

{
"name": "ai",
"version": "7.0.0-beta.20",
"version": "7.0.0-beta.21",
"description": "AI SDK by Vercel - The AI Toolkit for TypeScript and JavaScript",

@@ -5,0 +5,0 @@ "license": "Apache-2.0",

@@ -33,2 +33,3 @@ import { executeTool, ModelMessage } from '@ai-sdk/provider-utils';

abortSignal,
toolTimeoutMs,
experimental_context,

@@ -48,2 +49,3 @@ stepNumber,

abortSignal: AbortSignal | undefined;
toolTimeoutMs?: number | undefined;
experimental_context: unknown;

@@ -88,2 +90,9 @@ stepNumber?: number;

const toolAbortSignal =
toolTimeoutMs != null
? abortSignal != null
? AbortSignal.any([abortSignal, AbortSignal.timeout(toolTimeoutMs)])
: AbortSignal.timeout(toolTimeoutMs)
: abortSignal;
const startTime = now();

@@ -107,3 +116,3 @@

messages,
abortSignal,
abortSignal: toolAbortSignal,
experimental_context,

@@ -110,0 +119,0 @@ },

@@ -24,2 +24,3 @@ import {

getStepTimeoutMs,
getToolTimeoutMs,
getTotalTimeoutMs,

@@ -453,2 +454,3 @@ TimeoutConfiguration,

const stepTimeoutMs = getStepTimeoutMs(timeout);
const toolTimeoutMs = getToolTimeoutMs(timeout);
const stepAbortController =

@@ -553,2 +555,3 @@ stepTimeoutMs != null ? new AbortController() : undefined;

abortSignal: mergedAbortSignal,
toolTimeoutMs,
experimental_context,

@@ -876,2 +879,3 @@ stepNumber: 0,

abortSignal: mergedAbortSignal,
toolTimeoutMs,
experimental_context,

@@ -1109,2 +1113,3 @@ stepNumber: steps.length,

abortSignal,
toolTimeoutMs,
experimental_context,

@@ -1123,2 +1128,3 @@ stepNumber,

abortSignal: AbortSignal | undefined;
toolTimeoutMs?: number | undefined;
experimental_context: unknown;

@@ -1140,2 +1146,3 @@ stepNumber: number;

abortSignal,
toolTimeoutMs,
experimental_context,

@@ -1142,0 +1149,0 @@ stepNumber,

@@ -1,2 +0,2 @@

import { LanguageModelV4StreamPart, SharedV4Warning } from '@ai-sdk/provider';
import { SharedV4Warning } from '@ai-sdk/provider';
import {

@@ -14,3 +14,7 @@ getErrorMessage,

import { asLanguageModelUsage } from '../types/usage';
import { UglyTransformedStreamTextPart } from './create-stream-text-part-transform';
import { executeToolCall } from './execute-tool-call';
import { DefaultGeneratedFileWithType, GeneratedFile } from './generated-file';
import { isApprovalNeeded } from './is-approval-needed';
import { parseToolCall } from './parse-tool-call';
import {

@@ -20,5 +24,2 @@ StreamTextOnToolCallFinishCallback,

} from './stream-text';
import { DefaultGeneratedFileWithType, GeneratedFile } from './generated-file';
import { isApprovalNeeded } from './is-approval-needed';
import { parseToolCall } from './parse-tool-call';
import { ToolApprovalRequestOutput } from './tool-approval-request-output';

@@ -127,2 +128,3 @@ import { TypedToolCall } from './tool-call';

repairToolCall,
toolTimeoutMs,
experimental_context,

@@ -137,3 +139,3 @@ generateId,

tools: TOOLS | undefined;
generatorStream: ReadableStream<LanguageModelV4StreamPart>;
generatorStream: ReadableStream<UglyTransformedStreamTextPart>;
telemetry: TelemetrySettings | undefined;

@@ -145,2 +147,3 @@ callId: string;

repairToolCall: ToolCallRepairFunction<TOOLS> | undefined;
toolTimeoutMs?: number | undefined;
experimental_context: unknown;

@@ -200,7 +203,7 @@ generateId: IdGenerator;

const forwardStream = new TransformStream<
LanguageModelV4StreamPart,
UglyTransformedStreamTextPart,
SingleRequestTextStreamPart<TOOLS>
>({
async transform(
chunk: LanguageModelV4StreamPart,
chunk: UglyTransformedStreamTextPart,
controller: TransformStreamDefaultController<

@@ -216,2 +219,3 @@ SingleRequestTextStreamPart<TOOLS>

case 'text-start':
case 'text-delta':
case 'text-end':

@@ -231,11 +235,2 @@ case 'reasoning-start':

case 'text-delta':
controller.enqueue({
type: 'text-delta',
id: chunk.id,
text: chunk.delta,
providerMetadata: chunk.providerMetadata,
});
break;
case 'reasoning-delta':

@@ -375,2 +370,3 @@ controller.enqueue({

abortSignal,
toolTimeoutMs,
experimental_context,

@@ -377,0 +373,0 @@ stepNumber,

@@ -10,3 +10,3 @@ /**

| number
| { totalMs?: number; stepMs?: number; chunkMs?: number };
| { totalMs?: number; stepMs?: number; chunkMs?: number; toolMs?: number };

@@ -62,2 +62,11 @@ /**

export function getToolTimeoutMs(
timeout: TimeoutConfiguration | undefined,
): number | undefined {
if (timeout == null || typeof timeout === 'number') {
return undefined;
}
return timeout.toolMs;
}
export type CallSettings = {

@@ -64,0 +73,0 @@ /**

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display