{"version":3,"sources":["../src/elevenlabs-provider.ts","../src/elevenlabs-transcription-model.ts","../src/elevenlabs-error.ts","../src/elevenlabs-speech-model.ts","../src/version.ts"],"sourcesContent":["import {\n  NoSuchModelError,\n  type TranscriptionModelV3,\n  type SpeechModelV3,\n  type ProviderV3,\n} from '@ai-sdk/provider';\nimport {\n  loadApiKey,\n  withUserAgentSuffix,\n  type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { ElevenLabsTranscriptionModel } from './elevenlabs-transcription-model';\nimport type { ElevenLabsTranscriptionModelId } from './elevenlabs-transcription-options';\nimport { ElevenLabsSpeechModel } from './elevenlabs-speech-model';\nimport type { ElevenLabsSpeechModelId } from './elevenlabs-speech-options';\nimport { VERSION } from './version';\n\nexport interface ElevenLabsProvider extends ProviderV3 {\n  (\n    modelId: 'scribe_v1',\n    settings?: {},\n  ): {\n    transcription: ElevenLabsTranscriptionModel;\n  };\n\n  /**\n   * Creates a model for transcription.\n   */\n  transcription(modelId: ElevenLabsTranscriptionModelId): TranscriptionModelV3;\n\n  /**\n   * Creates a model for speech generation.\n   */\n  speech(modelId: ElevenLabsSpeechModelId): SpeechModelV3;\n\n  /**\n   * @deprecated Use `embeddingModel` instead.\n   */\n  textEmbeddingModel(modelId: string): never;\n}\n\nexport interface ElevenLabsProviderSettings {\n  /**\n   * API key for authenticating requests.\n   */\n  apiKey?: string;\n\n  /**\n   * Custom headers to include in the requests.\n   */\n  headers?: Record<string, string>;\n\n  /**\n   * Custom fetch implementation. You can use it as a middleware to intercept requests,\n   * or to provide a custom fetch implementation for e.g. testing.\n   */\n  fetch?: FetchFunction;\n}\n\n/**\n * Create an ElevenLabs provider instance.\n */\nexport function createElevenLabs(\n  options: ElevenLabsProviderSettings = {},\n): ElevenLabsProvider {\n  const getHeaders = () =>\n    withUserAgentSuffix(\n      {\n        'xi-api-key': loadApiKey({\n          apiKey: options.apiKey,\n          environmentVariableName: 'ELEVENLABS_API_KEY',\n          description: 'ElevenLabs',\n        }),\n        ...options.headers,\n      },\n      `ai-sdk/elevenlabs/${VERSION}`,\n    );\n\n  const createTranscriptionModel = (modelId: ElevenLabsTranscriptionModelId) =>\n    new ElevenLabsTranscriptionModel(modelId, {\n      provider: `elevenlabs.transcription`,\n      url: ({ path }) => `https://api.elevenlabs.io${path}`,\n      headers: getHeaders,\n      fetch: options.fetch,\n    });\n\n  const createSpeechModel = (modelId: ElevenLabsSpeechModelId) =>\n    new ElevenLabsSpeechModel(modelId, {\n      provider: `elevenlabs.speech`,\n      url: ({ path }) => `https://api.elevenlabs.io${path}`,\n      headers: getHeaders,\n      fetch: options.fetch,\n    });\n\n  const provider = function (modelId: ElevenLabsTranscriptionModelId) {\n    return {\n      transcription: createTranscriptionModel(modelId),\n    };\n  };\n\n  provider.specificationVersion = 'v3' as const;\n  provider.transcription = createTranscriptionModel;\n  provider.transcriptionModel = createTranscriptionModel;\n  provider.speech = createSpeechModel;\n  provider.speechModel = createSpeechModel;\n\n  provider.languageModel = (modelId: string) => {\n    throw new NoSuchModelError({\n      modelId,\n      modelType: 'languageModel',\n      message: 'ElevenLabs does not provide language models',\n    });\n  };\n\n  provider.embeddingModel = (modelId: string) => {\n    throw new NoSuchModelError({\n      modelId,\n      modelType: 'embeddingModel',\n      message: 'ElevenLabs does not provide embedding models',\n    });\n  };\n  provider.textEmbeddingModel = provider.embeddingModel;\n\n  provider.imageModel = (modelId: string) => {\n    throw new NoSuchModelError({\n      modelId,\n      modelType: 'imageModel',\n      message: 'ElevenLabs does not provide image models',\n    });\n  };\n\n  return provider as ElevenLabsProvider;\n}\n\n/**\n * Default ElevenLabs provider instance.\n */\nexport const elevenlabs = createElevenLabs();\n","import type { TranscriptionModelV3, SharedV3Warning } from '@ai-sdk/provider';\nimport {\n  combineHeaders,\n  convertBase64ToUint8Array,\n  createJsonResponseHandler,\n  mediaTypeToExtension,\n  parseProviderOptions,\n  postFormDataToApi,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport type { ElevenLabsConfig } from './elevenlabs-config';\nimport { elevenlabsFailedResponseHandler } from './elevenlabs-error';\nimport type { ElevenLabsTranscriptionModelId } from './elevenlabs-transcription-options';\nimport type { ElevenLabsTranscriptionAPITypes } from './elevenlabs-api-types';\n\n// https://elevenlabs.io/docs/api-reference/speech-to-text/convert\nconst elevenLabsTranscriptionModelOptionsSchema = z.object({\n  languageCode: z.string().nullish(),\n  tagAudioEvents: z.boolean().nullish().default(true),\n  numSpeakers: z.number().int().min(1).max(32).nullish(),\n  timestampsGranularity: z\n    .enum(['none', 'word', 'character'])\n    .nullish()\n    .default('word'),\n  diarize: z.boolean().nullish().default(false),\n  fileFormat: z.enum(['pcm_s16le_16', 'other']).nullish().default('other'),\n});\n\nexport type ElevenLabsTranscriptionModelOptions = z.infer<\n  typeof elevenLabsTranscriptionModelOptionsSchema\n>;\n\ninterface ElevenLabsTranscriptionModelConfig extends ElevenLabsConfig {\n  _internal?: {\n    currentDate?: () => Date;\n  };\n}\n\nexport class ElevenLabsTranscriptionModel implements TranscriptionModelV3 {\n  readonly specificationVersion = 'v3';\n\n  get provider(): string {\n    return this.config.provider;\n  }\n\n  constructor(\n    readonly modelId: ElevenLabsTranscriptionModelId,\n    private readonly config: ElevenLabsTranscriptionModelConfig,\n  ) {}\n\n  private async getArgs({\n    audio,\n    mediaType,\n    providerOptions,\n  }: Parameters<TranscriptionModelV3['doGenerate']>[0]) {\n    const warnings: SharedV3Warning[] = [];\n\n    // Parse provider options\n    const elevenlabsOptions = await parseProviderOptions({\n      provider: 'elevenlabs',\n      providerOptions,\n      schema: elevenLabsTranscriptionModelOptionsSchema,\n    });\n\n    // Create form data with base fields\n    const formData = new FormData();\n    const blob =\n      audio instanceof Uint8Array\n        ? new Blob([audio])\n        : new Blob([convertBase64ToUint8Array(audio)]);\n\n    formData.append('model_id', this.modelId);\n    const fileExtension = mediaTypeToExtension(mediaType);\n    formData.append(\n      'file',\n      new File([blob], 'audio', { type: mediaType }),\n      `audio.${fileExtension}`,\n    );\n    formData.append('diarize', 'true');\n\n    // Add provider-specific options\n    if (elevenlabsOptions) {\n      const transcriptionModelOptions: ElevenLabsTranscriptionAPITypes = {\n        language_code: elevenlabsOptions.languageCode ?? undefined,\n        tag_audio_events: elevenlabsOptions.tagAudioEvents ?? undefined,\n        num_speakers: elevenlabsOptions.numSpeakers ?? undefined,\n        timestamps_granularity:\n          elevenlabsOptions.timestampsGranularity ?? undefined,\n        file_format: elevenlabsOptions.fileFormat ?? undefined,\n      };\n\n      if (typeof elevenlabsOptions.diarize === 'boolean') {\n        formData.append('diarize', String(elevenlabsOptions.diarize));\n      }\n\n      for (const key in transcriptionModelOptions) {\n        const value =\n          transcriptionModelOptions[\n            key as keyof ElevenLabsTranscriptionAPITypes\n          ];\n        if (value !== undefined) {\n          formData.append(key, String(value));\n        }\n      }\n    }\n\n    return {\n      formData,\n      warnings,\n    };\n  }\n\n  async doGenerate(\n    options: Parameters<TranscriptionModelV3['doGenerate']>[0],\n  ): Promise<Awaited<ReturnType<TranscriptionModelV3['doGenerate']>>> {\n    const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n    const { formData, warnings } = await this.getArgs(options);\n\n    const {\n      value: response,\n      responseHeaders,\n      rawValue: rawResponse,\n    } = await postFormDataToApi({\n      url: this.config.url({\n        path: '/v1/speech-to-text',\n        modelId: this.modelId,\n      }),\n      headers: combineHeaders(this.config.headers(), options.headers),\n      formData,\n      failedResponseHandler: elevenlabsFailedResponseHandler,\n      successfulResponseHandler: createJsonResponseHandler(\n        elevenlabsTranscriptionResponseSchema,\n      ),\n      abortSignal: options.abortSignal,\n      fetch: this.config.fetch,\n    });\n\n    return {\n      text: response.text,\n      segments:\n        response.words?.map(word => ({\n          text: word.text,\n          startSecond: word.start ?? 0,\n          endSecond: word.end ?? 0,\n        })) ?? [],\n      language: response.language_code,\n      durationInSeconds: response.words?.at(-1)?.end ?? undefined,\n      warnings,\n      response: {\n        timestamp: currentDate,\n        modelId: this.modelId,\n        headers: responseHeaders,\n        body: rawResponse,\n      },\n    };\n  }\n}\n\nconst elevenlabsTranscriptionResponseSchema = z.object({\n  language_code: z.string(),\n  language_probability: z.number(),\n  text: z.string(),\n  words: z\n    .array(\n      z.object({\n        text: z.string(),\n        type: z.enum(['word', 'spacing', 'audio_event']),\n        start: z.number().nullish(),\n        end: z.number().nullish(),\n        speaker_id: z.string().nullish(),\n        characters: z\n          .array(\n            z.object({\n              text: z.string(),\n              start: z.number().nullish(),\n              end: z.number().nullish(),\n            }),\n          )\n          .nullish(),\n      }),\n    )\n    .nullish(),\n});\n","import { z } from 'zod/v4';\nimport { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\n\nexport const elevenlabsErrorDataSchema = z.object({\n  error: z.object({\n    message: z.string(),\n    code: z.number(),\n  }),\n});\n\nexport type ElevenLabsErrorData = z.infer<typeof elevenlabsErrorDataSchema>;\n\nexport const elevenlabsFailedResponseHandler = createJsonErrorResponseHandler({\n  errorSchema: elevenlabsErrorDataSchema,\n  errorToMessage: data => data.error.message,\n});\n","import type { SpeechModelV3, SharedV3Warning } from '@ai-sdk/provider';\nimport {\n  combineHeaders,\n  createBinaryResponseHandler,\n  parseProviderOptions,\n  postJsonToApi,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport type { ElevenLabsConfig } from './elevenlabs-config';\nimport { elevenlabsFailedResponseHandler } from './elevenlabs-error';\nimport type { ElevenLabsSpeechAPITypes } from './elevenlabs-speech-api-types';\nimport type {\n  ElevenLabsSpeechModelId,\n  ElevenLabsSpeechVoiceId,\n} from './elevenlabs-speech-options';\n\n// Schema for camelCase input from users\nconst elevenLabsSpeechModelOptionsSchema = z.object({\n  languageCode: z.string().optional(),\n  voiceSettings: z\n    .object({\n      stability: z.number().min(0).max(1).optional(),\n      similarityBoost: z.number().min(0).max(1).optional(),\n      style: z.number().min(0).max(1).optional(),\n      useSpeakerBoost: z.boolean().optional(),\n    })\n    .optional(),\n  pronunciationDictionaryLocators: z\n    .array(\n      z.object({\n        pronunciationDictionaryId: z.string(),\n        versionId: z.string().optional(),\n      }),\n    )\n    .max(3)\n    .optional(),\n  seed: z.number().min(0).max(4294967295).optional(),\n  previousText: z.string().optional(),\n  nextText: z.string().optional(),\n  previousRequestIds: z.array(z.string()).max(3).optional(),\n  nextRequestIds: z.array(z.string()).max(3).optional(),\n  applyTextNormalization: z.enum(['auto', 'on', 'off']).optional(),\n  applyLanguageTextNormalization: z.boolean().optional(),\n  enableLogging: z.boolean().optional(),\n});\n\nexport type ElevenLabsSpeechModelOptions = z.infer<\n  typeof elevenLabsSpeechModelOptionsSchema\n>;\n\ninterface ElevenLabsSpeechModelConfig extends ElevenLabsConfig {\n  _internal?: {\n    currentDate?: () => Date;\n  };\n}\n\nexport class ElevenLabsSpeechModel implements SpeechModelV3 {\n  readonly specificationVersion = 'v3';\n\n  get provider(): string {\n    return this.config.provider;\n  }\n\n  constructor(\n    readonly modelId: ElevenLabsSpeechModelId,\n    private readonly config: ElevenLabsSpeechModelConfig,\n  ) {}\n\n  private async getArgs({\n    text,\n    voice = '21m00Tcm4TlvDq8ikWAM',\n    outputFormat = 'mp3_44100_128',\n    instructions,\n    language,\n    speed,\n    providerOptions,\n  }: Parameters<SpeechModelV3['doGenerate']>[0]) {\n    const warnings: SharedV3Warning[] = [];\n\n    // Parse provider options\n    const elevenLabsOptions = await parseProviderOptions({\n      provider: 'elevenlabs',\n      providerOptions,\n      schema: elevenLabsSpeechModelOptionsSchema,\n    });\n\n    // Create request body\n    const requestBody: ElevenLabsSpeechAPITypes = {\n      text,\n      model_id: this.modelId,\n    };\n\n    // Prepare query parameters\n    const queryParams: Record<string, string> = {};\n\n    // Map outputFormat to ElevenLabs format (as query param)\n    if (outputFormat) {\n      const formatMap: Record<string, string> = {\n        mp3: 'mp3_44100_128',\n        mp3_32: 'mp3_44100_32',\n        mp3_64: 'mp3_44100_64',\n        mp3_96: 'mp3_44100_96',\n        mp3_128: 'mp3_44100_128',\n        mp3_192: 'mp3_44100_192',\n        pcm: 'pcm_44100',\n        pcm_16000: 'pcm_16000',\n        pcm_22050: 'pcm_22050',\n        pcm_24000: 'pcm_24000',\n        pcm_44100: 'pcm_44100',\n        ulaw: 'ulaw_8000',\n      };\n\n      const mappedFormat = formatMap[outputFormat] || outputFormat;\n      queryParams.output_format = mappedFormat;\n    }\n\n    // Add language code if provided\n    if (language) {\n      requestBody.language_code = language;\n    }\n\n    const voiceSettings: typeof requestBody.voice_settings = {};\n\n    if (speed != null) {\n      voiceSettings.speed = speed;\n    }\n\n    // Add provider-specific options - map from camelCase to snake_case\n    if (elevenLabsOptions) {\n      if (elevenLabsOptions.voiceSettings) {\n        // Map camelCase voice settings to snake_case for API\n        if (elevenLabsOptions.voiceSettings.stability != null) {\n          voiceSettings.stability = elevenLabsOptions.voiceSettings.stability;\n        }\n        if (elevenLabsOptions.voiceSettings.similarityBoost != null) {\n          voiceSettings.similarity_boost =\n            elevenLabsOptions.voiceSettings.similarityBoost;\n        }\n        if (elevenLabsOptions.voiceSettings.style != null) {\n          voiceSettings.style = elevenLabsOptions.voiceSettings.style;\n        }\n        if (elevenLabsOptions.voiceSettings.useSpeakerBoost != null) {\n          voiceSettings.use_speaker_boost =\n            elevenLabsOptions.voiceSettings.useSpeakerBoost;\n        }\n      }\n      // Add language code from provider options if not already set\n      if (elevenLabsOptions.languageCode && !requestBody.language_code) {\n        requestBody.language_code = elevenLabsOptions.languageCode;\n      }\n\n      // Map pronunciation dictionary locators\n      if (elevenLabsOptions.pronunciationDictionaryLocators) {\n        requestBody.pronunciation_dictionary_locators =\n          elevenLabsOptions.pronunciationDictionaryLocators.map(locator => ({\n            pronunciation_dictionary_id: locator.pronunciationDictionaryId,\n            ...(locator.versionId && { version_id: locator.versionId }),\n          }));\n      }\n\n      if (elevenLabsOptions.seed != null) {\n        requestBody.seed = elevenLabsOptions.seed;\n      }\n      if (elevenLabsOptions.previousText) {\n        requestBody.previous_text = elevenLabsOptions.previousText;\n      }\n      if (elevenLabsOptions.nextText) {\n        requestBody.next_text = elevenLabsOptions.nextText;\n      }\n\n      // Add previous and next request IDs\n      if (elevenLabsOptions.previousRequestIds) {\n        requestBody.previous_request_ids = elevenLabsOptions.previousRequestIds;\n      }\n      if (elevenLabsOptions.nextRequestIds) {\n        requestBody.next_request_ids = elevenLabsOptions.nextRequestIds;\n      }\n\n      // Add text normalization options\n      if (elevenLabsOptions.applyTextNormalization) {\n        requestBody.apply_text_normalization =\n          elevenLabsOptions.applyTextNormalization;\n      }\n      if (elevenLabsOptions.applyLanguageTextNormalization != null) {\n        requestBody.apply_language_text_normalization =\n          elevenLabsOptions.applyLanguageTextNormalization;\n      }\n\n      // enable_logging is a query parameter\n      if (elevenLabsOptions.enableLogging != null) {\n        queryParams.enable_logging = String(elevenLabsOptions.enableLogging);\n      }\n    }\n\n    // Only add voice_settings if there are settings to add\n    if (Object.keys(voiceSettings).length > 0) {\n      requestBody.voice_settings = voiceSettings;\n    }\n\n    if (instructions) {\n      warnings.push({\n        type: 'unsupported',\n        feature: 'instructions',\n        details: `ElevenLabs speech models do not support instructions. Instructions parameter was ignored.`,\n      });\n    }\n\n    return {\n      requestBody,\n      queryParams,\n      warnings,\n      voiceId: voice as ElevenLabsSpeechVoiceId,\n    };\n  }\n\n  async doGenerate(\n    options: Parameters<SpeechModelV3['doGenerate']>[0],\n  ): Promise<Awaited<ReturnType<SpeechModelV3['doGenerate']>>> {\n    const currentDate = this.config._internal?.currentDate?.() ?? new Date();\n    const { requestBody, queryParams, warnings, voiceId } =\n      await this.getArgs(options);\n\n    const {\n      value: audio,\n      responseHeaders,\n      rawValue: rawResponse,\n    } = await postJsonToApi({\n      url: (() => {\n        const baseUrl = this.config.url({\n          path: `/v1/text-to-speech/${voiceId}`,\n          modelId: this.modelId,\n        });\n        const queryString = new URLSearchParams(queryParams).toString();\n        return queryString ? `${baseUrl}?${queryString}` : baseUrl;\n      })(),\n      headers: combineHeaders(this.config.headers(), options.headers),\n      body: requestBody,\n      failedResponseHandler: elevenlabsFailedResponseHandler,\n      successfulResponseHandler: createBinaryResponseHandler(),\n      abortSignal: options.abortSignal,\n      fetch: this.config.fetch,\n    });\n\n    return {\n      audio,\n      warnings,\n      request: {\n        body: JSON.stringify(requestBody),\n      },\n      response: {\n        timestamp: currentDate,\n        modelId: this.modelId,\n        headers: responseHeaders,\n        body: rawResponse,\n      },\n    };\n  }\n}\n","// Version string of this package injected at build time.\ndeclare const __PACKAGE_VERSION__: string | undefined;\nexport const VERSION: string =\n  typeof __PACKAGE_VERSION__ !== 'undefined'\n    ? __PACKAGE_VERSION__\n    : '0.0.0-test';\n"],"mappings":"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","names":["z","z","_a","_b","combineHeaders","parseProviderOptions","z","z","parseProviderOptions","combineHeaders"]}