diff --git a/ui/desktop/src/components/settings/dictation/DictationSettings.tsx b/ui/desktop/src/components/settings/dictation/DictationSettings.tsx index 8b2955d224..6b67ddd5c3 100644 --- a/ui/desktop/src/components/settings/dictation/DictationSettings.tsx +++ b/ui/desktop/src/components/settings/dictation/DictationSettings.tsx @@ -15,7 +15,6 @@ export const DictationSettings = () => { ); const [apiKey, setApiKey] = useState(''); const [isEditingKey, setIsEditingKey] = useState(false); - const [keyValidationError, setKeyValidationError] = useState(''); const { read, upsert, remove } = useConfig(); useEffect(() => { @@ -59,24 +58,15 @@ export const DictationSettings = () => { if (!providerConfig || providerConfig.uses_provider_config) return; const trimmedKey = apiKey.trim(); - if (!trimmedKey) { - setKeyValidationError('API key is required'); - return; - } + if (!trimmedKey) return; - try { - const keyName = providerConfig.config_key!; - await upsert(keyName, trimmedKey, true); - setApiKey(''); - setKeyValidationError(''); - setIsEditingKey(false); + const keyName = providerConfig.config_key!; + await upsert(keyName, trimmedKey, true); + setApiKey(''); + setIsEditingKey(false); - const audioConfig = await getDictationConfig(); - setProviderStatuses(audioConfig.data || {}); - } catch (error) { - console.error('Error saving API key:', error); - setKeyValidationError('Failed to save API key'); - } + const audioConfig = await getDictationConfig(); + setProviderStatuses(audioConfig.data || {}); }; const handleRemoveKey = async () => { @@ -84,24 +74,17 @@ export const DictationSettings = () => { const providerConfig = providerStatuses[provider]; if (!providerConfig || providerConfig.uses_provider_config) return; - try { - const keyName = providerConfig.config_key!; - await remove(keyName, true); - setApiKey(''); - setKeyValidationError(''); - setIsEditingKey(false); + const keyName = providerConfig.config_key!; + await remove(keyName, true); + setApiKey(''); + setIsEditingKey(false); - const audioConfig = await getDictationConfig(); - setProviderStatuses(audioConfig.data || {}); - } catch (error) { - console.error('Error removing API key:', error); - setKeyValidationError('Failed to remove API key'); - } + const audioConfig = await getDictationConfig(); + setProviderStatuses(audioConfig.data || {}); }; const handleCancelEdit = () => { setApiKey(''); - setKeyValidationError(''); setIsEditingKey(false); }; @@ -193,25 +176,26 @@ export const DictationSettings = () => { {!isEditingKey ? ( - +
+ + {providerStatuses[provider]?.configured && ( + + )} +
) : (
{ - setApiKey(e.target.value); - if (keyValidationError) setKeyValidationError(''); - }} + onChange={(e) => setApiKey(e.target.value)} placeholder="Enter your API key" className="max-w-md" autoFocus /> - {keyValidationError && ( -

{keyValidationError}

- )}
- {providerStatuses[provider]?.configured && ( - - )}
)}