about summary refs log tree commit diff stats
path: root/src/assets/javascripts/translate
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-07-27 17:44:04 +0200
committerManeraKai <manerakai@protonmail.com>2022-07-27 17:44:04 +0200
commita9a7dba5a329eb17e23ba08802406a4e2e2cb836 (patch)
tree2cb69c855b36e82128a00e5895d5f5409d5e0a5e /src/assets/javascripts/translate
parentMerge branch 'BobIsMyManager-librex' (diff)
parent, (diff)
downloadlibredirect-a9a7dba5a329eb17e23ba08802406a4e2e2cb836.zip
Merge pull request 'Squashed a few bugs' (#10) from BobIsMyManager/libredirect:master into master
Reviewed-on: https://codeberg.org/LibRedirect/libredirect/pulls/10
Diffstat (limited to 'src/assets/javascripts/translate')
-rw-r--r--src/assets/javascripts/translate/get_lingva_preferences.js18
-rw-r--r--src/assets/javascripts/translate/set_lingva_preferences.js24
-rw-r--r--src/assets/javascripts/translate/translate.js710
3 files changed, 388 insertions, 364 deletions
diff --git a/src/assets/javascripts/translate/get_lingva_preferences.js b/src/assets/javascripts/translate/get_lingva_preferences.js
index 40def6a5..0d6ff6ec 100644
--- a/src/assets/javascripts/translate/get_lingva_preferences.js
+++ b/src/assets/javascripts/translate/get_lingva_preferences.js
@@ -1,12 +1,10 @@
-window.browser = window.browser || window.chrome;
+window.browser = window.browser || window.chrome
 
-browser.storage.local.set(
-    {
-        ['lingva_chakra-ui-color-mode']: localStorage.getItem('chakra-ui-color-mode'),
-        lingva_isauto: localStorage.getItem('isauto'),
-        lingva_source: localStorage.getItem('source'),
-        lingva_target: localStorage.getItem('target'),
-    }
-)
+browser.storage.local.set({
+	["lingva_chakra-ui-color-mode"]: localStorage.getItem("chakra-ui-color-mode"),
+	lingva_isauto: localStorage.getItem("isauto"),
+	lingva_source: localStorage.getItem("source"),
+	lingva_target: localStorage.getItem("target"),
+})
 
-console.log(localStorage.getItem('target'));
\ No newline at end of file
+console.log(localStorage.getItem("target"))
diff --git a/src/assets/javascripts/translate/set_lingva_preferences.js b/src/assets/javascripts/translate/set_lingva_preferences.js
index a0f2ad87..04a36e1b 100644
--- a/src/assets/javascripts/translate/set_lingva_preferences.js
+++ b/src/assets/javascripts/translate/set_lingva_preferences.js
@@ -1,17 +1,9 @@
-window.browser = window.browser || window.chrome;
+window.browser = window.browser || window.chrome
 
-browser.storage.local.get(
-    [
-        "lingva_chakra-ui-color-mode",
-        "lingva_isauto",
-        "lingva_source",
-        "lingva_target",
-    ],
-    r => {
-        if (r['lingva_chakra-ui-color-mode'] !== undefined) localStorage.setItem('chakra-ui-color-mode', r['lingva_chakra-ui-color-mode']);
-        if (r.lingva_isauto !== undefined) localStorage.setItem('isauto', r.lingva_isauto);
-        if (r.lingva_source !== undefined) localStorage.setItem('source', r.lingva_source);
-        if (r.lingva_target !== undefined) localStorage.setItem('target', r.lingva_target);
-        window.close();
-    }
-)
+browser.storage.local.get(["lingva_chakra-ui-color-mode", "lingva_isauto", "lingva_source", "lingva_target"], r => {
+	if (r["lingva_chakra-ui-color-mode"] !== undefined) localStorage.setItem("chakra-ui-color-mode", r["lingva_chakra-ui-color-mode"])
+	if (r.lingva_isauto !== undefined) localStorage.setItem("isauto", r.lingva_isauto)
+	if (r.lingva_source !== undefined) localStorage.setItem("source", r.lingva_source)
+	if (r.lingva_target !== undefined) localStorage.setItem("target", r.lingva_target)
+	window.close()
+})
diff --git a/src/assets/javascripts/translate/translate.js b/src/assets/javascripts/translate/translate.js
index 75c5b5f8..5512f7f1 100644
--- a/src/assets/javascripts/translate/translate.js
+++ b/src/assets/javascripts/translate/translate.js
@@ -1,379 +1,413 @@
-window.browser = window.browser || window.chrome;
+window.browser = window.browser || window.chrome
 
-import utils from '../utils.js'
+import utils from "../utils.js"
 
-const targets = [
-  /^https?:\/{2}translate\.google(\.[a-z]{2,3}){1,2}\//,
-];
+const targets = [/^https?:\/{2}translate\.google(\.[a-z]{2,3}){1,2}\//]
 
 const frontends = new Array("simplyTranslate", "lingva")
 const protocols = new Array("normal", "tor", "i2p", "loki")
 
-let redirects = {};
+let redirects = {}
 
 for (let i = 0; i < frontends.length; i++) {
-    redirects[frontends[i]] = {}
-    for (let x = 0; x < protocols.length; x++) {
-        redirects[frontends[i]][protocols[x]] = []
-    }
+	redirects[frontends[i]] = {}
+	for (let x = 0; x < protocols.length; x++) {
+		redirects[frontends[i]][protocols[x]] = []
+	}
 }
 
-let
-  translateDisable,
-  translateFrontend,
-  protocol,
-  protocolFallback,
-  translateRedirects,
-  simplyTranslateNormalRedirectsChecks,
-  simplyTranslateNormalCustomRedirects,
-  simplyTranslateTorRedirectsChecks,
-  simplyTranslateTorCustomRedirects,
-  simplyTranslateI2pRedirectsChecks,
-  simplyTranslateI2pCustomRedirects,
-  simplyTranslateLokiRedirectsChecks,
-  simplyTranslateLokiCustomRedirects,
-  lingvaNormalRedirectsChecks,
-  lingvaNormalCustomRedirects,
-  lingvaTorRedirectsChecks,
-  lingvaTorCustomRedirects,
-  lingvaI2pCustomRedirects,
-  lingvaLokiCustomRedirects
+let translateDisable,
+	translateFrontend,
+	protocol,
+	protocolFallback,
+	translateRedirects,
+	simplyTranslateNormalRedirectsChecks,
+	simplyTranslateNormalCustomRedirects,
+	simplyTranslateTorRedirectsChecks,
+	simplyTranslateTorCustomRedirects,
+	simplyTranslateI2pRedirectsChecks,
+	simplyTranslateI2pCustomRedirects,
+	simplyTranslateLokiRedirectsChecks,
+	simplyTranslateLokiCustomRedirects,
+	lingvaNormalRedirectsChecks,
+	lingvaNormalCustomRedirects,
+	lingvaTorRedirectsChecks,
+	lingvaTorCustomRedirects,
+	lingvaI2pCustomRedirects,
+	lingvaLokiCustomRedirects
 
 function init() {
-  return new Promise(resolve => {
-    browser.storage.local.get(
-      [
-        "translateDisable",
-        "translateFrontend",
-        "protocol",
-        "protocolFallback",
-        "translateRedirects",
-        "simplyTranslateNormalRedirectsChecks",
-        "simplyTranslateNormalCustomRedirects",
-        "simplyTranslateTorRedirectsChecks",
-        "simplyTranslateTorCustomRedirects",
-        "simplyTranslateI2pRedirectsChecks",
-        "simplyTranslateI2pCustomRedirects",
-        "simplyTranslateLokiRedirectsChecks",
-        "simplyTranslateLokiCustomRedirects",
-
-        "lingvaNormalRedirectsChecks",
-        "lingvaNormalCustomRedirects",
-        "lingvaTorRedirectsChecks",
-        "lingvaTorCustomRedirects",
-        "lingvaI2pCustomRedirects",
-        "lingvaLokiCustomRedirects"
-      ],
-      r => {
-        translateDisable = r.translateDisable;
-        translateFrontend = r.translateFrontend;
-        protocol = r.protocol;
-        protocolFallback = r.protocolFallback
-        translateRedirects = r.translateRedirects;
-        simplyTranslateNormalRedirectsChecks = r.simplyTranslateNormalRedirectsChecks;
-        simplyTranslateNormalCustomRedirects = r.simplyTranslateNormalCustomRedirects;
-        simplyTranslateTorRedirectsChecks = r.simplyTranslateTorRedirectsChecks;
-        simplyTranslateTorCustomRedirects = r.simplyTranslateTorCustomRedirects;
-        simplyTranslateI2pRedirectsChecks = r.simplyTranslateI2pRedirectsChecks;
-        simplyTranslateI2pCustomRedirects = r.simplyTranslateI2pCustomRedirects;
-        simplyTranslateLokiRedirectsChecks = r.simplyTranslateLokiRedirectsChecks;
-        simplyTranslateLokiCustomRedirects = r.simplyTranslateLokiCustomRedirects;
-        lingvaNormalRedirectsChecks = r.lingvaNormalRedirectsChecks;
-        lingvaNormalCustomRedirects = r.lingvaNormalCustomRedirects;
-        lingvaTorRedirectsChecks = r.lingvaTorRedirectsChecks;
-        lingvaTorCustomRedirects = r.lingvaTorCustomRedirects;
-        lingvaI2pCustomRedirects = r.lingvaI2pCustomRedirects;
-        lingvaLokiCustomRedirects = r.lingvaLokiCustomRedirects;
-        resolve();
-      }
-    )
-  })
+	return new Promise(resolve => {
+		browser.storage.local.get(
+			[
+				"translateDisable",
+				"translateFrontend",
+				"protocol",
+				"protocolFallback",
+				"translateRedirects",
+				"simplyTranslateNormalRedirectsChecks",
+				"simplyTranslateNormalCustomRedirects",
+				"simplyTranslateTorRedirectsChecks",
+				"simplyTranslateTorCustomRedirects",
+				"simplyTranslateI2pRedirectsChecks",
+				"simplyTranslateI2pCustomRedirects",
+				"simplyTranslateLokiRedirectsChecks",
+				"simplyTranslateLokiCustomRedirects",
+
+				"lingvaNormalRedirectsChecks",
+				"lingvaNormalCustomRedirects",
+				"lingvaTorRedirectsChecks",
+				"lingvaTorCustomRedirects",
+				"lingvaI2pCustomRedirects",
+				"lingvaLokiCustomRedirects",
+			],
+			r => {
+				translateDisable = r.translateDisable
+				translateFrontend = r.translateFrontend
+				protocol = r.protocol
+				protocolFallback = r.protocolFallback
+				translateRedirects = r.translateRedirects
+				simplyTranslateNormalRedirectsChecks = r.simplyTranslateNormalRedirectsChecks
+				simplyTranslateNormalCustomRedirects = r.simplyTranslateNormalCustomRedirects
+				simplyTranslateTorRedirectsChecks = r.simplyTranslateTorRedirectsChecks
+				simplyTranslateTorCustomRedirects = r.simplyTranslateTorCustomRedirects
+				simplyTranslateI2pRedirectsChecks = r.simplyTranslateI2pRedirectsChecks
+				simplyTranslateI2pCustomRedirects = r.simplyTranslateI2pCustomRedirects
+				simplyTranslateLokiRedirectsChecks = r.simplyTranslateLokiRedirectsChecks
+				simplyTranslateLokiCustomRedirects = r.simplyTranslateLokiCustomRedirects
+				lingvaNormalRedirectsChecks = r.lingvaNormalRedirectsChecks
+				lingvaNormalCustomRedirects = r.lingvaNormalCustomRedirects
+				lingvaTorRedirectsChecks = r.lingvaTorRedirectsChecks
+				lingvaTorCustomRedirects = r.lingvaTorCustomRedirects
+				lingvaI2pCustomRedirects = r.lingvaI2pCustomRedirects
+				lingvaLokiCustomRedirects = r.lingvaLokiCustomRedirects
+				resolve()
+			}
+		)
+	})
 }
 
-init();
+init()
 browser.storage.onChanged.addListener(init)
 
 function setRedirects(val) {
-  browser.storage.local.get('cloudflareBlackList', r => {
-    redirects = val;
-    lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
-    for (const instance of r.cloudflareBlackList) {
-      const i = lingvaNormalRedirectsChecks.indexOf(instance);
-      if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1);
-    }
-    browser.storage.local.set({
-      translateRedirects: redirects,
-      simplyTranslateNormalRedirectsChecks: redirects.simplyTranslate.normal,
-      simplyTranslateTorRedirectsChecks: redirects.simplyTranslate.tor,
-      simplyTranslateI2pRedirectsChecks: redirects.simplyTranslate.i2p,
-      simplyTranslateLokiRedirectsChecks: redirects.simplyTranslate.loki,
-      lingvaNormalRedirectsChecks,
-      lingvaTorRedirectsChecks: redirects.lingva.tor,
-    })
-  })
+	browser.storage.local.get("cloudflareBlackList", r => {
+		redirects = val
+		lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
+		for (const instance of r.cloudflareBlackList) {
+			const i = lingvaNormalRedirectsChecks.indexOf(instance)
+			if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1)
+		}
+		browser.storage.local.set({
+			translateRedirects: redirects,
+			simplyTranslateNormalRedirectsChecks: redirects.simplyTranslate.normal,
+			simplyTranslateTorRedirectsChecks: redirects.simplyTranslate.tor,
+			simplyTranslateI2pRedirectsChecks: redirects.simplyTranslate.i2p,
+			simplyTranslateLokiRedirectsChecks: redirects.simplyTranslate.loki,
+			lingvaNormalRedirectsChecks,
+			lingvaTorRedirectsChecks: redirects.lingva.tor,
+		})
+	})
 }
 
 function copyPasteLingvaLocalStorage(test, url, tabId) {
-  return new Promise(async resolve => {
-    await init();
-    if (translateDisable || translateFrontend != 'lingva') { resolve(); return; }
-    const protocolHost = utils.protocolHost(url);
-    if (![
-      ...lingvaNormalRedirectsChecks,
-      ...lingvaNormalCustomRedirects,
-      ...lingvaTorRedirectsChecks,
-      ...lingvaTorCustomRedirects,
-      ...lingvaI2pCustomRedirects,
-      ...lingvaLokiCustomRedirects
-    ].includes(protocolHost)) { resolve(); return; }
-
-    if (!test) {
-      browser.tabs.executeScript(
-        tabId,
-        { file: "/assets/javascripts/translate/get_lingva_preferences.js", runAt: "document_start" }
-      );
-
-      let checkedInstances = [];
-      if (protocol == 'loki') checkedInstances = [...lingvaLokiCustomRedirects]; //...lingvaLokiRedirectsChecks, 
-      else if (protocol == 'i2p') checkedInstances = [...lingvaI2pCustomRedirects]; //...lingvaI2pRedirectsChecks, 
-      else if (protocol == 'tor') checkedInstances = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects];
-      if ((checkedInstances.length === 0 && protocolFallback) || protocol == 'normal') {
-        checkedInstances = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects];
-      }
-      const i = checkedInstances.indexOf(protocolHost);
-      if (i !== -1) checkedInstances.splice(i, 1);
-      if (checkedInstances.length === 0) { resolve(); return; }
-      for (const to of checkedInstances)
-        browser.tabs.create(
-          { url: to },
-          tab => browser.tabs.executeScript(tab.id, { file: "/assets/javascripts/translate/set_lingva_preferences.js", runAt: "document_start" })
-        );
-    }
-    resolve(true);
-  }
-  )
+	return new Promise(async resolve => {
+		await init()
+		if (translateDisable || translateFrontend != "lingva") {
+			resolve()
+			return
+		}
+		const protocolHost = utils.protocolHost(url)
+		if (
+			![...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects, ...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects, ...lingvaI2pCustomRedirects, ...lingvaLokiCustomRedirects].includes(
+				protocolHost
+			)
+		) {
+			resolve()
+			return
+		}
+
+		if (!test) {
+			browser.tabs.executeScript(tabId, {
+				file: "/assets/javascripts/translate/get_lingva_preferences.js",
+				runAt: "document_start",
+			})
+
+			let checkedInstances = []
+			if (protocol == "loki") checkedInstances = [...lingvaLokiCustomRedirects]
+			//...lingvaLokiRedirectsChecks,
+			else if (protocol == "i2p") checkedInstances = [...lingvaI2pCustomRedirects]
+			//...lingvaI2pRedirectsChecks,
+			else if (protocol == "tor") checkedInstances = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects]
+			if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
+				checkedInstances = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects]
+			}
+			const i = checkedInstances.indexOf(protocolHost)
+			if (i !== -1) checkedInstances.splice(i, 1)
+			if (checkedInstances.length === 0) {
+				resolve()
+				return
+			}
+			for (const to of checkedInstances)
+				browser.tabs.create({ url: to }, tab =>
+					browser.tabs.executeScript(tab.id, {
+						file: "/assets/javascripts/translate/set_lingva_preferences.js",
+						runAt: "document_start",
+					})
+				)
+		}
+		resolve(true)
+	})
 }
 
 function pasteLingvaLocalStorage() {
-  return new Promise(async resolve => {
-    await init();
-    if (translateDisable || translateFrontend != 'lingva') { resolve(); return; }
-    let checkedInstances = [];
-    if (protocol == 'loki') checkedInstances = [...lingvaLokiCustomRedirects]; //...lingvaLokiRedirectsChecks, 
-    else if (protocol == 'i2p') checkedInstances = [...lingvaI2pCustomRedirects]; //...lingvaI2pRedirectsChecks, 
-    else if (protocol == 'tor') checkedInstances = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects];
-    if ((checkedInstances.length === 0 && protocolFallback) || protocol == 'normal') {
-      checkedInstances = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects];
-    }
-    for (const to of checkedInstances)
-      browser.tabs.create({ url: to },
-        tab => browser.tabs.executeScript(tab.id, { file: "/assets/javascripts/translate/set_lingva_preferences.js", runAt: "document_start" }))
-    resolve();
-  })
+	return new Promise(async resolve => {
+		await init()
+		if (translateDisable || translateFrontend != "lingva") {
+			resolve()
+			return
+		}
+		let checkedInstances = []
+		if (protocol == "loki") checkedInstances = [...lingvaLokiCustomRedirects]
+		//...lingvaLokiRedirectsChecks,
+		else if (protocol == "i2p") checkedInstances = [...lingvaI2pCustomRedirects]
+		//...lingvaI2pRedirectsChecks,
+		else if (protocol == "tor") checkedInstances = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects]
+		if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
+			checkedInstances = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects]
+		}
+		for (const to of checkedInstances)
+			browser.tabs.create({ url: to }, tab =>
+				browser.tabs.executeScript(tab.id, {
+					file: "/assets/javascripts/translate/set_lingva_preferences.js",
+					runAt: "document_start",
+				})
+			)
+		resolve()
+	})
 }
 
 function copyPasteSimplyTranslateCookies(test, from) {
-  return new Promise(async resolve => {
-    await init();
-    const protocolHost = utils.protocolHost(from);
-    if (![
-      ...simplyTranslateNormalRedirectsChecks,
-      ...simplyTranslateNormalCustomRedirects,
-      ...simplyTranslateTorRedirectsChecks,
-      ...simplyTranslateTorCustomRedirects,
-      ...simplyTranslateI2pRedirectsChecks,
-      ...simplyTranslateI2pCustomRedirects,
-      ...simplyTranslateLokiRedirectsChecks,
-      ...simplyTranslateLokiCustomRedirects,
-    ].includes(protocolHost)) { resolve(); return; }
-    if (!test) {
-      let checkedInstances = [];
-      if (protocol == 'loki') checkedInstances = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects]
-      else if (protocol == 'i2p') checkedInstances = [...simplyTranslateI2pCustomRedirects, ...simplyTranslateI2pRedirectsChecks];
-      else if (protocol == 'tor') checkedInstances = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects];
-      if ((checkedInstances.length === 0 && protocolFallback) || protocol == 'normal') {
-        checkedInstances = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects];
-      }
-      await utils.copyCookie('simplyTranslate', from, checkedInstances, 'from_lang');
-      await utils.copyCookie('simplyTranslate', from, checkedInstances, 'to_lang');
-      await utils.copyCookie('simplyTranslate', from, checkedInstances, 'tts_enabled');
-      await utils.copyCookie('simplyTranslate', from, checkedInstances, 'use_text_fields');
-    }
-    resolve(true);
-  }
-  )
+	return new Promise(async resolve => {
+		await init()
+		const protocolHost = utils.protocolHost(from)
+		if (
+			![
+				...simplyTranslateNormalRedirectsChecks,
+				...simplyTranslateNormalCustomRedirects,
+				...simplyTranslateTorRedirectsChecks,
+				...simplyTranslateTorCustomRedirects,
+				...simplyTranslateI2pRedirectsChecks,
+				...simplyTranslateI2pCustomRedirects,
+				...simplyTranslateLokiRedirectsChecks,
+				...simplyTranslateLokiCustomRedirects,
+			].includes(protocolHost)
+		) {
+			resolve()
+			return
+		}
+		if (!test) {
+			let checkedInstances = []
+			if (protocol == "loki") checkedInstances = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects]
+			else if (protocol == "i2p") checkedInstances = [...simplyTranslateI2pCustomRedirects, ...simplyTranslateI2pRedirectsChecks]
+			else if (protocol == "tor") checkedInstances = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects]
+			if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
+				checkedInstances = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects]
+			}
+			await utils.copyCookie("simplyTranslate", from, checkedInstances, "from_lang")
+			await utils.copyCookie("simplyTranslate", from, checkedInstances, "to_lang")
+			await utils.copyCookie("simplyTranslate", from, checkedInstances, "tts_enabled")
+			await utils.copyCookie("simplyTranslate", from, checkedInstances, "use_text_fields")
+		}
+		resolve(true)
+	})
 }
 
 function pasteSimplyTranslateCookies() {
-  return new Promise(async resolve => {
-    await init();
-    if (translateDisable || translateFrontend != 'simplyTranslate') { resolve(); return; }
-    let checkedInstances = [];
-    if (protocol == 'loki') checkedInstances = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects]
-    else if (protocol == 'i2p') checkedInstances = [...simplyTranslateI2pCustomRedirects, ...simplyTranslateI2pRedirectsChecks];
-    else if (protocol == 'tor') checkedInstances = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects];
-    if ((checkedInstances.length === 0 && protocolFallback) || protocol == 'normal') {
-      checkedInstances = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects];
-    }
-    utils.getCookiesFromStorage('simplyTranslate', checkedInstances, 'from_lang');
-    utils.getCookiesFromStorage('simplyTranslate', checkedInstances, 'to_lang');
-    utils.getCookiesFromStorage('simplyTranslate', checkedInstances, 'tts_enabled');
-    utils.getCookiesFromStorage('simplyTranslate', checkedInstances, 'use_text_fields');
-    resolve();
-  }
-  )
+	return new Promise(async resolve => {
+		await init()
+		if (translateDisable || translateFrontend != "simplyTranslate") {
+			resolve()
+			return
+		}
+		let checkedInstances = []
+		if (protocol == "loki") checkedInstances = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects]
+		else if (protocol == "i2p") checkedInstances = [...simplyTranslateI2pCustomRedirects, ...simplyTranslateI2pRedirectsChecks]
+		else if (protocol == "tor") checkedInstances = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects]
+		if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
+			checkedInstances = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects]
+		}
+		utils.getCookiesFromStorage("simplyTranslate", checkedInstances, "from_lang")
+		utils.getCookiesFromStorage("simplyTranslate", checkedInstances, "to_lang")
+		utils.getCookiesFromStorage("simplyTranslate", checkedInstances, "tts_enabled")
+		utils.getCookiesFromStorage("simplyTranslate", checkedInstances, "use_text_fields")
+		resolve()
+	})
 }
 
 function redirect(url, disableOverride) {
-  if (translateDisable && !disableOverride) return;
-  if (!targets.some(rx => rx.test(url.href))) return;
-
-  if (translateFrontend == 'simplyTranslate') {
-    let instancesList = [];
-    if (protocol == 'loki') instancesList = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects];
-    else if (protocol == 'i2p') instancesList = [...simplyTranslateI2pRedirectsChecks, ...simplyTranslateI2pCustomRedirects];
-    else if (protocol == 'tor') instancesList = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects];
-    if ((instancesList.length === 0 && protocolFallback) || protocol == 'normal') {
-      instancesList = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects];
-    }
-    if (instancesList.length === 0) return;
-
-    const randomInstance = utils.getRandomInstance(instancesList)
-    return `${randomInstance}/${url.search}`;
-  }
-  else if (translateFrontend == 'lingva') {
-    let params_arr = url.search.split('&');
-    params_arr[0] = params_arr[0].substring(1);
-    let params = {};
-    for (let i = 0; i < params_arr.length; i++) {
-      let pair = params_arr[i].split('=');
-      params[pair[0]] = pair[1];
-    }
-    let instancesList = [];
-    if (protocol == 'loki') instancesList = [...lingvaLokiCustomRedirects]; //...lingvaLokiRedirectsChecks, 
-    else if (protocol == 'i2p') instancesList = [...lingvaI2pCustomRedirects]; //...lingvaI2pRedirectsChecks, 
-    if (protocol == 'tor') instancesList = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects];
-    if ((instancesList.length === 0 && protocolFallback) || protocol == 'normal') {
-      instancesList = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects];
-    }
-    if (instancesList.length === 0) return;
-
-    const randomInstance = utils.getRandomInstance(instancesList)
-    if (params.sl && params.tl && params.text) {
-      return `${randomInstance}/${params.sl}/${params.tl}/${params.text}`
-    }
-    return randomInstance;
-  }
+	if (translateDisable && !disableOverride) return
+	if (!targets.some(rx => rx.test(url.href))) return
+
+	if (translateFrontend == "simplyTranslate") {
+		let instancesList = []
+		if (protocol == "loki") instancesList = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects]
+		else if (protocol == "i2p") instancesList = [...simplyTranslateI2pRedirectsChecks, ...simplyTranslateI2pCustomRedirects]
+		else if (protocol == "tor") instancesList = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects]
+		if ((instancesList.length === 0 && protocolFallback) || protocol == "normal") {
+			instancesList = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects]
+		}
+		if (instancesList.length === 0) return
+
+		const randomInstance = utils.getRandomInstance(instancesList)
+		return `${randomInstance}/${url.search}`
+	} else if (translateFrontend == "lingva") {
+		let params_arr = url.search.split("&")
+		params_arr[0] = params_arr[0].substring(1)
+		let params = {}
+		for (let i = 0; i < params_arr.length; i++) {
+			let pair = params_arr[i].split("=")
+			params[pair[0]] = pair[1]
+		}
+		let instancesList = []
+		if (protocol == "loki") instancesList = [...lingvaLokiCustomRedirects]
+		//...lingvaLokiRedirectsChecks,
+		else if (protocol == "i2p") instancesList = [...lingvaI2pCustomRedirects] //...lingvaI2pRedirectsChecks,
+		if (protocol == "tor") instancesList = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects]
+		if ((instancesList.length === 0 && protocolFallback) || protocol == "normal") {
+			instancesList = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects]
+		}
+		if (instancesList.length === 0) return
+
+		const randomInstance = utils.getRandomInstance(instancesList)
+		if (params.sl && params.tl && params.text) {
+			return `${randomInstance}/${params.sl}/${params.tl}/${params.text}`
+		}
+		return randomInstance
+	}
 }
 
 function switchInstance(url, disableOverride) {
-  return new Promise(async resolve => {
-    await init();
-    if (translateDisable && !disableOverride) { resolve(); return; }
-    const protocolHost = utils.protocolHost(url);
-    if (![
-      ...translateRedirects.simplyTranslate.normal,
-      ...translateRedirects.simplyTranslate.tor,
-      ...translateRedirects.simplyTranslate.i2p,
-      ...translateRedirects.simplyTranslate.loki,
-
-      ...simplyTranslateNormalCustomRedirects,
-      ...simplyTranslateTorCustomRedirects,
-      ...simplyTranslateI2pCustomRedirects,
-      ...simplyTranslateLokiCustomRedirects,
-
-      ...translateRedirects.lingva.normal,
-      ...translateRedirects.lingva.tor,
-
-      ...lingvaNormalCustomRedirects,
-      ...lingvaTorCustomRedirects,
-      ...lingvaI2pCustomRedirects,
-      ...lingvaLokiCustomRedirects
-    ].includes(protocolHost)) { resolve(); return; }
-
-    let instancesList;
-
-    if (protocol == 'loki') {
-      if (translateFrontend == 'simplyTranslate') instancesList = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects];
-      else if (translateFrontend == 'lingva') instancesList = [...lingvaLokiCustomRedirects]; //...lingvaLokiRedirectsChecks, 
-    }
-    else if (protocol == 'i2p') {
-       if (translateFrontend == 'simplyTranslate') instancesList = [...simplyTranslateI2pRedirectsChecks, ...simplyTranslateI2pCustomRedirects];
-       else if (translateFrontend == 'lingva') instancesList = [...lingvaI2pCustomRedirects]; //...lingvaI2pRedirectsChecks, 
-    }
-    else if (protocol == 'tor') {
-      if (translateFrontend == 'simplyTranslate') instancesList = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects];
-      else if (translateFrontend == 'lingva') instancesList = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects];
-    }
-    if ((instancesList.length === 0 && protocolFallback) || protocol == 'normal') {
-      if (translateFrontend == 'simplyTranslate') instancesList = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects];
-      else if (translateFrontend == 'lingva') instancesList = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects];
-    }
-
-    const i = instancesList.indexOf(protocolHost);
-    if (i > -1) instancesList.splice(i, 1);
-    if (instancesList.length === 0) { resolve(); return; }
-
-    const randomInstance = utils.getRandomInstance(instancesList);
-    resolve(`${randomInstance}${url.pathname}${url.search}`);
-  })
+	return new Promise(async resolve => {
+		await init()
+		if (translateDisable && !disableOverride) {
+			resolve()
+			return
+		}
+		const protocolHost = utils.protocolHost(url)
+		if (
+			![
+				...translateRedirects.simplyTranslate.normal,
+				...translateRedirects.simplyTranslate.tor,
+				...translateRedirects.simplyTranslate.i2p,
+				...translateRedirects.simplyTranslate.loki,
+
+				...simplyTranslateNormalCustomRedirects,
+				...simplyTranslateTorCustomRedirects,
+				...simplyTranslateI2pCustomRedirects,
+				...simplyTranslateLokiCustomRedirects,
+
+				...translateRedirects.lingva.normal,
+				...translateRedirects.lingva.tor,
+
+				...lingvaNormalCustomRedirects,
+				...lingvaTorCustomRedirects,
+				...lingvaI2pCustomRedirects,
+				...lingvaLokiCustomRedirects,
+			].includes(protocolHost)
+		) {
+			resolve()
+			return
+		}
+
+		let instancesList
+
+		if (protocol == "loki") {
+			if (translateFrontend == "simplyTranslate") instancesList = [...simplyTranslateLokiRedirectsChecks, ...simplyTranslateLokiCustomRedirects]
+			else if (translateFrontend == "lingva") instancesList = [...lingvaLokiCustomRedirects] //...lingvaLokiRedirectsChecks,
+		} else if (protocol == "i2p") {
+			if (translateFrontend == "simplyTranslate") instancesList = [...simplyTranslateI2pRedirectsChecks, ...simplyTranslateI2pCustomRedirects]
+			else if (translateFrontend == "lingva") instancesList = [...lingvaI2pCustomRedirects] //...lingvaI2pRedirectsChecks,
+		} else if (protocol == "tor") {
+			if (translateFrontend == "simplyTranslate") instancesList = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects]
+			else if (translateFrontend == "lingva") instancesList = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects]
+		}
+		if ((instancesList.length === 0 && protocolFallback) || protocol == "normal") {
+			if (translateFrontend == "simplyTranslate") instancesList = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects]
+			else if (translateFrontend == "lingva") instancesList = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects]
+		}
+
+		const i = instancesList.indexOf(protocolHost)
+		if (i > -1) instancesList.splice(i, 1)
+		if (instancesList.length === 0) {
+			resolve()
+			return
+		}
+
+		const randomInstance = utils.getRandomInstance(instancesList)
+		resolve(`${randomInstance}${url.pathname}${url.search}`)
+	})
 }
 
 function initDefaults() {
-  return new Promise(async resolve => {
-    fetch('/instances/data.json').then(response => response.text()).then(data => {
-      let dataJson = JSON.parse(data);
-      for (let i = 0; i < frontends.length; i++) {
-        redirects[frontends[i]] = dataJson[frontends[i]]
-      }
-      browser.storage.local.get('cloudflareBlackList',
-        async r => {
-          lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
-          for (const instance of r.cloudflareBlackList) {
-            const i = lingvaNormalRedirectsChecks.indexOf(instance);
-            if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1);
-          }
-          browser.storage.local.set({
-            translateDisable: false,
-            translateFrontend: "simplyTranslate",
-            translateRedirects: redirects,
-
-            simplyTranslateNormalRedirectsChecks: [...redirects.simplyTranslate.normal],
-            simplyTranslateNormalCustomRedirects: [],
-            
-            simplyTranslateTorRedirectsChecks: [...redirects.simplyTranslate.tor],
-            simplyTranslateTorCustomRedirects: [],
-            
-            simplyTranslateI2pRedirectsChecks: [...redirects.simplyTranslate.i2p],
-            simplyTranslateI2pCustomRedirects: [],
-            
-            simplyTranslateLokiRedirectsChecks: [...redirects.simplyTranslate.loki],
-            simplyTranslateLokiCustomRedirects: [],
-
-            lingvaNormalRedirectsChecks: lingvaNormalRedirectsChecks,
-            lingvaNormalCustomRedirects: [],
-
-            lingvaTorRedirectsChecks: [...redirects.lingva.tor],
-            lingvaTorCustomRedirects: [],
-
-            lingvaI2pRedirectsChecks: [...redirects.lingva.i2p],
-            lingvaI2pCustomRedirects: [],
-
-            lingvaLokiRedirectsChecks: [...redirects.lingva.loki],
-            lingvaLokiCustomRedirects: []
-          }, () => resolve())
-        })
-    })
-  })
+	return new Promise(async resolve => {
+		fetch("/instances/data.json")
+			.then(response => response.text())
+			.then(data => {
+				let dataJson = JSON.parse(data)
+				for (let i = 0; i < frontends.length; i++) {
+					redirects[frontends[i]] = dataJson[frontends[i]]
+				}
+				browser.storage.local.get("cloudflareBlackList", async r => {
+					lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
+					for (const instance of r.cloudflareBlackList) {
+						const i = lingvaNormalRedirectsChecks.indexOf(instance)
+						if (i > -1) lingvaNormalRedirectsChecks.splice(i, 1)
+					}
+					browser.storage.local.set(
+						{
+							translateDisable: false,
+							translateFrontend: "simplyTranslate",
+							translateRedirects: redirects,
+
+							simplyTranslateNormalRedirectsChecks: [...redirects.simplyTranslate.normal],
+							simplyTranslateNormalCustomRedirects: [],
+
+							simplyTranslateTorRedirectsChecks: [...redirects.simplyTranslate.tor],
+							simplyTranslateTorCustomRedirects: [],
+
+							simplyTranslateI2pRedirectsChecks: [...redirects.simplyTranslate.i2p],
+							simplyTranslateI2pCustomRedirects: [],
+
+							simplyTranslateLokiRedirectsChecks: [...redirects.simplyTranslate.loki],
+							simplyTranslateLokiCustomRedirects: [],
+
+							lingvaNormalRedirectsChecks: lingvaNormalRedirectsChecks,
+							lingvaNormalCustomRedirects: [],
+
+							lingvaTorRedirectsChecks: [...redirects.lingva.tor],
+							lingvaTorCustomRedirects: [],
+
+							lingvaI2pRedirectsChecks: [...redirects.lingva.i2p],
+							lingvaI2pCustomRedirects: [],
+
+							lingvaLokiRedirectsChecks: [...redirects.lingva.loki],
+							lingvaLokiCustomRedirects: [],
+						},
+						() => resolve()
+					)
+				})
+			})
+	})
 }
 
 export default {
-  copyPasteSimplyTranslateCookies,
-  pasteSimplyTranslateCookies,
-  copyPasteLingvaLocalStorage,
-  pasteLingvaLocalStorage,
-  setRedirects,
-  redirect,
-  initDefaults,
-  switchInstance,
-};
+	copyPasteSimplyTranslateCookies,
+	pasteSimplyTranslateCookies,
+	copyPasteLingvaLocalStorage,
+	pasteLingvaLocalStorage,
+	setRedirects,
+	redirect,
+	initDefaults,
+	switchInstance,
+}