diff --git a/src/core/webview/webviewMessageHandler.ts b/src/core/webview/webviewMessageHandler.ts index d240bb014d..2786be98be 100644 --- a/src/core/webview/webviewMessageHandler.ts +++ b/src/core/webview/webviewMessageHandler.ts @@ -1318,7 +1318,7 @@ export const webviewMessageHandler = async ( case "ttsProvider": // Handle TTS provider selection if (message.text) { - await updateGlobalState("ttsProvider", message.text) + await updateGlobalState("ttsProvider", message.text as "default" | "google-cloud" | "azure") await provider.postStateToWebview() } break @@ -1337,9 +1337,9 @@ export const webviewMessageHandler = async ( } break case "ttsAzureRegion": - // Handle Azure region selection + // Handle Azure region selection (stored as a secret) if (message.text) { - await updateGlobalState("ttsAzureRegion", message.text) + await provider.contextProxy.storeSecret("azureTtsRegion", message.text) await provider.postStateToWebview() } break diff --git a/src/shared/ExtensionMessage.ts b/src/shared/ExtensionMessage.ts index 7d2759c919..fbfc4a439a 100644 --- a/src/shared/ExtensionMessage.ts +++ b/src/shared/ExtensionMessage.ts @@ -101,6 +101,9 @@ export interface ExtensionMessage { | "remoteBrowserEnabled" | "ttsStart" | "ttsStop" + | "ttsVoices" + | "ttsUsageStats" + | "ttsProviderConfigured" | "maxReadFileLine" | "fileSearchResults" | "toggleApiConfigPin" @@ -211,6 +214,10 @@ export interface ExtensionMessage { queuedMessages?: QueuedMessage[] list?: string[] // For dismissedUpsells organizationId?: string | null // For organizationSwitchResult + voices?: any[] // For TTS voices + stats?: any // For TTS usage stats + provider?: string // For TTS provider checks + configured?: boolean // For TTS provider configuration status } export type ExtensionState = Pick< diff --git a/src/shared/WebviewMessage.ts b/src/shared/WebviewMessage.ts index f10808cd42..336af1b9e7 100644 --- a/src/shared/WebviewMessage.ts +++ b/src/shared/WebviewMessage.ts @@ -97,6 +97,13 @@ export interface WebviewMessage { | "soundEnabled" | "ttsEnabled" | "ttsSpeed" + | "ttsProvider" + | "ttsGoogleVoice" + | "ttsAzureVoice" + | "ttsAzureRegion" + | "getTtsVoices" + | "getTtsUsageStats" + | "checkTtsProviderConfigured" | "soundVolume" | "diffEnabled" | "enableCheckpoints"