Skip to content

Commit 3bec3d0

Browse files
committed
v0.9.0 Add populating languages from an array
1 parent c65b4a8 commit 3bec3d0

File tree

3 files changed

+44
-33
lines changed

3 files changed

+44
-33
lines changed

src/manifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"manifest_version": 2,
33
"name": "To DeepL",
4-
"version": "0.8.0",
4+
"version": "0.9.0",
55
"description": "Translate selected text in new tab with DeepL",
66
"homepage_url": "https://github.com/rewkha/firefox-to-deepl",
77
"icons": {

src/options/options.html

-30
Original file line numberDiff line numberDiff line change
@@ -19,36 +19,6 @@
1919
<label for="default_lang">
2020
<label for="default_lang">Default language:</label>
2121
<select class="browser-style" name="default_lang" id="defaultLang">
22-
<option value="en" selected="">English</option>
23-
<option value="bg">Български</option>
24-
<option value="cs">Čeština (Český)</option>
25-
<option value="da">Dansk</option>
26-
<option value="de">Deutsch</option>
27-
<option value="es">Español</option>
28-
<option value="et">Eesti</option>
29-
<option value="el">Ελληνικά</option>
30-
<option value="fr">Français</option>
31-
<option value="fi">Suomi</option>
32-
<option value="hu">Magyar nyelv</option>
33-
<option value="id">Bahasa Indonesia</option>
34-
<option value="it">Italiano</option>
35-
<option value="ja">日本語 (Japanese)</option>
36-
<option value="ko">한국어 (Korean)</option>
37-
<option value="lv">Latviešu valoda</option>
38-
<option value="lt">Lietuvių kalba</option>
39-
<option value="nb">Norsk bokmål</option>
40-
<option value="nl">Nederlands</option>
41-
<option value="pl">Polski</option>
42-
<option value="pt-PT">Português</option>
43-
<option value="pt-BR">Português (Brasil)</option>
44-
<option value="ro">Limba română</option>
45-
<option value="ru">Русский (Russian)</option>
46-
<option value="sk">Slovenský (Slovak)</option>
47-
<option value="sl">Slovenski (Slovenian)</option>
48-
<option value="sv">Svenska</option>
49-
<option value="tr">Türkçe</option>
50-
<option value="uk">Українська</option>
51-
<option value="zh">简体中文 (simplified Chinese)</option>
5222
</select>
5323

5424
<fieldset>

src/options/options.js

+43-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,46 @@
1+
// array of languages to populate the select element
2+
const languages = [
3+
{ name: "English", value: "en" },
4+
{ name: "Български", value: "bg" },
5+
{ name: "Čeština (Český)", value: "cs" },
6+
{ name: "Dansk", value: "da" },
7+
{ name: "Deutsch", value: "de" },
8+
{ name: "Español", value: "es" },
9+
{ name: "Eesti", value: "et" },
10+
{ name: "Ελληνικά", value: "el" },
11+
{ name: "Français", value: "fr" },
12+
{ name: "Suomi", value: "fi" },
13+
{ name: "Magyar nyelv", value: "hu" },
14+
{ name: "Bahasa Indonesia", value: "id" },
15+
{ name: "Italiano", value: "it" },
16+
{ name: "日本語 (Japanese)", value: "ja" },
17+
{ name: "한국어 (Korean)", value: "ko" },
18+
{ name: "Latviešu valoda", value: "lv" },
19+
{ name: "Lietuvių kalba", value: "lt" },
20+
{ name: "Norsk bokmål", value: "nb" },
21+
{ name: "Nederlands", value: "nl" },
22+
{ name: "Polski", value: "pl" },
23+
{ name: "Português", value: "pt-PT" },
24+
{ name: "Português (Brasil)", value: "pt-BR" },
25+
{ name: "Limba română", value: "ro" },
26+
{ name: "Русский (Russian)", value: "ru" },
27+
{ name: "Slovenský (Slovak)", value: "sk" },
28+
{ name: "Slovenski (Slovenian)", value: "sl" },
29+
{ name: "Svenska", value: "sv" },
30+
{ name: "Türkçe", value: "tr" },
31+
{ name: "Українська", value: "uk" },
32+
{ name: "简体中文 (simplified Chinese)", value: "zh" }
33+
];
34+
135
function renderOptions() {
36+
const select = document.getElementById('defaultLang');
37+
languages.forEach((lang) => {
38+
const option = document.createElement('option');
39+
option.value = lang.value;
40+
option.text = lang.name;
41+
select.appendChild(option);
42+
});
43+
244
return browser.storage.local.get(['defaultLang', 'windowType']).then((store) => {
345
document.getElementById('defaultLang').value = store.defaultLang || 'en';
446

@@ -9,8 +51,7 @@ function renderOptions() {
951
}
1052

1153
document.getElementById('defaultLang').addEventListener('click', (e) => {
12-
console.log(e.target.value);
13-
if (['en', 'bg', 'cs', 'da', 'de', 'es', 'et', 'el', 'fr', 'fi', 'hu', 'it', 'id', 'ja', 'ko', 'lv', 'lt', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR', 'ro', 'ru', 'sk', 'sl', 'sv', 'tr', 'uk', 'zh'].indexOf(e.target.value) !== -1) {
54+
if (languages.some((lang) => lang.value === e.target.value)) {
1455
browser.storage.local.set({
1556
defaultLang: e.target.value
1657
});

0 commit comments

Comments
 (0)