@ai-sdk/provider 0.0.19 → 0.0.21

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.
package/dist/index.d.mts CHANGED
@@ -192,9 +192,10 @@ declare const symbol$8: unique symbol;
192
192
  declare class InvalidPromptError extends AISDKError {
193
193
  private readonly [symbol$8];
194
194
  readonly prompt: unknown;
195
- constructor({ prompt, message }: {
195
+ constructor({ prompt, message, cause, }: {
196
196
  prompt: unknown;
197
197
  message: string;
198
+ cause?: unknown;
198
199
  });
199
200
  static isInstance(error: unknown): error is InvalidPromptError;
200
201
  /**
@@ -410,6 +411,16 @@ declare class UnsupportedFunctionalityError extends AISDKError {
410
411
  };
411
412
  }
412
413
 
414
+ type JSONValue = null | string | number | boolean | JSONObject | JSONArray;
415
+ type JSONObject = {
416
+ [key: string]: JSONValue;
417
+ };
418
+ type JSONArray = JSONValue[];
419
+
420
+ declare function isJSONValue(value: unknown): value is JSONValue;
421
+ declare function isJSONArray(value: unknown): value is JSONArray;
422
+ declare function isJSONObject(value: unknown): value is JSONObject;
423
+
413
424
  type LanguageModelV1CallSettings = {
414
425
  /**
415
426
  Maximum number of tokens to generate.
@@ -516,6 +527,27 @@ type LanguageModelV1FunctionTool = {
516
527
  parameters: JSONSchema7;
517
528
  };
518
529
 
530
+ /**
531
+ * Additional provider-specific metadata. They are passed through
532
+ * to the provider from the AI SDK and enable provider-specific
533
+ * functionality that can be fully encapsulated in the provider.
534
+ *
535
+ * This enables us to quickly ship provider-specific functionality
536
+ * without affecting the core AI SDK.
537
+ *
538
+ * The outer record is keyed by the provider name, and the inner
539
+ * record is keyed by the provider-specific metadata key.
540
+ *
541
+ * ```ts
542
+ * {
543
+ * "anthropic": {
544
+ * "cacheControl": { "type": "ephemeral" }
545
+ * }
546
+ * }
547
+ * ```
548
+ */
549
+ type LanguageModelV1ProviderMetadata = Record<string, Record<string, JSONValue>>;
550
+
519
551
  /**
520
552
  A prompt is a list of messages.
521
553
 
@@ -526,7 +558,7 @@ Note: This is not a user-facing prompt. The AI SDK methods will map the
526
558
  user-facing prompt types such as chat or instruction prompts to this format.
527
559
  */
528
560
  type LanguageModelV1Prompt = Array<LanguageModelV1Message>;
529
- type LanguageModelV1Message = {
561
+ type LanguageModelV1Message = ({
530
562
  role: 'system';
531
563
  content: string;
532
564
  } | {
@@ -538,6 +570,13 @@ type LanguageModelV1Message = {
538
570
  } | {
539
571
  role: 'tool';
540
572
  content: Array<LanguageModelV1ToolResultPart>;
573
+ }) & {
574
+ /**
575
+ * Additional provider-specific metadata. They are passed through
576
+ * to the provider from the AI SDK and enable provider-specific
577
+ * functionality that can be fully encapsulated in the provider.
578
+ */
579
+ providerMetadata?: LanguageModelV1ProviderMetadata;
541
580
  };
542
581
  /**
543
582
  Text content part of a prompt. It contains a string of text.
@@ -548,6 +587,12 @@ interface LanguageModelV1TextPart {
548
587
  The text content.
549
588
  */
550
589
  text: string;
590
+ /**
591
+ * Additional provider-specific metadata. They are passed through
592
+ * to the provider from the AI SDK and enable provider-specific
593
+ * functionality that can be fully encapsulated in the provider.
594
+ */
595
+ providerMetadata?: LanguageModelV1ProviderMetadata;
551
596
  }
552
597
  /**
553
598
  Image content part of a prompt. It contains an image.
@@ -562,6 +607,12 @@ interface LanguageModelV1ImagePart {
562
607
  Optional mime type of the image.
563
608
  */
564
609
  mimeType?: string;
610
+ /**
611
+ * Additional provider-specific metadata. They are passed through
612
+ * to the provider from the AI SDK and enable provider-specific
613
+ * functionality that can be fully encapsulated in the provider.
614
+ */
615
+ providerMetadata?: LanguageModelV1ProviderMetadata;
565
616
  }
566
617
  /**
567
618
  Tool call content part of a prompt. It contains a tool call (usually generated by the AI model).
@@ -602,6 +653,12 @@ interface LanguageModelV1ToolResultPart {
602
653
  Optional flag if the result is an error or an error message.
603
654
  */
604
655
  isError?: boolean;
656
+ /**
657
+ * Additional provider-specific metadata. They are passed through
658
+ * to the provider from the AI SDK and enable provider-specific
659
+ * functionality that can be fully encapsulated in the provider.
660
+ */
661
+ providerMetadata?: LanguageModelV1ProviderMetadata;
605
662
  }
606
663
 
607
664
  type LanguageModelV1ToolChoice = {
@@ -833,6 +890,12 @@ type LanguageModelV1 = {
833
890
  };
834
891
  warnings?: LanguageModelV1CallWarning[];
835
892
  /**
893
+ Additional provider-specific metadata. They are passed through
894
+ from the provider to the AI SDK and enable provider-specific
895
+ results that can be fully encapsulated in the provider.
896
+ */
897
+ providerMetadata?: LanguageModelV1ProviderMetadata;
898
+ /**
836
899
  Logprobs for the completion.
837
900
  `undefined` if the mode does not support logprobs or if was not enabled
838
901
  */
@@ -890,6 +953,7 @@ type LanguageModelV1StreamPart = {
890
953
  type: 'finish';
891
954
  finishReason: LanguageModelV1FinishReason;
892
955
  logprobs?: LanguageModelV1LogProbs;
956
+ providerMetadata?: LanguageModelV1ProviderMetadata;
893
957
  usage: {
894
958
  promptTokens: number;
895
959
  completionTokens: number;
@@ -900,4 +964,4 @@ type LanguageModelV1StreamPart = {
900
964
  };
901
965
  type LanguageModelV1ResponseMetadata = {};
902
966
 
903
- export { AISDKError, APICallError, type EmbeddingModelV1, type EmbeddingModelV1Embedding, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1Prompt, type LanguageModelV1ResponseMetadata, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage };
967
+ export { AISDKError, APICallError, type EmbeddingModelV1, type EmbeddingModelV1Embedding, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1Prompt, type LanguageModelV1ProviderMetadata, type LanguageModelV1ResponseMetadata, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
package/dist/index.d.ts CHANGED
@@ -192,9 +192,10 @@ declare const symbol$8: unique symbol;
192
192
  declare class InvalidPromptError extends AISDKError {
193
193
  private readonly [symbol$8];
194
194
  readonly prompt: unknown;
195
- constructor({ prompt, message }: {
195
+ constructor({ prompt, message, cause, }: {
196
196
  prompt: unknown;
197
197
  message: string;
198
+ cause?: unknown;
198
199
  });
199
200
  static isInstance(error: unknown): error is InvalidPromptError;
200
201
  /**
@@ -410,6 +411,16 @@ declare class UnsupportedFunctionalityError extends AISDKError {
410
411
  };
411
412
  }
412
413
 
414
+ type JSONValue = null | string | number | boolean | JSONObject | JSONArray;
415
+ type JSONObject = {
416
+ [key: string]: JSONValue;
417
+ };
418
+ type JSONArray = JSONValue[];
419
+
420
+ declare function isJSONValue(value: unknown): value is JSONValue;
421
+ declare function isJSONArray(value: unknown): value is JSONArray;
422
+ declare function isJSONObject(value: unknown): value is JSONObject;
423
+
413
424
  type LanguageModelV1CallSettings = {
414
425
  /**
415
426
  Maximum number of tokens to generate.
@@ -516,6 +527,27 @@ type LanguageModelV1FunctionTool = {
516
527
  parameters: JSONSchema7;
517
528
  };
518
529
 
530
+ /**
531
+ * Additional provider-specific metadata. They are passed through
532
+ * to the provider from the AI SDK and enable provider-specific
533
+ * functionality that can be fully encapsulated in the provider.
534
+ *
535
+ * This enables us to quickly ship provider-specific functionality
536
+ * without affecting the core AI SDK.
537
+ *
538
+ * The outer record is keyed by the provider name, and the inner
539
+ * record is keyed by the provider-specific metadata key.
540
+ *
541
+ * ```ts
542
+ * {
543
+ * "anthropic": {
544
+ * "cacheControl": { "type": "ephemeral" }
545
+ * }
546
+ * }
547
+ * ```
548
+ */
549
+ type LanguageModelV1ProviderMetadata = Record<string, Record<string, JSONValue>>;
550
+
519
551
  /**
520
552
  A prompt is a list of messages.
521
553
 
@@ -526,7 +558,7 @@ Note: This is not a user-facing prompt. The AI SDK methods will map the
526
558
  user-facing prompt types such as chat or instruction prompts to this format.
527
559
  */
528
560
  type LanguageModelV1Prompt = Array<LanguageModelV1Message>;
529
- type LanguageModelV1Message = {
561
+ type LanguageModelV1Message = ({
530
562
  role: 'system';
531
563
  content: string;
532
564
  } | {
@@ -538,6 +570,13 @@ type LanguageModelV1Message = {
538
570
  } | {
539
571
  role: 'tool';
540
572
  content: Array<LanguageModelV1ToolResultPart>;
573
+ }) & {
574
+ /**
575
+ * Additional provider-specific metadata. They are passed through
576
+ * to the provider from the AI SDK and enable provider-specific
577
+ * functionality that can be fully encapsulated in the provider.
578
+ */
579
+ providerMetadata?: LanguageModelV1ProviderMetadata;
541
580
  };
542
581
  /**
543
582
  Text content part of a prompt. It contains a string of text.
@@ -548,6 +587,12 @@ interface LanguageModelV1TextPart {
548
587
  The text content.
549
588
  */
550
589
  text: string;
590
+ /**
591
+ * Additional provider-specific metadata. They are passed through
592
+ * to the provider from the AI SDK and enable provider-specific
593
+ * functionality that can be fully encapsulated in the provider.
594
+ */
595
+ providerMetadata?: LanguageModelV1ProviderMetadata;
551
596
  }
552
597
  /**
553
598
  Image content part of a prompt. It contains an image.
@@ -562,6 +607,12 @@ interface LanguageModelV1ImagePart {
562
607
  Optional mime type of the image.
563
608
  */
564
609
  mimeType?: string;
610
+ /**
611
+ * Additional provider-specific metadata. They are passed through
612
+ * to the provider from the AI SDK and enable provider-specific
613
+ * functionality that can be fully encapsulated in the provider.
614
+ */
615
+ providerMetadata?: LanguageModelV1ProviderMetadata;
565
616
  }
566
617
  /**
567
618
  Tool call content part of a prompt. It contains a tool call (usually generated by the AI model).
@@ -602,6 +653,12 @@ interface LanguageModelV1ToolResultPart {
602
653
  Optional flag if the result is an error or an error message.
603
654
  */
604
655
  isError?: boolean;
656
+ /**
657
+ * Additional provider-specific metadata. They are passed through
658
+ * to the provider from the AI SDK and enable provider-specific
659
+ * functionality that can be fully encapsulated in the provider.
660
+ */
661
+ providerMetadata?: LanguageModelV1ProviderMetadata;
605
662
  }
606
663
 
607
664
  type LanguageModelV1ToolChoice = {
@@ -833,6 +890,12 @@ type LanguageModelV1 = {
833
890
  };
834
891
  warnings?: LanguageModelV1CallWarning[];
835
892
  /**
893
+ Additional provider-specific metadata. They are passed through
894
+ from the provider to the AI SDK and enable provider-specific
895
+ results that can be fully encapsulated in the provider.
896
+ */
897
+ providerMetadata?: LanguageModelV1ProviderMetadata;
898
+ /**
836
899
  Logprobs for the completion.
837
900
  `undefined` if the mode does not support logprobs or if was not enabled
838
901
  */
@@ -890,6 +953,7 @@ type LanguageModelV1StreamPart = {
890
953
  type: 'finish';
891
954
  finishReason: LanguageModelV1FinishReason;
892
955
  logprobs?: LanguageModelV1LogProbs;
956
+ providerMetadata?: LanguageModelV1ProviderMetadata;
893
957
  usage: {
894
958
  promptTokens: number;
895
959
  completionTokens: number;
@@ -900,4 +964,4 @@ type LanguageModelV1StreamPart = {
900
964
  };
901
965
  type LanguageModelV1ResponseMetadata = {};
902
966
 
903
- export { AISDKError, APICallError, type EmbeddingModelV1, type EmbeddingModelV1Embedding, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1Prompt, type LanguageModelV1ResponseMetadata, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage };
967
+ export { AISDKError, APICallError, type EmbeddingModelV1, type EmbeddingModelV1Embedding, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1Prompt, type LanguageModelV1ProviderMetadata, type LanguageModelV1ResponseMetadata, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
package/dist/index.js CHANGED
@@ -32,7 +32,10 @@ __export(src_exports, {
32
32
  TooManyEmbeddingValuesForCallError: () => TooManyEmbeddingValuesForCallError,
33
33
  TypeValidationError: () => TypeValidationError,
34
34
  UnsupportedFunctionalityError: () => UnsupportedFunctionalityError,
35
- getErrorMessage: () => getErrorMessage
35
+ getErrorMessage: () => getErrorMessage,
36
+ isJSONArray: () => isJSONArray,
37
+ isJSONObject: () => isJSONObject,
38
+ isJSONValue: () => isJSONValue
36
39
  });
37
40
  module.exports = __toCommonJS(src_exports);
38
41
 
@@ -190,11 +193,12 @@ var marker4 = `vercel.ai.error.${name3}`;
190
193
  var symbol4 = Symbol.for(marker4);
191
194
  var _a4;
192
195
  var InvalidPromptError = class extends AISDKError {
193
- constructor({ prompt: prompt2, message }) {
194
- super({
195
- name: name3,
196
- message: `Invalid prompt: ${message}`
197
- });
196
+ constructor({
197
+ prompt: prompt2,
198
+ message,
199
+ cause
200
+ }) {
201
+ super({ name: name3, message: `Invalid prompt: ${message}`, cause });
198
202
  this[_a4] = true;
199
203
  this.prompt = prompt2;
200
204
  }
@@ -516,6 +520,30 @@ var UnsupportedFunctionalityError = class extends AISDKError {
516
520
  }
517
521
  };
518
522
  _a12 = symbol12;
523
+
524
+ // src/json-value/is-json.ts
525
+ function isJSONValue(value) {
526
+ if (value === null || typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
527
+ return true;
528
+ }
529
+ if (Array.isArray(value)) {
530
+ return value.every(isJSONValue);
531
+ }
532
+ if (typeof value === "object") {
533
+ return Object.entries(value).every(
534
+ ([key, val]) => typeof key === "string" && isJSONValue(val)
535
+ );
536
+ }
537
+ return false;
538
+ }
539
+ function isJSONArray(value) {
540
+ return Array.isArray(value) && value.every(isJSONValue);
541
+ }
542
+ function isJSONObject(value) {
543
+ return value != null && typeof value === "object" && Object.entries(value).every(
544
+ ([key, val]) => typeof key === "string" && isJSONValue(val)
545
+ );
546
+ }
519
547
  // Annotate the CommonJS export names for ESM import in node:
520
548
  0 && (module.exports = {
521
549
  AISDKError,
@@ -530,6 +558,9 @@ _a12 = symbol12;
530
558
  TooManyEmbeddingValuesForCallError,
531
559
  TypeValidationError,
532
560
  UnsupportedFunctionalityError,
533
- getErrorMessage
561
+ getErrorMessage,
562
+ isJSONArray,
563
+ isJSONObject,
564
+ isJSONValue
534
565
  });
535
566
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/errors/ai-sdk-error.ts","../src/errors/api-call-error.ts","../src/errors/empty-response-body-error.ts","../src/errors/get-error-message.ts","../src/errors/invalid-prompt-error.ts","../src/errors/invalid-response-data-error.ts","../src/errors/json-parse-error.ts","../src/errors/load-api-key-error.ts","../src/errors/load-setting-error.ts","../src/errors/no-content-generated-error.ts","../src/errors/too-many-embedding-values-for-call-error.ts","../src/errors/type-validation-error.ts","../src/errors/unsupported-functionality-error.ts"],"sourcesContent":["export * from './embedding-model/index';\nexport * from './errors/index';\nexport * from './language-model/index';\n","/**\n * Symbol used for identifying AI SDK Error instances.\n * Enables checking if an error is an instance of AISDKError across package versions.\n */\nconst marker = 'vercel.ai.error';\nconst symbol = Symbol.for(marker);\n\n/**\n * Custom error class for AI SDK related errors.\n * @extends Error\n */\nexport class AISDKError extends Error {\n private readonly [symbol] = true; // used in isInstance\n\n /**\n * The underlying cause of the error, if any.\n */\n readonly cause?: unknown;\n\n /**\n * Creates an AI SDK Error.\n *\n * @param {Object} params - The parameters for creating the error.\n * @param {string} params.name - The name of the error.\n * @param {string} params.message - The error message.\n * @param {unknown} [params.cause] - The underlying cause of the error.\n */\n constructor({\n name,\n message,\n cause,\n }: {\n name: string;\n message: string;\n cause?: unknown;\n }) {\n super(message);\n\n this.name = name;\n this.cause = cause;\n }\n\n /**\n * Checks if the given error is an AI SDK Error.\n * @param {unknown} error - The error to check.\n * @returns {boolean} True if the error is an AI SDK Error, false otherwise.\n */\n static isInstance(error: unknown): error is AISDKError {\n return AISDKError.hasMarker(error, marker);\n }\n\n protected static hasMarker(error: unknown, marker: string): boolean {\n const markerSymbol = Symbol.for(marker);\n return (\n error != null &&\n typeof error === 'object' &&\n markerSymbol in error &&\n typeof error[markerSymbol] === 'boolean' &&\n error[markerSymbol] === true\n );\n }\n\n /**\n * Returns a JSON representation of the error.\n * @returns {Object} An object containing the error's name, message, and cause.\n *\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_APICallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class APICallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly url: string;\n readonly requestBodyValues: unknown;\n readonly statusCode?: number;\n\n readonly responseHeaders?: Record<string, string>;\n readonly responseBody?: string;\n\n readonly isRetryable: boolean;\n readonly data?: unknown;\n\n constructor({\n message,\n url,\n requestBodyValues,\n statusCode,\n responseHeaders,\n responseBody,\n cause,\n isRetryable = statusCode != null &&\n (statusCode === 408 || // request timeout\n statusCode === 409 || // conflict\n statusCode === 429 || // too many requests\n statusCode >= 500), // server error\n data,\n }: {\n message: string;\n url: string;\n requestBodyValues: unknown;\n statusCode?: number;\n responseHeaders?: Record<string, string>;\n responseBody?: string;\n cause?: unknown;\n isRetryable?: boolean;\n data?: unknown;\n }) {\n super({ name, message, cause });\n\n this.url = url;\n this.requestBodyValues = requestBodyValues;\n this.statusCode = statusCode;\n this.responseHeaders = responseHeaders;\n this.responseBody = responseBody;\n this.isRetryable = isRetryable;\n this.data = data;\n }\n\n static isInstance(error: unknown): error is APICallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isAPICallError(error: unknown): error is APICallError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as APICallError).url === 'string' &&\n typeof (error as APICallError).requestBodyValues === 'object' &&\n ((error as APICallError).statusCode == null ||\n typeof (error as APICallError).statusCode === 'number') &&\n ((error as APICallError).responseHeaders == null ||\n typeof (error as APICallError).responseHeaders === 'object') &&\n ((error as APICallError).responseBody == null ||\n typeof (error as APICallError).responseBody === 'string') &&\n ((error as APICallError).cause == null ||\n typeof (error as APICallError).cause === 'object') &&\n typeof (error as APICallError).isRetryable === 'boolean' &&\n ((error as APICallError).data == null ||\n typeof (error as APICallError).data === 'object')\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n url: this.url,\n requestBodyValues: this.requestBodyValues,\n statusCode: this.statusCode,\n responseHeaders: this.responseHeaders,\n responseBody: this.responseBody,\n cause: this.cause,\n isRetryable: this.isRetryable,\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_EmptyResponseBodyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class EmptyResponseBodyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message = 'Empty response body' }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is EmptyResponseBodyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isEmptyResponseBodyError(\n error: unknown,\n ): error is EmptyResponseBodyError {\n return error instanceof Error && error.name === name;\n }\n}\n","export function getErrorMessage(error: unknown | undefined) {\n if (error == null) {\n return 'unknown error';\n }\n\n if (typeof error === 'string') {\n return error;\n }\n\n if (error instanceof Error) {\n return error.message;\n }\n\n return JSON.stringify(error);\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidPromptError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * A prompt is invalid. This error should be thrown by providers when they cannot\n * process a prompt.\n */\nexport class InvalidPromptError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly prompt: unknown;\n\n constructor({ prompt, message }: { prompt: unknown; message: string }) {\n super({\n name,\n message: `Invalid prompt: ${message}`,\n });\n\n this.prompt = prompt;\n }\n\n static isInstance(error: unknown): error is InvalidPromptError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidPromptError(error: unknown): error is InvalidPromptError {\n return error instanceof Error && error.name === name && prompt != null;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n prompt: this.prompt,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidResponseDataError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * Server returned a response with invalid data content.\n * This should be thrown by providers when they cannot parse the response from the API.\n */\nexport class InvalidResponseDataError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly data: unknown;\n\n constructor({\n data,\n message = `Invalid response data: ${JSON.stringify(data)}.`,\n }: {\n data: unknown;\n message?: string;\n }) {\n super({ name, message });\n\n this.data = data;\n }\n\n static isInstance(error: unknown): error is InvalidResponseDataError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidResponseDataError(\n error: unknown,\n ): error is InvalidResponseDataError {\n return (\n error instanceof Error &&\n error.name === name &&\n (error as InvalidResponseDataError).data != null\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_JSONParseError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class JSONParseError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly text: string;\n\n constructor({ text, cause }: { text: string; cause: unknown }) {\n super({\n name,\n message:\n `JSON parsing failed: ` +\n `Text: ${text}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.text = text;\n }\n\n static isInstance(error: unknown): error is JSONParseError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isJSONParseError(error: unknown): error is JSONParseError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'text' in error &&\n typeof error.text === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n valueText: this.text,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadAPIKeyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadAPIKeyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadAPIKeyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadAPIKeyError(error: unknown): error is LoadAPIKeyError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadSettingError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadSettingError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadSettingError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadSettingError(error: unknown): error is LoadSettingError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_NoContentGeneratedError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\nThrown when the AI provider fails to generate any content.\n */\nexport class NoContentGeneratedError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({\n message = 'No content generated.',\n }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is NoContentGeneratedError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isNoContentGeneratedError(\n error: unknown,\n ): error is NoContentGeneratedError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n cause: this.cause,\n message: this.message,\n stack: this.stack,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_TooManyEmbeddingValuesForCallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TooManyEmbeddingValuesForCallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly provider: string;\n readonly modelId: string;\n readonly maxEmbeddingsPerCall: number;\n readonly values: Array<unknown>;\n\n constructor(options: {\n provider: string;\n modelId: string;\n maxEmbeddingsPerCall: number;\n values: Array<unknown>;\n }) {\n super({\n name,\n message:\n `Too many values for a single embedding call. ` +\n `The ${options.provider} model \"${options.modelId}\" can only embed up to ` +\n `${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`,\n });\n\n this.provider = options.provider;\n this.modelId = options.modelId;\n this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;\n this.values = options.values;\n }\n\n static isInstance(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTooManyEmbeddingValuesForCallError(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'provider' in error &&\n typeof error.provider === 'string' &&\n 'modelId' in error &&\n typeof error.modelId === 'string' &&\n 'maxEmbeddingsPerCall' in error &&\n typeof error.maxEmbeddingsPerCall === 'number' &&\n 'values' in error &&\n Array.isArray(error.values)\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values: this.values,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_TypeValidationError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TypeValidationError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly value: unknown;\n\n constructor({ value, cause }: { value: unknown; cause: unknown }) {\n super({\n name,\n message:\n `Type validation failed: ` +\n `Value: ${JSON.stringify(value)}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.value = value;\n }\n\n static isInstance(error: unknown): error is TypeValidationError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * Wraps an error into a TypeValidationError.\n * If the cause is already a TypeValidationError with the same value, it returns the cause.\n * Otherwise, it creates a new TypeValidationError.\n *\n * @param {Object} params - The parameters for wrapping the error.\n * @param {unknown} params.value - The value that failed validation.\n * @param {unknown} params.cause - The original error or cause of the validation failure.\n * @returns {TypeValidationError} A TypeValidationError instance.\n */\n static wrap({\n value,\n cause,\n }: {\n value: unknown;\n cause: unknown;\n }): TypeValidationError {\n return TypeValidationError.isInstance(cause) && cause.value === value\n ? cause\n : new TypeValidationError({ value, cause });\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTypeValidationError(error: unknown): error is TypeValidationError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n value: this.value,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_UnsupportedFunctionalityError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class UnsupportedFunctionalityError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly functionality: string;\n\n constructor({ functionality }: { functionality: string }) {\n super({\n name,\n message: `'${functionality}' functionality not supported.`,\n });\n\n this.functionality = functionality;\n }\n\n static isInstance(error: unknown): error is UnsupportedFunctionalityError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isUnsupportedFunctionalityError(\n error: unknown,\n ): error is UnsupportedFunctionalityError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as UnsupportedFunctionalityError).functionality === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n functionality: this.functionality,\n };\n }\n}\n"],"mappings":"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","names":["name","marker","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","prompt","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/errors/ai-sdk-error.ts","../src/errors/api-call-error.ts","../src/errors/empty-response-body-error.ts","../src/errors/get-error-message.ts","../src/errors/invalid-prompt-error.ts","../src/errors/invalid-response-data-error.ts","../src/errors/json-parse-error.ts","../src/errors/load-api-key-error.ts","../src/errors/load-setting-error.ts","../src/errors/no-content-generated-error.ts","../src/errors/too-many-embedding-values-for-call-error.ts","../src/errors/type-validation-error.ts","../src/errors/unsupported-functionality-error.ts","../src/json-value/is-json.ts"],"sourcesContent":["export * from './embedding-model/index';\nexport * from './errors/index';\nexport * from './json-value/index';\nexport * from './language-model/index';\n","/**\n * Symbol used for identifying AI SDK Error instances.\n * Enables checking if an error is an instance of AISDKError across package versions.\n */\nconst marker = 'vercel.ai.error';\nconst symbol = Symbol.for(marker);\n\n/**\n * Custom error class for AI SDK related errors.\n * @extends Error\n */\nexport class AISDKError extends Error {\n private readonly [symbol] = true; // used in isInstance\n\n /**\n * The underlying cause of the error, if any.\n */\n readonly cause?: unknown;\n\n /**\n * Creates an AI SDK Error.\n *\n * @param {Object} params - The parameters for creating the error.\n * @param {string} params.name - The name of the error.\n * @param {string} params.message - The error message.\n * @param {unknown} [params.cause] - The underlying cause of the error.\n */\n constructor({\n name,\n message,\n cause,\n }: {\n name: string;\n message: string;\n cause?: unknown;\n }) {\n super(message);\n\n this.name = name;\n this.cause = cause;\n }\n\n /**\n * Checks if the given error is an AI SDK Error.\n * @param {unknown} error - The error to check.\n * @returns {boolean} True if the error is an AI SDK Error, false otherwise.\n */\n static isInstance(error: unknown): error is AISDKError {\n return AISDKError.hasMarker(error, marker);\n }\n\n protected static hasMarker(error: unknown, marker: string): boolean {\n const markerSymbol = Symbol.for(marker);\n return (\n error != null &&\n typeof error === 'object' &&\n markerSymbol in error &&\n typeof error[markerSymbol] === 'boolean' &&\n error[markerSymbol] === true\n );\n }\n\n /**\n * Returns a JSON representation of the error.\n * @returns {Object} An object containing the error's name, message, and cause.\n *\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_APICallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class APICallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly url: string;\n readonly requestBodyValues: unknown;\n readonly statusCode?: number;\n\n readonly responseHeaders?: Record<string, string>;\n readonly responseBody?: string;\n\n readonly isRetryable: boolean;\n readonly data?: unknown;\n\n constructor({\n message,\n url,\n requestBodyValues,\n statusCode,\n responseHeaders,\n responseBody,\n cause,\n isRetryable = statusCode != null &&\n (statusCode === 408 || // request timeout\n statusCode === 409 || // conflict\n statusCode === 429 || // too many requests\n statusCode >= 500), // server error\n data,\n }: {\n message: string;\n url: string;\n requestBodyValues: unknown;\n statusCode?: number;\n responseHeaders?: Record<string, string>;\n responseBody?: string;\n cause?: unknown;\n isRetryable?: boolean;\n data?: unknown;\n }) {\n super({ name, message, cause });\n\n this.url = url;\n this.requestBodyValues = requestBodyValues;\n this.statusCode = statusCode;\n this.responseHeaders = responseHeaders;\n this.responseBody = responseBody;\n this.isRetryable = isRetryable;\n this.data = data;\n }\n\n static isInstance(error: unknown): error is APICallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isAPICallError(error: unknown): error is APICallError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as APICallError).url === 'string' &&\n typeof (error as APICallError).requestBodyValues === 'object' &&\n ((error as APICallError).statusCode == null ||\n typeof (error as APICallError).statusCode === 'number') &&\n ((error as APICallError).responseHeaders == null ||\n typeof (error as APICallError).responseHeaders === 'object') &&\n ((error as APICallError).responseBody == null ||\n typeof (error as APICallError).responseBody === 'string') &&\n ((error as APICallError).cause == null ||\n typeof (error as APICallError).cause === 'object') &&\n typeof (error as APICallError).isRetryable === 'boolean' &&\n ((error as APICallError).data == null ||\n typeof (error as APICallError).data === 'object')\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n url: this.url,\n requestBodyValues: this.requestBodyValues,\n statusCode: this.statusCode,\n responseHeaders: this.responseHeaders,\n responseBody: this.responseBody,\n cause: this.cause,\n isRetryable: this.isRetryable,\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_EmptyResponseBodyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class EmptyResponseBodyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message = 'Empty response body' }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is EmptyResponseBodyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isEmptyResponseBodyError(\n error: unknown,\n ): error is EmptyResponseBodyError {\n return error instanceof Error && error.name === name;\n }\n}\n","export function getErrorMessage(error: unknown | undefined) {\n if (error == null) {\n return 'unknown error';\n }\n\n if (typeof error === 'string') {\n return error;\n }\n\n if (error instanceof Error) {\n return error.message;\n }\n\n return JSON.stringify(error);\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidPromptError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * A prompt is invalid. This error should be thrown by providers when they cannot\n * process a prompt.\n */\nexport class InvalidPromptError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly prompt: unknown;\n\n constructor({\n prompt,\n message,\n cause,\n }: {\n prompt: unknown;\n message: string;\n cause?: unknown;\n }) {\n super({ name, message: `Invalid prompt: ${message}`, cause });\n\n this.prompt = prompt;\n }\n\n static isInstance(error: unknown): error is InvalidPromptError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidPromptError(error: unknown): error is InvalidPromptError {\n return error instanceof Error && error.name === name && prompt != null;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n prompt: this.prompt,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidResponseDataError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * Server returned a response with invalid data content.\n * This should be thrown by providers when they cannot parse the response from the API.\n */\nexport class InvalidResponseDataError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly data: unknown;\n\n constructor({\n data,\n message = `Invalid response data: ${JSON.stringify(data)}.`,\n }: {\n data: unknown;\n message?: string;\n }) {\n super({ name, message });\n\n this.data = data;\n }\n\n static isInstance(error: unknown): error is InvalidResponseDataError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidResponseDataError(\n error: unknown,\n ): error is InvalidResponseDataError {\n return (\n error instanceof Error &&\n error.name === name &&\n (error as InvalidResponseDataError).data != null\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_JSONParseError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class JSONParseError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly text: string;\n\n constructor({ text, cause }: { text: string; cause: unknown }) {\n super({\n name,\n message:\n `JSON parsing failed: ` +\n `Text: ${text}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.text = text;\n }\n\n static isInstance(error: unknown): error is JSONParseError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isJSONParseError(error: unknown): error is JSONParseError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'text' in error &&\n typeof error.text === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n valueText: this.text,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadAPIKeyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadAPIKeyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadAPIKeyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadAPIKeyError(error: unknown): error is LoadAPIKeyError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadSettingError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadSettingError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadSettingError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadSettingError(error: unknown): error is LoadSettingError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_NoContentGeneratedError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\nThrown when the AI provider fails to generate any content.\n */\nexport class NoContentGeneratedError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({\n message = 'No content generated.',\n }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is NoContentGeneratedError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isNoContentGeneratedError(\n error: unknown,\n ): error is NoContentGeneratedError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n cause: this.cause,\n message: this.message,\n stack: this.stack,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_TooManyEmbeddingValuesForCallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TooManyEmbeddingValuesForCallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly provider: string;\n readonly modelId: string;\n readonly maxEmbeddingsPerCall: number;\n readonly values: Array<unknown>;\n\n constructor(options: {\n provider: string;\n modelId: string;\n maxEmbeddingsPerCall: number;\n values: Array<unknown>;\n }) {\n super({\n name,\n message:\n `Too many values for a single embedding call. ` +\n `The ${options.provider} model \"${options.modelId}\" can only embed up to ` +\n `${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`,\n });\n\n this.provider = options.provider;\n this.modelId = options.modelId;\n this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;\n this.values = options.values;\n }\n\n static isInstance(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTooManyEmbeddingValuesForCallError(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'provider' in error &&\n typeof error.provider === 'string' &&\n 'modelId' in error &&\n typeof error.modelId === 'string' &&\n 'maxEmbeddingsPerCall' in error &&\n typeof error.maxEmbeddingsPerCall === 'number' &&\n 'values' in error &&\n Array.isArray(error.values)\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values: this.values,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_TypeValidationError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TypeValidationError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly value: unknown;\n\n constructor({ value, cause }: { value: unknown; cause: unknown }) {\n super({\n name,\n message:\n `Type validation failed: ` +\n `Value: ${JSON.stringify(value)}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.value = value;\n }\n\n static isInstance(error: unknown): error is TypeValidationError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * Wraps an error into a TypeValidationError.\n * If the cause is already a TypeValidationError with the same value, it returns the cause.\n * Otherwise, it creates a new TypeValidationError.\n *\n * @param {Object} params - The parameters for wrapping the error.\n * @param {unknown} params.value - The value that failed validation.\n * @param {unknown} params.cause - The original error or cause of the validation failure.\n * @returns {TypeValidationError} A TypeValidationError instance.\n */\n static wrap({\n value,\n cause,\n }: {\n value: unknown;\n cause: unknown;\n }): TypeValidationError {\n return TypeValidationError.isInstance(cause) && cause.value === value\n ? cause\n : new TypeValidationError({ value, cause });\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTypeValidationError(error: unknown): error is TypeValidationError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n value: this.value,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_UnsupportedFunctionalityError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class UnsupportedFunctionalityError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly functionality: string;\n\n constructor({ functionality }: { functionality: string }) {\n super({\n name,\n message: `'${functionality}' functionality not supported.`,\n });\n\n this.functionality = functionality;\n }\n\n static isInstance(error: unknown): error is UnsupportedFunctionalityError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isUnsupportedFunctionalityError(\n error: unknown,\n ): error is UnsupportedFunctionalityError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as UnsupportedFunctionalityError).functionality === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n functionality: this.functionality,\n };\n }\n}\n","import { JSONArray, JSONObject, JSONValue } from './json-value';\n\nexport function isJSONValue(value: unknown): value is JSONValue {\n if (\n value === null ||\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n ) {\n return true;\n }\n\n if (Array.isArray(value)) {\n return value.every(isJSONValue);\n }\n\n if (typeof value === 'object') {\n return Object.entries(value).every(\n ([key, val]) => typeof key === 'string' && isJSONValue(val),\n );\n }\n\n return false;\n}\n\nexport function isJSONArray(value: unknown): value is JSONArray {\n return Array.isArray(value) && value.every(isJSONValue);\n}\n\nexport function isJSONObject(value: unknown): value is JSONObject {\n return (\n value != null &&\n typeof value === 'object' &&\n Object.entries(value).every(\n ([key, val]) => typeof key === 'string' && isJSONValue(val),\n )\n );\n}\n"],"mappings":"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","names":["name","marker","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","prompt","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a"]}
package/dist/index.mjs CHANGED
@@ -152,11 +152,12 @@ var marker4 = `vercel.ai.error.${name3}`;
152
152
  var symbol4 = Symbol.for(marker4);
153
153
  var _a4;
154
154
  var InvalidPromptError = class extends AISDKError {
155
- constructor({ prompt: prompt2, message }) {
156
- super({
157
- name: name3,
158
- message: `Invalid prompt: ${message}`
159
- });
155
+ constructor({
156
+ prompt: prompt2,
157
+ message,
158
+ cause
159
+ }) {
160
+ super({ name: name3, message: `Invalid prompt: ${message}`, cause });
160
161
  this[_a4] = true;
161
162
  this.prompt = prompt2;
162
163
  }
@@ -478,6 +479,30 @@ var UnsupportedFunctionalityError = class extends AISDKError {
478
479
  }
479
480
  };
480
481
  _a12 = symbol12;
482
+
483
+ // src/json-value/is-json.ts
484
+ function isJSONValue(value) {
485
+ if (value === null || typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
486
+ return true;
487
+ }
488
+ if (Array.isArray(value)) {
489
+ return value.every(isJSONValue);
490
+ }
491
+ if (typeof value === "object") {
492
+ return Object.entries(value).every(
493
+ ([key, val]) => typeof key === "string" && isJSONValue(val)
494
+ );
495
+ }
496
+ return false;
497
+ }
498
+ function isJSONArray(value) {
499
+ return Array.isArray(value) && value.every(isJSONValue);
500
+ }
501
+ function isJSONObject(value) {
502
+ return value != null && typeof value === "object" && Object.entries(value).every(
503
+ ([key, val]) => typeof key === "string" && isJSONValue(val)
504
+ );
505
+ }
481
506
  export {
482
507
  AISDKError,
483
508
  APICallError,
@@ -491,6 +516,9 @@ export {
491
516
  TooManyEmbeddingValuesForCallError,
492
517
  TypeValidationError,
493
518
  UnsupportedFunctionalityError,
494
- getErrorMessage
519
+ getErrorMessage,
520
+ isJSONArray,
521
+ isJSONObject,
522
+ isJSONValue
495
523
  };
496
524
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/errors/ai-sdk-error.ts","../src/errors/api-call-error.ts","../src/errors/empty-response-body-error.ts","../src/errors/get-error-message.ts","../src/errors/invalid-prompt-error.ts","../src/errors/invalid-response-data-error.ts","../src/errors/json-parse-error.ts","../src/errors/load-api-key-error.ts","../src/errors/load-setting-error.ts","../src/errors/no-content-generated-error.ts","../src/errors/too-many-embedding-values-for-call-error.ts","../src/errors/type-validation-error.ts","../src/errors/unsupported-functionality-error.ts"],"sourcesContent":["/**\n * Symbol used for identifying AI SDK Error instances.\n * Enables checking if an error is an instance of AISDKError across package versions.\n */\nconst marker = 'vercel.ai.error';\nconst symbol = Symbol.for(marker);\n\n/**\n * Custom error class for AI SDK related errors.\n * @extends Error\n */\nexport class AISDKError extends Error {\n private readonly [symbol] = true; // used in isInstance\n\n /**\n * The underlying cause of the error, if any.\n */\n readonly cause?: unknown;\n\n /**\n * Creates an AI SDK Error.\n *\n * @param {Object} params - The parameters for creating the error.\n * @param {string} params.name - The name of the error.\n * @param {string} params.message - The error message.\n * @param {unknown} [params.cause] - The underlying cause of the error.\n */\n constructor({\n name,\n message,\n cause,\n }: {\n name: string;\n message: string;\n cause?: unknown;\n }) {\n super(message);\n\n this.name = name;\n this.cause = cause;\n }\n\n /**\n * Checks if the given error is an AI SDK Error.\n * @param {unknown} error - The error to check.\n * @returns {boolean} True if the error is an AI SDK Error, false otherwise.\n */\n static isInstance(error: unknown): error is AISDKError {\n return AISDKError.hasMarker(error, marker);\n }\n\n protected static hasMarker(error: unknown, marker: string): boolean {\n const markerSymbol = Symbol.for(marker);\n return (\n error != null &&\n typeof error === 'object' &&\n markerSymbol in error &&\n typeof error[markerSymbol] === 'boolean' &&\n error[markerSymbol] === true\n );\n }\n\n /**\n * Returns a JSON representation of the error.\n * @returns {Object} An object containing the error's name, message, and cause.\n *\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_APICallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class APICallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly url: string;\n readonly requestBodyValues: unknown;\n readonly statusCode?: number;\n\n readonly responseHeaders?: Record<string, string>;\n readonly responseBody?: string;\n\n readonly isRetryable: boolean;\n readonly data?: unknown;\n\n constructor({\n message,\n url,\n requestBodyValues,\n statusCode,\n responseHeaders,\n responseBody,\n cause,\n isRetryable = statusCode != null &&\n (statusCode === 408 || // request timeout\n statusCode === 409 || // conflict\n statusCode === 429 || // too many requests\n statusCode >= 500), // server error\n data,\n }: {\n message: string;\n url: string;\n requestBodyValues: unknown;\n statusCode?: number;\n responseHeaders?: Record<string, string>;\n responseBody?: string;\n cause?: unknown;\n isRetryable?: boolean;\n data?: unknown;\n }) {\n super({ name, message, cause });\n\n this.url = url;\n this.requestBodyValues = requestBodyValues;\n this.statusCode = statusCode;\n this.responseHeaders = responseHeaders;\n this.responseBody = responseBody;\n this.isRetryable = isRetryable;\n this.data = data;\n }\n\n static isInstance(error: unknown): error is APICallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isAPICallError(error: unknown): error is APICallError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as APICallError).url === 'string' &&\n typeof (error as APICallError).requestBodyValues === 'object' &&\n ((error as APICallError).statusCode == null ||\n typeof (error as APICallError).statusCode === 'number') &&\n ((error as APICallError).responseHeaders == null ||\n typeof (error as APICallError).responseHeaders === 'object') &&\n ((error as APICallError).responseBody == null ||\n typeof (error as APICallError).responseBody === 'string') &&\n ((error as APICallError).cause == null ||\n typeof (error as APICallError).cause === 'object') &&\n typeof (error as APICallError).isRetryable === 'boolean' &&\n ((error as APICallError).data == null ||\n typeof (error as APICallError).data === 'object')\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n url: this.url,\n requestBodyValues: this.requestBodyValues,\n statusCode: this.statusCode,\n responseHeaders: this.responseHeaders,\n responseBody: this.responseBody,\n cause: this.cause,\n isRetryable: this.isRetryable,\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_EmptyResponseBodyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class EmptyResponseBodyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message = 'Empty response body' }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is EmptyResponseBodyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isEmptyResponseBodyError(\n error: unknown,\n ): error is EmptyResponseBodyError {\n return error instanceof Error && error.name === name;\n }\n}\n","export function getErrorMessage(error: unknown | undefined) {\n if (error == null) {\n return 'unknown error';\n }\n\n if (typeof error === 'string') {\n return error;\n }\n\n if (error instanceof Error) {\n return error.message;\n }\n\n return JSON.stringify(error);\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidPromptError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * A prompt is invalid. This error should be thrown by providers when they cannot\n * process a prompt.\n */\nexport class InvalidPromptError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly prompt: unknown;\n\n constructor({ prompt, message }: { prompt: unknown; message: string }) {\n super({\n name,\n message: `Invalid prompt: ${message}`,\n });\n\n this.prompt = prompt;\n }\n\n static isInstance(error: unknown): error is InvalidPromptError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidPromptError(error: unknown): error is InvalidPromptError {\n return error instanceof Error && error.name === name && prompt != null;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n prompt: this.prompt,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidResponseDataError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * Server returned a response with invalid data content.\n * This should be thrown by providers when they cannot parse the response from the API.\n */\nexport class InvalidResponseDataError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly data: unknown;\n\n constructor({\n data,\n message = `Invalid response data: ${JSON.stringify(data)}.`,\n }: {\n data: unknown;\n message?: string;\n }) {\n super({ name, message });\n\n this.data = data;\n }\n\n static isInstance(error: unknown): error is InvalidResponseDataError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidResponseDataError(\n error: unknown,\n ): error is InvalidResponseDataError {\n return (\n error instanceof Error &&\n error.name === name &&\n (error as InvalidResponseDataError).data != null\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_JSONParseError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class JSONParseError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly text: string;\n\n constructor({ text, cause }: { text: string; cause: unknown }) {\n super({\n name,\n message:\n `JSON parsing failed: ` +\n `Text: ${text}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.text = text;\n }\n\n static isInstance(error: unknown): error is JSONParseError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isJSONParseError(error: unknown): error is JSONParseError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'text' in error &&\n typeof error.text === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n valueText: this.text,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadAPIKeyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadAPIKeyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadAPIKeyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadAPIKeyError(error: unknown): error is LoadAPIKeyError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadSettingError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadSettingError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadSettingError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadSettingError(error: unknown): error is LoadSettingError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_NoContentGeneratedError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\nThrown when the AI provider fails to generate any content.\n */\nexport class NoContentGeneratedError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({\n message = 'No content generated.',\n }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is NoContentGeneratedError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isNoContentGeneratedError(\n error: unknown,\n ): error is NoContentGeneratedError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n cause: this.cause,\n message: this.message,\n stack: this.stack,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_TooManyEmbeddingValuesForCallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TooManyEmbeddingValuesForCallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly provider: string;\n readonly modelId: string;\n readonly maxEmbeddingsPerCall: number;\n readonly values: Array<unknown>;\n\n constructor(options: {\n provider: string;\n modelId: string;\n maxEmbeddingsPerCall: number;\n values: Array<unknown>;\n }) {\n super({\n name,\n message:\n `Too many values for a single embedding call. ` +\n `The ${options.provider} model \"${options.modelId}\" can only embed up to ` +\n `${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`,\n });\n\n this.provider = options.provider;\n this.modelId = options.modelId;\n this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;\n this.values = options.values;\n }\n\n static isInstance(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTooManyEmbeddingValuesForCallError(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'provider' in error &&\n typeof error.provider === 'string' &&\n 'modelId' in error &&\n typeof error.modelId === 'string' &&\n 'maxEmbeddingsPerCall' in error &&\n typeof error.maxEmbeddingsPerCall === 'number' &&\n 'values' in error &&\n Array.isArray(error.values)\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values: this.values,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_TypeValidationError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TypeValidationError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly value: unknown;\n\n constructor({ value, cause }: { value: unknown; cause: unknown }) {\n super({\n name,\n message:\n `Type validation failed: ` +\n `Value: ${JSON.stringify(value)}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.value = value;\n }\n\n static isInstance(error: unknown): error is TypeValidationError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * Wraps an error into a TypeValidationError.\n * If the cause is already a TypeValidationError with the same value, it returns the cause.\n * Otherwise, it creates a new TypeValidationError.\n *\n * @param {Object} params - The parameters for wrapping the error.\n * @param {unknown} params.value - The value that failed validation.\n * @param {unknown} params.cause - The original error or cause of the validation failure.\n * @returns {TypeValidationError} A TypeValidationError instance.\n */\n static wrap({\n value,\n cause,\n }: {\n value: unknown;\n cause: unknown;\n }): TypeValidationError {\n return TypeValidationError.isInstance(cause) && cause.value === value\n ? cause\n : new TypeValidationError({ value, cause });\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTypeValidationError(error: unknown): error is TypeValidationError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n value: this.value,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_UnsupportedFunctionalityError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class UnsupportedFunctionalityError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly functionality: string;\n\n constructor({ functionality }: { functionality: string }) {\n super({\n name,\n message: `'${functionality}' functionality not supported.`,\n });\n\n this.functionality = functionality;\n }\n\n static isInstance(error: unknown): error is UnsupportedFunctionalityError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isUnsupportedFunctionalityError(\n error: unknown,\n ): error is UnsupportedFunctionalityError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as UnsupportedFunctionalityError).functionality === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n functionality: this.functionality,\n };\n }\n}\n"],"mappings":";AAIA,IAAM,SAAS;AACf,IAAM,SAAS,OAAO,IAAI,MAAM;AALhC;AAWO,IAAM,cAAN,MAAM,oBAAmB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAgBpC,YAAY;AAAA,IACV,MAAAA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAIG;AACD,UAAM,OAAO;AAxBf,SAAkB,MAAU;AA0B1B,SAAK,OAAOA;AACZ,SAAK,QAAQ;AAAA,EACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAO,WAAW,OAAqC;AACrD,WAAO,YAAW,UAAU,OAAO,MAAM;AAAA,EAC3C;AAAA,EAEA,OAAiB,UAAU,OAAgBC,UAAyB;AAClE,UAAM,eAAe,OAAO,IAAIA,QAAM;AACtC,WACE,SAAS,QACT,OAAO,UAAU,YACjB,gBAAgB,SAChB,OAAO,MAAM,YAAY,MAAM,aAC/B,MAAM,YAAY,MAAM;AAAA,EAE5B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,IAChB;AAAA,EACF;AACF;AA9DoB;AADb,IAAM,aAAN;;;ACTP,IAAM,OAAO;AACb,IAAMC,UAAS,mBAAmB,IAAI;AACtC,IAAMC,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,eAAN,cAA2B,WAAW;AAAA,EAa3C,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc,cAAc,SACzB,eAAe;AAAA,IACd,eAAe;AAAA,IACf,eAAe;AAAA,IACf,cAAc;AAAA;AAAA,IAClB;AAAA,EACF,GAUG;AACD,UAAM,EAAE,MAAM,SAAS,MAAM,CAAC;AArChC,SAAkBA,OAAU;AAuC1B,SAAK,MAAM;AACX,SAAK,oBAAoB;AACzB,SAAK,aAAa;AAClB,SAAK,kBAAkB;AACvB,SAAK,eAAe;AACpB,SAAK,cAAc;AACnB,SAAK,OAAO;AAAA,EACd;AAAA,EAEA,OAAO,WAAW,OAAuC;AACvD,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,eAAe,OAAuC;AAC3D,WACE,iBAAiB,SACjB,MAAM,SAAS,QACf,OAAQ,MAAuB,QAAQ,YACvC,OAAQ,MAAuB,sBAAsB,aACnD,MAAuB,cAAc,QACrC,OAAQ,MAAuB,eAAe,cAC9C,MAAuB,mBAAmB,QAC1C,OAAQ,MAAuB,oBAAoB,cACnD,MAAuB,gBAAgB,QACvC,OAAQ,MAAuB,iBAAiB,cAChD,MAAuB,SAAS,QAChC,OAAQ,MAAuB,UAAU,aAC3C,OAAQ,MAAuB,gBAAgB,cAC7C,MAAuB,QAAQ,QAC/B,OAAQ,MAAuB,SAAS;AAAA,EAE9C;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,KAAK,KAAK;AAAA,MACV,mBAAmB,KAAK;AAAA,MACxB,YAAY,KAAK;AAAA,MACjB,iBAAiB,KAAK;AAAA,MACtB,cAAc,KAAK;AAAA,MACnB,OAAO,KAAK;AAAA,MACZ,aAAa,KAAK;AAAA,MAClB,MAAM,KAAK;AAAA,IACb;AAAA,EACF;AACF;AA5FoBE,MAAAD;;;ACLpB,IAAME,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,yBAAN,cAAqC,WAAW;AAAA;AAAA,EAGrD,YAAY,EAAE,UAAU,sBAAsB,IAA0B,CAAC,GAAG;AAC1E,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAHzB,SAAkBG,OAAU;AAAA,EAI5B;AAAA,EAEA,OAAO,WAAW,OAAiD;AACjE,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,yBACL,OACiC;AACjC,WAAO,iBAAiB,SAAS,MAAM,SAASD;AAAA,EAClD;AACF;AAlBoBG,MAAAD;;;ACPb,SAAS,gBAAgB,OAA4B;AAC1D,MAAI,SAAS,MAAM;AACjB,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO;AAAA,EACT;AAEA,MAAI,iBAAiB,OAAO;AAC1B,WAAO,MAAM;AAAA,EACf;AAEA,SAAO,KAAK,UAAU,KAAK;AAC7B;;;ACZA,IAAME,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAUO,IAAM,qBAAN,cAAiC,WAAW;AAAA,EAKjD,YAAY,EAAE,QAAAC,SAAQ,QAAQ,GAAyC;AACrE,UAAM;AAAA,MACJ,MAAAJ;AAAA,MACA,SAAS,mBAAmB,OAAO;AAAA,IACrC,CAAC;AARH,SAAkBG,OAAU;AAU1B,SAAK,SAASC;AAAA,EAChB;AAAA,EAEA,OAAO,WAAW,OAA6C;AAC7D,WAAO,WAAW,UAAU,OAAOH,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,qBAAqB,OAA6C;AACvE,WAAO,iBAAiB,SAAS,MAAM,SAASD,SAAQ,UAAU;AAAA,EACpE;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,MAEZ,QAAQ,KAAK;AAAA,IACf;AAAA,EACF;AACF;AApCoBG,MAAAD;;;ACTpB,IAAMG,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAUO,IAAM,2BAAN,cAAuC,WAAW;AAAA,EAKvD,YAAY;AAAA,IACV;AAAA,IACA,UAAU,0BAA0B,KAAK,UAAU,IAAI,CAAC;AAAA,EAC1D,GAGG;AACD,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAXzB,SAAkBG,OAAU;AAa1B,SAAK,OAAO;AAAA,EACd;AAAA,EAEA,OAAO,WAAW,OAAmD;AACnE,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,2BACL,OACmC;AACnC,WACE,iBAAiB,SACjB,MAAM,SAASD,SACd,MAAmC,QAAQ;AAAA,EAEhD;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,MAEZ,MAAM,KAAK;AAAA,IACb;AAAA,EACF;AACF;AA7CoBG,MAAAD;;;ACRpB,IAAME,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AALhC,IAAAE;AAOO,IAAM,iBAAN,cAA6B,WAAW;AAAA,EAK7C,YAAY,EAAE,MAAM,MAAM,GAAqC;AAC7D,UAAM;AAAA,MACJ,MAAAH;AAAA,MACA,SACE,8BACS,IAAI;AAAA,iBACK,gBAAgB,KAAK,CAAC;AAAA,MAC1C;AAAA,IACF,CAAC;AAZH,SAAkBG,OAAU;AAc1B,SAAK,OAAO;AAAA,EACd;AAAA,EAEA,OAAO,WAAW,OAAyC;AACzD,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,iBAAiB,OAAyC;AAC/D,WACE,iBAAiB,SACjB,MAAM,SAASD,SACf,UAAU,SACV,OAAO,MAAM,SAAS;AAAA,EAE1B;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,MACZ,OAAO,KAAK;AAAA,MAEZ,WAAW,KAAK;AAAA,IAClB;AAAA,EACF;AACF;AA9CoBG,MAAAD;;;ACNpB,IAAME,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,kBAAN,cAA8B,WAAW;AAAA;AAAA,EAG9C,YAAY,EAAE,QAAQ,GAAwB;AAC5C,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAHzB,SAAkBG,OAAU;AAAA,EAI5B;AAAA,EAEA,OAAO,WAAW,OAA0C;AAC1D,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,kBAAkB,OAA0C;AACjE,WAAO,iBAAiB,SAAS,MAAM,SAASD;AAAA,EAClD;AACF;AAhBoBG,MAAAD;;;ACLpB,IAAME,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AAMO,IAAM,mBAAN,cAA+B,WAAW;AAAA;AAAA,EAG/C,YAAY,EAAE,QAAQ,GAAwB;AAC5C,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AAHzB,SAAkBG,OAAU;AAAA,EAI5B;AAAA,EAEA,OAAO,WAAW,OAA2C;AAC3D,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,mBAAmB,OAA2C;AACnE,WAAO,iBAAiB,SAAS,MAAM,SAASD;AAAA,EAClD;AACF;AAhBoBG,MAAAD;;;ACLpB,IAAME,QAAO;AACb,IAAMC,UAAS,mBAAmBD,KAAI;AACtC,IAAME,UAAS,OAAO,IAAID,OAAM;AAJhC,IAAAE;AASO,IAAM,0BAAN,cAAsC,WAAW;AAAA;AAAA,EAGtD,YAAY;AAAA,IACV,UAAU;AAAA,EACZ,IAA0B,CAAC,GAAG;AAC5B,UAAM,EAAE,MAAAH,OAAM,QAAQ,CAAC;AALzB,SAAkBG,OAAU;AAAA,EAM5B;AAAA,EAEA,OAAO,WAAW,OAAkD;AAClE,WAAO,WAAW,UAAU,OAAOF,OAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,0BACL,OACkC;AAClC,WAAO,iBAAiB,SAAS,MAAM,SAASD;AAAA,EAClD;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,OAAO,KAAK;AAAA,MACZ,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,IACd;AAAA,EACF;AACF;AAhCoBG,MAAAD;;;ACRpB,IAAME,QAAO;AACb,IAAMC,WAAS,mBAAmBD,KAAI;AACtC,IAAME,WAAS,OAAO,IAAID,QAAM;AAJhC,IAAAE;AAMO,IAAM,qCAAN,cAAiD,WAAW;AAAA,EAQjE,YAAY,SAKT;AACD,UAAM;AAAA,MACJ,MAAAH;AAAA,MACA,SACE,oDACO,QAAQ,QAAQ,WAAW,QAAQ,OAAO,0BAC9C,QAAQ,oBAAoB,yBAAyB,QAAQ,OAAO,MAAM;AAAA,IACjF,CAAC;AAnBH,SAAkBG,QAAU;AAqB1B,SAAK,WAAW,QAAQ;AACxB,SAAK,UAAU,QAAQ;AACvB,SAAK,uBAAuB,QAAQ;AACpC,SAAK,SAAS,QAAQ;AAAA,EACxB;AAAA,EAEA,OAAO,WACL,OAC6C;AAC7C,WAAO,WAAW,UAAU,OAAOF,QAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,qCACL,OAC6C;AAC7C,WACE,iBAAiB,SACjB,MAAM,SAASD,SACf,cAAc,SACd,OAAO,MAAM,aAAa,YAC1B,aAAa,SACb,OAAO,MAAM,YAAY,YACzB,0BAA0B,SAC1B,OAAO,MAAM,yBAAyB,YACtC,YAAY,SACZ,MAAM,QAAQ,MAAM,MAAM;AAAA,EAE9B;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,MAEZ,UAAU,KAAK;AAAA,MACf,SAAS,KAAK;AAAA,MACd,sBAAsB,KAAK;AAAA,MAC3B,QAAQ,KAAK;AAAA,IACf;AAAA,EACF;AACF;AApEoBG,OAAAD;;;ACJpB,IAAME,SAAO;AACb,IAAMC,WAAS,mBAAmBD,MAAI;AACtC,IAAME,WAAS,OAAO,IAAID,QAAM;AALhC,IAAAE;AAOO,IAAM,uBAAN,MAAM,6BAA4B,WAAW;AAAA,EAKlD,YAAY,EAAE,OAAO,MAAM,GAAuC;AAChE,UAAM;AAAA,MACJ,MAAAH;AAAA,MACA,SACE,kCACU,KAAK,UAAU,KAAK,CAAC;AAAA,iBACb,gBAAgB,KAAK,CAAC;AAAA,MAC1C;AAAA,IACF,CAAC;AAZH,SAAkBG,QAAU;AAc1B,SAAK,QAAQ;AAAA,EACf;AAAA,EAEA,OAAO,WAAW,OAA8C;AAC9D,WAAO,WAAW,UAAU,OAAOF,QAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,OAAO,KAAK;AAAA,IACV;AAAA,IACA;AAAA,EACF,GAGwB;AACtB,WAAO,qBAAoB,WAAW,KAAK,KAAK,MAAM,UAAU,QAC5D,QACA,IAAI,qBAAoB,EAAE,OAAO,MAAM,CAAC;AAAA,EAC9C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,sBAAsB,OAA8C;AACzE,WAAO,iBAAiB,SAAS,MAAM,SAASD;AAAA,EAClD;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,MACZ,OAAO,KAAK;AAAA,MAEZ,OAAO,KAAK;AAAA,IACd;AAAA,EACF;AACF;AA/DoBG,OAAAD;AADb,IAAM,sBAAN;;;ACLP,IAAME,SAAO;AACb,IAAMC,WAAS,mBAAmBD,MAAI;AACtC,IAAME,WAAS,OAAO,IAAID,QAAM;AAJhC,IAAAE;AAMO,IAAM,gCAAN,cAA4C,WAAW;AAAA,EAK5D,YAAY,EAAE,cAAc,GAA8B;AACxD,UAAM;AAAA,MACJ,MAAAH;AAAA,MACA,SAAS,IAAI,aAAa;AAAA,IAC5B,CAAC;AARH,SAAkBG,QAAU;AAU1B,SAAK,gBAAgB;AAAA,EACvB;AAAA,EAEA,OAAO,WAAW,OAAwD;AACxE,WAAO,WAAW,UAAU,OAAOF,QAAM;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,gCACL,OACwC;AACxC,WACE,iBAAiB,SACjB,MAAM,SAASD,UACf,OAAQ,MAAwC,kBAAkB;AAAA,EAEtE;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,OAAO,KAAK;AAAA,MAEZ,eAAe,KAAK;AAAA,IACtB;AAAA,EACF;AACF;AA1CoBG,OAAAD;","names":["name","marker","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","prompt","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a"]}
1
+ {"version":3,"sources":["../src/errors/ai-sdk-error.ts","../src/errors/api-call-error.ts","../src/errors/empty-response-body-error.ts","../src/errors/get-error-message.ts","../src/errors/invalid-prompt-error.ts","../src/errors/invalid-response-data-error.ts","../src/errors/json-parse-error.ts","../src/errors/load-api-key-error.ts","../src/errors/load-setting-error.ts","../src/errors/no-content-generated-error.ts","../src/errors/too-many-embedding-values-for-call-error.ts","../src/errors/type-validation-error.ts","../src/errors/unsupported-functionality-error.ts","../src/json-value/is-json.ts"],"sourcesContent":["/**\n * Symbol used for identifying AI SDK Error instances.\n * Enables checking if an error is an instance of AISDKError across package versions.\n */\nconst marker = 'vercel.ai.error';\nconst symbol = Symbol.for(marker);\n\n/**\n * Custom error class for AI SDK related errors.\n * @extends Error\n */\nexport class AISDKError extends Error {\n private readonly [symbol] = true; // used in isInstance\n\n /**\n * The underlying cause of the error, if any.\n */\n readonly cause?: unknown;\n\n /**\n * Creates an AI SDK Error.\n *\n * @param {Object} params - The parameters for creating the error.\n * @param {string} params.name - The name of the error.\n * @param {string} params.message - The error message.\n * @param {unknown} [params.cause] - The underlying cause of the error.\n */\n constructor({\n name,\n message,\n cause,\n }: {\n name: string;\n message: string;\n cause?: unknown;\n }) {\n super(message);\n\n this.name = name;\n this.cause = cause;\n }\n\n /**\n * Checks if the given error is an AI SDK Error.\n * @param {unknown} error - The error to check.\n * @returns {boolean} True if the error is an AI SDK Error, false otherwise.\n */\n static isInstance(error: unknown): error is AISDKError {\n return AISDKError.hasMarker(error, marker);\n }\n\n protected static hasMarker(error: unknown, marker: string): boolean {\n const markerSymbol = Symbol.for(marker);\n return (\n error != null &&\n typeof error === 'object' &&\n markerSymbol in error &&\n typeof error[markerSymbol] === 'boolean' &&\n error[markerSymbol] === true\n );\n }\n\n /**\n * Returns a JSON representation of the error.\n * @returns {Object} An object containing the error's name, message, and cause.\n *\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_APICallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class APICallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly url: string;\n readonly requestBodyValues: unknown;\n readonly statusCode?: number;\n\n readonly responseHeaders?: Record<string, string>;\n readonly responseBody?: string;\n\n readonly isRetryable: boolean;\n readonly data?: unknown;\n\n constructor({\n message,\n url,\n requestBodyValues,\n statusCode,\n responseHeaders,\n responseBody,\n cause,\n isRetryable = statusCode != null &&\n (statusCode === 408 || // request timeout\n statusCode === 409 || // conflict\n statusCode === 429 || // too many requests\n statusCode >= 500), // server error\n data,\n }: {\n message: string;\n url: string;\n requestBodyValues: unknown;\n statusCode?: number;\n responseHeaders?: Record<string, string>;\n responseBody?: string;\n cause?: unknown;\n isRetryable?: boolean;\n data?: unknown;\n }) {\n super({ name, message, cause });\n\n this.url = url;\n this.requestBodyValues = requestBodyValues;\n this.statusCode = statusCode;\n this.responseHeaders = responseHeaders;\n this.responseBody = responseBody;\n this.isRetryable = isRetryable;\n this.data = data;\n }\n\n static isInstance(error: unknown): error is APICallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isAPICallError(error: unknown): error is APICallError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as APICallError).url === 'string' &&\n typeof (error as APICallError).requestBodyValues === 'object' &&\n ((error as APICallError).statusCode == null ||\n typeof (error as APICallError).statusCode === 'number') &&\n ((error as APICallError).responseHeaders == null ||\n typeof (error as APICallError).responseHeaders === 'object') &&\n ((error as APICallError).responseBody == null ||\n typeof (error as APICallError).responseBody === 'string') &&\n ((error as APICallError).cause == null ||\n typeof (error as APICallError).cause === 'object') &&\n typeof (error as APICallError).isRetryable === 'boolean' &&\n ((error as APICallError).data == null ||\n typeof (error as APICallError).data === 'object')\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n url: this.url,\n requestBodyValues: this.requestBodyValues,\n statusCode: this.statusCode,\n responseHeaders: this.responseHeaders,\n responseBody: this.responseBody,\n cause: this.cause,\n isRetryable: this.isRetryable,\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_EmptyResponseBodyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class EmptyResponseBodyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message = 'Empty response body' }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is EmptyResponseBodyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isEmptyResponseBodyError(\n error: unknown,\n ): error is EmptyResponseBodyError {\n return error instanceof Error && error.name === name;\n }\n}\n","export function getErrorMessage(error: unknown | undefined) {\n if (error == null) {\n return 'unknown error';\n }\n\n if (typeof error === 'string') {\n return error;\n }\n\n if (error instanceof Error) {\n return error.message;\n }\n\n return JSON.stringify(error);\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidPromptError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * A prompt is invalid. This error should be thrown by providers when they cannot\n * process a prompt.\n */\nexport class InvalidPromptError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly prompt: unknown;\n\n constructor({\n prompt,\n message,\n cause,\n }: {\n prompt: unknown;\n message: string;\n cause?: unknown;\n }) {\n super({ name, message: `Invalid prompt: ${message}`, cause });\n\n this.prompt = prompt;\n }\n\n static isInstance(error: unknown): error is InvalidPromptError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidPromptError(error: unknown): error is InvalidPromptError {\n return error instanceof Error && error.name === name && prompt != null;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n prompt: this.prompt,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_InvalidResponseDataError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\n * Server returned a response with invalid data content.\n * This should be thrown by providers when they cannot parse the response from the API.\n */\nexport class InvalidResponseDataError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly data: unknown;\n\n constructor({\n data,\n message = `Invalid response data: ${JSON.stringify(data)}.`,\n }: {\n data: unknown;\n message?: string;\n }) {\n super({ name, message });\n\n this.data = data;\n }\n\n static isInstance(error: unknown): error is InvalidResponseDataError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isInvalidResponseDataError(\n error: unknown,\n ): error is InvalidResponseDataError {\n return (\n error instanceof Error &&\n error.name === name &&\n (error as InvalidResponseDataError).data != null\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n data: this.data,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_JSONParseError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class JSONParseError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly text: string;\n\n constructor({ text, cause }: { text: string; cause: unknown }) {\n super({\n name,\n message:\n `JSON parsing failed: ` +\n `Text: ${text}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.text = text;\n }\n\n static isInstance(error: unknown): error is JSONParseError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isJSONParseError(error: unknown): error is JSONParseError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'text' in error &&\n typeof error.text === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n valueText: this.text,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadAPIKeyError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadAPIKeyError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadAPIKeyError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadAPIKeyError(error: unknown): error is LoadAPIKeyError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_LoadSettingError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class LoadSettingError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({ message }: { message: string }) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is LoadSettingError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isLoadSettingError(error: unknown): error is LoadSettingError {\n return error instanceof Error && error.name === name;\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_NoContentGeneratedError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\n/**\nThrown when the AI provider fails to generate any content.\n */\nexport class NoContentGeneratedError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n constructor({\n message = 'No content generated.',\n }: { message?: string } = {}) {\n super({ name, message });\n }\n\n static isInstance(error: unknown): error is NoContentGeneratedError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isNoContentGeneratedError(\n error: unknown,\n ): error is NoContentGeneratedError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n cause: this.cause,\n message: this.message,\n stack: this.stack,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_TooManyEmbeddingValuesForCallError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TooManyEmbeddingValuesForCallError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly provider: string;\n readonly modelId: string;\n readonly maxEmbeddingsPerCall: number;\n readonly values: Array<unknown>;\n\n constructor(options: {\n provider: string;\n modelId: string;\n maxEmbeddingsPerCall: number;\n values: Array<unknown>;\n }) {\n super({\n name,\n message:\n `Too many values for a single embedding call. ` +\n `The ${options.provider} model \"${options.modelId}\" can only embed up to ` +\n `${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`,\n });\n\n this.provider = options.provider;\n this.modelId = options.modelId;\n this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;\n this.values = options.values;\n }\n\n static isInstance(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTooManyEmbeddingValuesForCallError(\n error: unknown,\n ): error is TooManyEmbeddingValuesForCallError {\n return (\n error instanceof Error &&\n error.name === name &&\n 'provider' in error &&\n typeof error.provider === 'string' &&\n 'modelId' in error &&\n typeof error.modelId === 'string' &&\n 'maxEmbeddingsPerCall' in error &&\n typeof error.maxEmbeddingsPerCall === 'number' &&\n 'values' in error &&\n Array.isArray(error.values)\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values: this.values,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\nimport { getErrorMessage } from './get-error-message';\n\nconst name = 'AI_TypeValidationError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class TypeValidationError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly value: unknown;\n\n constructor({ value, cause }: { value: unknown; cause: unknown }) {\n super({\n name,\n message:\n `Type validation failed: ` +\n `Value: ${JSON.stringify(value)}.\\n` +\n `Error message: ${getErrorMessage(cause)}`,\n cause,\n });\n\n this.value = value;\n }\n\n static isInstance(error: unknown): error is TypeValidationError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * Wraps an error into a TypeValidationError.\n * If the cause is already a TypeValidationError with the same value, it returns the cause.\n * Otherwise, it creates a new TypeValidationError.\n *\n * @param {Object} params - The parameters for wrapping the error.\n * @param {unknown} params.value - The value that failed validation.\n * @param {unknown} params.cause - The original error or cause of the validation failure.\n * @returns {TypeValidationError} A TypeValidationError instance.\n */\n static wrap({\n value,\n cause,\n }: {\n value: unknown;\n cause: unknown;\n }): TypeValidationError {\n return TypeValidationError.isInstance(cause) && cause.value === value\n ? cause\n : new TypeValidationError({ value, cause });\n }\n\n /**\n * @deprecated use `isInstance` instead\n */\n static isTypeValidationError(error: unknown): error is TypeValidationError {\n return error instanceof Error && error.name === name;\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n cause: this.cause,\n stack: this.stack,\n\n value: this.value,\n };\n }\n}\n","import { AISDKError } from './ai-sdk-error';\n\nconst name = 'AI_UnsupportedFunctionalityError';\nconst marker = `vercel.ai.error.${name}`;\nconst symbol = Symbol.for(marker);\n\nexport class UnsupportedFunctionalityError extends AISDKError {\n private readonly [symbol] = true; // used in isInstance\n\n readonly functionality: string;\n\n constructor({ functionality }: { functionality: string }) {\n super({\n name,\n message: `'${functionality}' functionality not supported.`,\n });\n\n this.functionality = functionality;\n }\n\n static isInstance(error: unknown): error is UnsupportedFunctionalityError {\n return AISDKError.hasMarker(error, marker);\n }\n\n /**\n * @deprecated Use isInstance instead.\n */\n static isUnsupportedFunctionalityError(\n error: unknown,\n ): error is UnsupportedFunctionalityError {\n return (\n error instanceof Error &&\n error.name === name &&\n typeof (error as UnsupportedFunctionalityError).functionality === 'string'\n );\n }\n\n /**\n * @deprecated Do not use this method. It will be removed in the next major version.\n */\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n\n functionality: this.functionality,\n };\n }\n}\n","import { JSONArray, JSONObject, JSONValue } from './json-value';\n\nexport function isJSONValue(value: unknown): value is JSONValue {\n if (\n value === null ||\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n ) {\n return true;\n }\n\n if (Array.isArray(value)) {\n return value.every(isJSONValue);\n }\n\n if (typeof value === 'object') {\n return Object.entries(value).every(\n ([key, val]) => typeof key === 'string' && isJSONValue(val),\n );\n }\n\n return false;\n}\n\nexport function isJSONArray(value: unknown): value is JSONArray {\n return Array.isArray(value) && value.every(isJSONValue);\n}\n\nexport function isJSONObject(value: unknown): value is JSONObject {\n return (\n value != null &&\n typeof value === 'object' &&\n Object.entries(value).every(\n ([key, val]) => typeof key === 'string' && isJSONValue(val),\n )\n );\n}\n"],"mappings":"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","names":["name","marker","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","prompt","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a","name","marker","symbol","_a"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/provider",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",
@@ -24,7 +24,7 @@
24
24
  "@types/json-schema": "7.0.15",
25
25
  "@types/node": "^18",
26
26
  "tsup": "^8",
27
- "typescript": "5.1.3",
27
+ "typescript": "5.5.4",
28
28
  "@vercel/ai-tsconfig": "0.0.0"
29
29
  },
30
30
  "engines": {