@ai-sdk/provider-utils
Advanced tools
Comparing version 1.0.20 to 1.0.22
@@ -116,10 +116,21 @@ "use strict"; | ||
// src/generate-id.ts | ||
var import_provider = require("@ai-sdk/provider"); | ||
var import_non_secure = require("nanoid/non-secure"); | ||
var createIdGenerator = ({ | ||
prefix = "", | ||
prefix, | ||
size: defaultSize = 7, | ||
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" | ||
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", | ||
separator = "-" | ||
} = {}) => { | ||
const generator = (0, import_non_secure.customAlphabet)(alphabet, defaultSize); | ||
return (size) => `${prefix}${generator(size)}`; | ||
if (prefix == null) { | ||
return generator; | ||
} | ||
if (alphabet.includes(separator)) { | ||
throw new import_provider.InvalidArgumentError({ | ||
argument: "separator", | ||
message: `The separator "${separator}" must not be part of the alphabet "${alphabet}".` | ||
}); | ||
} | ||
return (size) => `${prefix}${separator}${generator(size)}`; | ||
}; | ||
@@ -148,3 +159,3 @@ var generateId = createIdGenerator(); | ||
// src/load-api-key.ts | ||
var import_provider = require("@ai-sdk/provider"); | ||
var import_provider2 = require("@ai-sdk/provider"); | ||
function loadApiKey({ | ||
@@ -160,3 +171,3 @@ apiKey, | ||
if (apiKey != null) { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key must be a string.` | ||
@@ -166,3 +177,3 @@ }); | ||
if (typeof process === "undefined") { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter. Environment variables is not supported in this environment.` | ||
@@ -173,3 +184,3 @@ }); | ||
if (apiKey == null) { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter or the ${environmentVariableName} environment variable.` | ||
@@ -179,3 +190,3 @@ }); | ||
if (typeof apiKey !== "string") { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key must be a string. The value of the ${environmentVariableName} environment variable is not a string.` | ||
@@ -188,3 +199,3 @@ }); | ||
// src/load-setting.ts | ||
var import_provider2 = require("@ai-sdk/provider"); | ||
var import_provider3 = require("@ai-sdk/provider"); | ||
function loadSetting({ | ||
@@ -200,3 +211,3 @@ settingValue, | ||
if (settingValue != null) { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting must be a string.` | ||
@@ -206,3 +217,3 @@ }); | ||
if (typeof process === "undefined") { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting is missing. Pass it using the '${settingName}' parameter. Environment variables is not supported in this environment.` | ||
@@ -213,3 +224,3 @@ }); | ||
if (settingValue == null) { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting is missing. Pass it using the '${settingName}' parameter or the ${environmentVariableName} environment variable.` | ||
@@ -219,3 +230,3 @@ }); | ||
if (typeof settingValue !== "string") { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting must be a string. The value of the ${environmentVariableName} environment variable is not a string.` | ||
@@ -246,7 +257,7 @@ }); | ||
// src/parse-json.ts | ||
var import_provider4 = require("@ai-sdk/provider"); | ||
var import_provider5 = require("@ai-sdk/provider"); | ||
var import_secure_json_parse = __toESM(require("secure-json-parse")); | ||
// src/validate-types.ts | ||
var import_provider3 = require("@ai-sdk/provider"); | ||
var import_provider4 = require("@ai-sdk/provider"); | ||
@@ -278,3 +289,3 @@ // src/validator.ts | ||
if (!result.success) { | ||
throw import_provider3.TypeValidationError.wrap({ value, cause: result.error }); | ||
throw import_provider4.TypeValidationError.wrap({ value, cause: result.error }); | ||
} | ||
@@ -298,3 +309,3 @@ return result.value; | ||
success: false, | ||
error: import_provider3.TypeValidationError.wrap({ value, cause: result.error }) | ||
error: import_provider4.TypeValidationError.wrap({ value, cause: result.error }) | ||
}; | ||
@@ -304,3 +315,3 @@ } catch (error) { | ||
success: false, | ||
error: import_provider3.TypeValidationError.wrap({ value, cause: error }) | ||
error: import_provider4.TypeValidationError.wrap({ value, cause: error }) | ||
}; | ||
@@ -322,6 +333,6 @@ } | ||
} catch (error) { | ||
if (import_provider4.JSONParseError.isJSONParseError(error) || import_provider4.TypeValidationError.isTypeValidationError(error)) { | ||
if (import_provider5.JSONParseError.isJSONParseError(error) || import_provider5.TypeValidationError.isTypeValidationError(error)) { | ||
throw error; | ||
} | ||
throw new import_provider4.JSONParseError({ text, cause: error }); | ||
throw new import_provider5.JSONParseError({ text, cause: error }); | ||
} | ||
@@ -345,3 +356,3 @@ } | ||
success: false, | ||
error: import_provider4.JSONParseError.isJSONParseError(error) ? error : new import_provider4.JSONParseError({ text, cause: error }) | ||
error: import_provider5.JSONParseError.isJSONParseError(error) ? error : new import_provider5.JSONParseError({ text, cause: error }) | ||
}; | ||
@@ -361,3 +372,3 @@ } | ||
// src/post-to-api.ts | ||
var import_provider5 = require("@ai-sdk/provider"); | ||
var import_provider6 = require("@ai-sdk/provider"); | ||
@@ -422,6 +433,6 @@ // src/remove-undefined-entries.ts | ||
} catch (error) { | ||
if (isAbortError(error) || import_provider5.APICallError.isAPICallError(error)) { | ||
if (isAbortError(error) || import_provider6.APICallError.isAPICallError(error)) { | ||
throw error; | ||
} | ||
throw new import_provider5.APICallError({ | ||
throw new import_provider6.APICallError({ | ||
message: "Failed to process error response", | ||
@@ -445,7 +456,7 @@ cause: error, | ||
if (error instanceof Error) { | ||
if (isAbortError(error) || import_provider5.APICallError.isAPICallError(error)) { | ||
if (isAbortError(error) || import_provider6.APICallError.isAPICallError(error)) { | ||
throw error; | ||
} | ||
} | ||
throw new import_provider5.APICallError({ | ||
throw new import_provider6.APICallError({ | ||
message: "Failed to process successful response", | ||
@@ -466,3 +477,3 @@ cause: error, | ||
if (cause != null) { | ||
throw new import_provider5.APICallError({ | ||
throw new import_provider6.APICallError({ | ||
message: `Cannot connect to API: ${cause.message}`, | ||
@@ -482,3 +493,3 @@ cause, | ||
// src/response-handler.ts | ||
var import_provider6 = require("@ai-sdk/provider"); | ||
var import_provider7 = require("@ai-sdk/provider"); | ||
var import_stream = require("eventsource-parser/stream"); | ||
@@ -495,3 +506,3 @@ var createJsonErrorResponseHandler = ({ | ||
responseHeaders, | ||
value: new import_provider6.APICallError({ | ||
value: new import_provider7.APICallError({ | ||
message: response.statusText, | ||
@@ -514,3 +525,3 @@ url, | ||
responseHeaders, | ||
value: new import_provider6.APICallError({ | ||
value: new import_provider7.APICallError({ | ||
message: errorToMessage(parsedError), | ||
@@ -529,3 +540,3 @@ url, | ||
responseHeaders, | ||
value: new import_provider6.APICallError({ | ||
value: new import_provider7.APICallError({ | ||
message: response.statusText, | ||
@@ -545,3 +556,3 @@ url, | ||
if (response.body == null) { | ||
throw new import_provider6.EmptyResponseBodyError({}); | ||
throw new import_provider7.EmptyResponseBodyError({}); | ||
} | ||
@@ -570,3 +581,3 @@ return { | ||
if (response.body == null) { | ||
throw new import_provider6.EmptyResponseBodyError({}); | ||
throw new import_provider7.EmptyResponseBodyError({}); | ||
} | ||
@@ -603,3 +614,3 @@ let buffer = ""; | ||
if (!parsedResult.success) { | ||
throw new import_provider6.APICallError({ | ||
throw new import_provider7.APICallError({ | ||
message: "Invalid JSON response", | ||
@@ -606,0 +617,0 @@ cause: parsedResult.error, |
# @ai-sdk/provider-utils | ||
## 1.0.22 | ||
### Patch Changes | ||
- aa98cdb: chore: more flexible dependency versioning | ||
- 7b937c5: feat (provider-utils): improve id generator robustness | ||
- 811a317: feat (ai/core): multi-part tool results (incl. images) | ||
- Updated dependencies [aa98cdb] | ||
- Updated dependencies [1486128] | ||
- Updated dependencies [7b937c5] | ||
- Updated dependencies [3b1b69a] | ||
- Updated dependencies [811a317] | ||
- @ai-sdk/provider@0.0.26 | ||
## 1.0.21 | ||
### Patch Changes | ||
- Updated dependencies [b9b0d7b] | ||
- @ai-sdk/provider@0.0.25 | ||
## 1.0.20 | ||
@@ -4,0 +25,0 @@ |
@@ -29,10 +29,12 @@ import { JSONValue, JSONParseError, TypeValidationError, APICallError } from '@ai-sdk/provider'; | ||
/** | ||
* Creates an ID generator that uses an alphabet of digits, uppercase and lowercase letters. | ||
* Creates an ID generator. The total length of the ID is the sum of the prefix, separator, and random part length. | ||
* | ||
* @param alphabet - The alphabet to use for the ID. Default: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'. | ||
* @param prefix - The prefix of the ID to generate. Default: ''. | ||
* @param separator - The separator between the prefix and the random part of the ID. Default: '-'. | ||
* @param size - The size of the random part of the ID to generate. Default: 7. | ||
*/ | ||
declare const createIdGenerator: ({ prefix, size: defaultSize, alphabet, }?: { | ||
declare const createIdGenerator: ({ prefix, size: defaultSize, alphabet, separator, }?: { | ||
prefix?: string; | ||
separator?: string; | ||
size?: number; | ||
@@ -259,2 +261,44 @@ alphabet?: string; | ||
export { type FetchFunction, type ParseResult, type ResponseHandler, type ValidationResult, type Validator, asValidator, combineHeaders, convertAsyncGeneratorToReadableStream, convertBase64ToUint8Array, convertUint8ArrayToBase64, createEventSourceResponseHandler, createIdGenerator, createJsonErrorResponseHandler, createJsonResponseHandler, createJsonStreamResponseHandler, extractResponseHeaders, generateId, getErrorMessage, isAbortError, isParsableJson, isParseableJson, isValidator, loadApiKey, loadOptionalSetting, loadSetting, parseJSON, postJsonToApi, postToApi, safeParseJSON, safeValidateTypes, validateTypes, validator, validatorSymbol, withoutTrailingSlash, zodValidator }; | ||
/** | ||
Typed tool call that is returned by generateText and streamText. | ||
It contains the tool call ID, the tool name, and the tool arguments. | ||
*/ | ||
interface ToolCall<NAME extends string, ARGS> { | ||
/** | ||
ID of the tool call. This ID is used to match the tool call with the tool result. | ||
*/ | ||
toolCallId: string; | ||
/** | ||
Name of the tool that is being called. | ||
*/ | ||
toolName: NAME; | ||
/** | ||
Arguments of the tool call. This is a JSON-serializable object that matches the tool's input schema. | ||
*/ | ||
args: ARGS; | ||
} | ||
/** | ||
Typed tool result that is returned by `generateText` and `streamText`. | ||
It contains the tool call ID, the tool name, the tool arguments, and the tool result. | ||
*/ | ||
interface ToolResult<NAME extends string, ARGS, RESULT> { | ||
/** | ||
ID of the tool call. This ID is used to match the tool call with the tool result. | ||
*/ | ||
toolCallId: string; | ||
/** | ||
Name of the tool that was called. | ||
*/ | ||
toolName: NAME; | ||
/** | ||
Arguments of the tool call. This is a JSON-serializable object that matches the tool's input schema. | ||
*/ | ||
args: ARGS; | ||
/** | ||
Result of the tool call. This is the result of the tool's execution. | ||
*/ | ||
result: RESULT; | ||
} | ||
export { type FetchFunction, type ParseResult, type ResponseHandler, type ToolCall, type ToolResult, type ValidationResult, type Validator, asValidator, combineHeaders, convertAsyncGeneratorToReadableStream, convertBase64ToUint8Array, convertUint8ArrayToBase64, createEventSourceResponseHandler, createIdGenerator, createJsonErrorResponseHandler, createJsonResponseHandler, createJsonStreamResponseHandler, extractResponseHeaders, generateId, getErrorMessage, isAbortError, isParsableJson, isParseableJson, isValidator, loadApiKey, loadOptionalSetting, loadSetting, parseJSON, postJsonToApi, postToApi, safeParseJSON, safeValidateTypes, validateTypes, validator, validatorSymbol, withoutTrailingSlash, zodValidator }; |
@@ -116,10 +116,21 @@ "use strict"; | ||
// src/generate-id.ts | ||
var import_provider = require("@ai-sdk/provider"); | ||
var import_non_secure = require("nanoid/non-secure"); | ||
var createIdGenerator = ({ | ||
prefix = "", | ||
prefix, | ||
size: defaultSize = 7, | ||
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" | ||
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", | ||
separator = "-" | ||
} = {}) => { | ||
const generator = (0, import_non_secure.customAlphabet)(alphabet, defaultSize); | ||
return (size) => `${prefix}${generator(size)}`; | ||
if (prefix == null) { | ||
return generator; | ||
} | ||
if (alphabet.includes(separator)) { | ||
throw new import_provider.InvalidArgumentError({ | ||
argument: "separator", | ||
message: `The separator "${separator}" must not be part of the alphabet "${alphabet}".` | ||
}); | ||
} | ||
return (size) => `${prefix}${separator}${generator(size)}`; | ||
}; | ||
@@ -148,3 +159,3 @@ var generateId = createIdGenerator(); | ||
// src/load-api-key.ts | ||
var import_provider = require("@ai-sdk/provider"); | ||
var import_provider2 = require("@ai-sdk/provider"); | ||
function loadApiKey({ | ||
@@ -160,3 +171,3 @@ apiKey, | ||
if (apiKey != null) { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key must be a string.` | ||
@@ -166,3 +177,3 @@ }); | ||
if (typeof process === "undefined") { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter. Environment variables is not supported in this environment.` | ||
@@ -173,3 +184,3 @@ }); | ||
if (apiKey == null) { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter or the ${environmentVariableName} environment variable.` | ||
@@ -179,3 +190,3 @@ }); | ||
if (typeof apiKey !== "string") { | ||
throw new import_provider.LoadAPIKeyError({ | ||
throw new import_provider2.LoadAPIKeyError({ | ||
message: `${description} API key must be a string. The value of the ${environmentVariableName} environment variable is not a string.` | ||
@@ -188,3 +199,3 @@ }); | ||
// src/load-setting.ts | ||
var import_provider2 = require("@ai-sdk/provider"); | ||
var import_provider3 = require("@ai-sdk/provider"); | ||
function loadSetting({ | ||
@@ -200,3 +211,3 @@ settingValue, | ||
if (settingValue != null) { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting must be a string.` | ||
@@ -206,3 +217,3 @@ }); | ||
if (typeof process === "undefined") { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting is missing. Pass it using the '${settingName}' parameter. Environment variables is not supported in this environment.` | ||
@@ -213,3 +224,3 @@ }); | ||
if (settingValue == null) { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting is missing. Pass it using the '${settingName}' parameter or the ${environmentVariableName} environment variable.` | ||
@@ -219,3 +230,3 @@ }); | ||
if (typeof settingValue !== "string") { | ||
throw new import_provider2.LoadSettingError({ | ||
throw new import_provider3.LoadSettingError({ | ||
message: `${description} setting must be a string. The value of the ${environmentVariableName} environment variable is not a string.` | ||
@@ -246,7 +257,7 @@ }); | ||
// src/parse-json.ts | ||
var import_provider4 = require("@ai-sdk/provider"); | ||
var import_provider5 = require("@ai-sdk/provider"); | ||
var import_secure_json_parse = __toESM(require("secure-json-parse")); | ||
// src/validate-types.ts | ||
var import_provider3 = require("@ai-sdk/provider"); | ||
var import_provider4 = require("@ai-sdk/provider"); | ||
@@ -278,3 +289,3 @@ // src/validator.ts | ||
if (!result.success) { | ||
throw import_provider3.TypeValidationError.wrap({ value, cause: result.error }); | ||
throw import_provider4.TypeValidationError.wrap({ value, cause: result.error }); | ||
} | ||
@@ -298,3 +309,3 @@ return result.value; | ||
success: false, | ||
error: import_provider3.TypeValidationError.wrap({ value, cause: result.error }) | ||
error: import_provider4.TypeValidationError.wrap({ value, cause: result.error }) | ||
}; | ||
@@ -304,3 +315,3 @@ } catch (error) { | ||
success: false, | ||
error: import_provider3.TypeValidationError.wrap({ value, cause: error }) | ||
error: import_provider4.TypeValidationError.wrap({ value, cause: error }) | ||
}; | ||
@@ -322,6 +333,6 @@ } | ||
} catch (error) { | ||
if (import_provider4.JSONParseError.isJSONParseError(error) || import_provider4.TypeValidationError.isTypeValidationError(error)) { | ||
if (import_provider5.JSONParseError.isJSONParseError(error) || import_provider5.TypeValidationError.isTypeValidationError(error)) { | ||
throw error; | ||
} | ||
throw new import_provider4.JSONParseError({ text, cause: error }); | ||
throw new import_provider5.JSONParseError({ text, cause: error }); | ||
} | ||
@@ -345,3 +356,3 @@ } | ||
success: false, | ||
error: import_provider4.JSONParseError.isJSONParseError(error) ? error : new import_provider4.JSONParseError({ text, cause: error }) | ||
error: import_provider5.JSONParseError.isJSONParseError(error) ? error : new import_provider5.JSONParseError({ text, cause: error }) | ||
}; | ||
@@ -361,3 +372,3 @@ } | ||
// src/post-to-api.ts | ||
var import_provider5 = require("@ai-sdk/provider"); | ||
var import_provider6 = require("@ai-sdk/provider"); | ||
@@ -422,6 +433,6 @@ // src/remove-undefined-entries.ts | ||
} catch (error) { | ||
if (isAbortError(error) || import_provider5.APICallError.isAPICallError(error)) { | ||
if (isAbortError(error) || import_provider6.APICallError.isAPICallError(error)) { | ||
throw error; | ||
} | ||
throw new import_provider5.APICallError({ | ||
throw new import_provider6.APICallError({ | ||
message: "Failed to process error response", | ||
@@ -445,7 +456,7 @@ cause: error, | ||
if (error instanceof Error) { | ||
if (isAbortError(error) || import_provider5.APICallError.isAPICallError(error)) { | ||
if (isAbortError(error) || import_provider6.APICallError.isAPICallError(error)) { | ||
throw error; | ||
} | ||
} | ||
throw new import_provider5.APICallError({ | ||
throw new import_provider6.APICallError({ | ||
message: "Failed to process successful response", | ||
@@ -466,3 +477,3 @@ cause: error, | ||
if (cause != null) { | ||
throw new import_provider5.APICallError({ | ||
throw new import_provider6.APICallError({ | ||
message: `Cannot connect to API: ${cause.message}`, | ||
@@ -482,3 +493,3 @@ cause, | ||
// src/response-handler.ts | ||
var import_provider6 = require("@ai-sdk/provider"); | ||
var import_provider7 = require("@ai-sdk/provider"); | ||
var import_stream = require("eventsource-parser/stream"); | ||
@@ -495,3 +506,3 @@ var createJsonErrorResponseHandler = ({ | ||
responseHeaders, | ||
value: new import_provider6.APICallError({ | ||
value: new import_provider7.APICallError({ | ||
message: response.statusText, | ||
@@ -514,3 +525,3 @@ url, | ||
responseHeaders, | ||
value: new import_provider6.APICallError({ | ||
value: new import_provider7.APICallError({ | ||
message: errorToMessage(parsedError), | ||
@@ -529,3 +540,3 @@ url, | ||
responseHeaders, | ||
value: new import_provider6.APICallError({ | ||
value: new import_provider7.APICallError({ | ||
message: response.statusText, | ||
@@ -545,3 +556,3 @@ url, | ||
if (response.body == null) { | ||
throw new import_provider6.EmptyResponseBodyError({}); | ||
throw new import_provider7.EmptyResponseBodyError({}); | ||
} | ||
@@ -570,3 +581,3 @@ return { | ||
if (response.body == null) { | ||
throw new import_provider6.EmptyResponseBodyError({}); | ||
throw new import_provider7.EmptyResponseBodyError({}); | ||
} | ||
@@ -603,3 +614,3 @@ let buffer = ""; | ||
if (!parsedResult.success) { | ||
throw new import_provider6.APICallError({ | ||
throw new import_provider7.APICallError({ | ||
message: "Invalid JSON response", | ||
@@ -606,0 +617,0 @@ cause: parsedResult.error, |
{ | ||
"name": "@ai-sdk/provider-utils", | ||
"version": "1.0.20", | ||
"version": "1.0.22", | ||
"license": "Apache-2.0", | ||
@@ -29,6 +29,6 @@ "sideEffects": false, | ||
"dependencies": { | ||
"@ai-sdk/provider": "0.0.24", | ||
"eventsource-parser": "1.1.2", | ||
"nanoid": "3.3.6", | ||
"secure-json-parse": "2.7.0" | ||
"@ai-sdk/provider": "0.0.26", | ||
"eventsource-parser": "^1.1.2", | ||
"nanoid": "^3.3.7", | ||
"secure-json-parse": "^2.7.0" | ||
}, | ||
@@ -35,0 +35,0 @@ "devDependencies": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1313009
13255
+ Added@ai-sdk/provider@0.0.26(transitive)
+ Addednanoid@3.3.7(transitive)
- Removed@ai-sdk/provider@0.0.24(transitive)
- Removednanoid@3.3.6(transitive)
Updated@ai-sdk/provider@0.0.26
Updatedeventsource-parser@^1.1.2
Updatednanoid@^3.3.7
Updatedsecure-json-parse@^2.7.0