From e37e1a0accec9badd2fbb4b4e025db443dd2e85f Mon Sep 17 00:00:00 2001 From: Stefan Neidig Date: Fri, 3 Mar 2023 22:33:50 +0100 Subject: [PATCH] feat: introduce pro api flag for deepl api --- src/App.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/App.vue b/src/App.vue index 06bdd0f..96d11f4 100644 --- a/src/App.vue +++ b/src/App.vue @@ -82,6 +82,10 @@ here! +
@@ -130,6 +134,7 @@ interface AppData { dirtySettings: boolean; currentLanguage: string; configurationDone: boolean; + useDeepLAPIPro: boolean; } export default defineComponent({ @@ -152,6 +157,7 @@ export default defineComponent({ dirtySettings: false, currentLanguage: '', configurationDone: false, + useDeepLAPIPro: false, }; }, mounted() { @@ -161,6 +167,7 @@ export default defineComponent({ this.configurationDone = !!localStorage.getItem('mbt_target_language') && !!localStorage.getItem('mbt_auth_key'); this.currentLanguage = localStorage.getItem('mbt_target_language') || ''; + this.useDeepLAPIPro = localStorage.getItem('mbt_use_deepl_api_pro') === 'true'; if (!this.configurationDone) { this.logError('You have to configure the plugin before using it. Please go to the settings tab.', true); @@ -239,8 +246,12 @@ export default defineComponent({ }, async translateText(text: string): Promise { try { + const proAPI = localStorage.getItem('mbt_use_deepl_api_pro') === 'true'; + + console.log("Using proAPI", proAPI); + const { data } = await translate({ - free_api: true, + free_api: !proAPI, text, target_lang: (localStorage.getItem('mbt_target_language') as DeeplLanguages) || 'EN', auth_key: localStorage.getItem('mbt_auth_key') || '', @@ -300,6 +311,7 @@ export default defineComponent({ saveSettings() { localStorage.setItem('mbt_auth_key', this.authKey); localStorage.setItem('mbt_target_language', this.targetLanguage); + localStorage.setItem('mbt_use_deepl_api_pro', this.useDeepLAPIPro ? 'true' : 'false'); this.currentLanguage = this.targetLanguage; @@ -351,6 +363,7 @@ export default defineComponent({ .hint { font-size: 0.8rem; margin-top: var(--space-xsmall); + margin-bottom: var(--space-small); color: #666; } }