Add remove key button for Azure TTS
| @@ -1,5 +1,5 @@ | |||
| 1 | import { getRequestHeaders } from '../../../script.js'; | 1 | import { getRequestHeaders } from '../../../script.js'; |
| 2 | import { POPUP_TYPE, callGenericPopup } from '../../popup.js'; | 2 | import { POPUP_RESULT, POPUP_TYPE, callGenericPopup } from '../../popup.js'; |
| 3 | import { SECRET_KEYS, findSecret, secret_state, writeSecret } from '../../secrets.js'; | 3 | import { SECRET_KEYS, findSecret, secret_state, writeSecret } from '../../secrets.js'; |
| 4 | import { getPreviewString, saveTtsProviderSettings } from './index.js'; | 4 | import { getPreviewString, saveTtsProviderSettings } from './index.js'; |
| 5 | export { AzureTtsProvider }; | 5 | export { AzureTtsProvider }; |
| @@ -70,7 +70,19 @@ class AzureTtsProvider { | |||
| 70 | const popupText = 'Azure TTS API Key'; | 70 | const popupText = 'Azure TTS API Key'; |
| 71 | const savedKey = secret_state[SECRET_KEYS.AZURE_TTS] ? await findSecret(SECRET_KEYS.AZURE_TTS) : ''; | 71 | const savedKey = secret_state[SECRET_KEYS.AZURE_TTS] ? await findSecret(SECRET_KEYS.AZURE_TTS) : ''; |
| 72 | 72 | ||
| 73 | const key = await callGenericPopup(popupText, POPUP_TYPE.INPUT, savedKey); | 73 | const key = await callGenericPopup(popupText, POPUP_TYPE.INPUT, savedKey, { |
| 74 | customButtons: [{ | ||
| 75 | text: 'Remove Key', | ||
| 76 | appendAtEnd: true, | ||
| 77 | result: POPUP_RESULT.NEGATIVE, | ||
| 78 | action: async () => { | ||
| 79 | await writeSecret(SECRET_KEYS.AZURE_TTS, ''); | ||
| 80 | $('#azure_tts_key').toggleClass('success', secret_state[SECRET_KEYS.AZURE_TTS]); | ||
| 81 | toastr.success('API Key removed'); | ||
| 82 | await this.onRefreshClick(); | ||
| 83 | }, | ||
| 84 | }], | ||
| 85 | }); | ||
| 74 | 86 | ||
| 75 | if (key == false || key == '') { | 87 | if (key == false || key == '') { |
| 76 | return; | 88 | return; |
| @@ -83,7 +83,7 @@ class OpenAICompatibleTtsProvider { | |||
| 83 | customButtons: [{ | 83 | customButtons: [{ |
| 84 | text: 'Remove Key', | 84 | text: 'Remove Key', |
| 85 | appendAtEnd: true, | 85 | appendAtEnd: true, |
| 86 | result: POPUP_RESULT.CANCELLED, | 86 | result: POPUP_RESULT.NEGATIVE, |
| 87 | action: async () => { | 87 | action: async () => { |
| 88 | await writeSecret(SECRET_KEYS.CUSTOM_OPENAI_TTS, ''); | 88 | await writeSecret(SECRET_KEYS.CUSTOM_OPENAI_TTS, ''); |
| 89 | $('#openai_compatible_tts_key').toggleClass('success', secret_state[SECRET_KEYS.CUSTOM_OPENAI_TTS]); | 89 | $('#openai_compatible_tts_key').toggleClass('success', secret_state[SECRET_KEYS.CUSTOM_OPENAI_TTS]); |
| @@ -93,7 +93,7 @@ class OpenAICompatibleTtsProvider { | |||
| 93 | }], | 93 | }], |
| 94 | }); | 94 | }); |
| 95 | 95 | ||
| 96 | if (key == false || key == '' || key == null) { | 96 | if (key == false || key == '') { |
| 97 | return; | 97 | return; |
| 98 | } | 98 | } |
| 99 | 99 | ||