diff options
Diffstat (limited to '')
-rw-r--r-- | src/_locales/de/messages.json (renamed from _locales/de/messages.json) | 0 | ||||
-rw-r--r-- | src/_locales/de/store.md (renamed from _locales/de/store.md) | 9 | ||||
-rw-r--r-- | src/_locales/en/messages.json (renamed from _locales/en/messages.json) | 2 | ||||
-rw-r--r-- | src/_locales/en/store.md (renamed from _locales/en/store.md) | 9 | ||||
-rw-r--r-- | src/_locales/fr/messages.json (renamed from _locales/fr/messages.json) | 0 | ||||
-rw-r--r-- | src/_locales/fr/store.md (renamed from _locales/fr/store.md) | 11 | ||||
-rw-r--r-- | src/_locales/pl/messages.json (renamed from _locales/pl/messages.json) | 0 | ||||
-rw-r--r-- | src/_locales/pl/store.md (renamed from _locales/pl/store.md) | 0 | ||||
-rw-r--r-- | src/_locales/ru/messages.json (renamed from _locales/ru/messages.json) | 0 | ||||
-rw-r--r-- | src/_locales/ru/store.md (renamed from _locales/ru/store.md) | 9 | ||||
-rw-r--r-- | src/_locales/zh_CN/messages.json (renamed from _locales/zh_CN/messages.json) | 0 | ||||
-rw-r--r-- | src/_locales/zh_CN/store.md (renamed from _locales/zh_CN/store.md) | 0 | ||||
-rw-r--r-- | src/assets/javascripts/helpers/google-search.js | 7 | ||||
-rw-r--r-- | src/assets/javascripts/helpers/reddit.js | 14 | ||||
-rw-r--r-- | src/assets/javascripts/remove-twitter-sw.js | 241 | ||||
-rw-r--r-- | src/manifest.json (renamed from manifest.json) | 32 | ||||
-rw-r--r-- | src/pages/background/background.html | 7 | ||||
-rw-r--r-- | src/pages/options/options.html | 2 | ||||
-rw-r--r-- | src/pages/options/options.js | 14 | ||||
-rw-r--r-- | src/web-ext-config.js | 8 |
20 files changed, 235 insertions, 130 deletions
diff --git a/_locales/de/messages.json b/src/_locales/de/messages.json index 431ed1d4..431ed1d4 100644 --- a/_locales/de/messages.json +++ b/src/_locales/de/messages.json diff --git a/_locales/de/store.md b/src/_locales/de/store.md index 7dc315a1..e88df91e 100644 --- a/_locales/de/store.md +++ b/src/_locales/de/store.md @@ -1,10 +1,13 @@ # Extension Store (AMO & Chrome Web Store) Listing ## Summary: + ``` Eine einfache Browser-Erweiterung, die Anfragen an Twitter, YouTube, Instagram & Google Maps zu datenschutzfreundlichen Alternativen weiterleitet. ``` + ## Description: + ``` Leitet Anfragen an Twitter, YouTube, Instagram & Google Maps zu datenschutzfreundlichen Alternativen weiter – <a href='https://nitter.net/'>Nitter</a>, <a href='https://invidio.us/'>Invidious</a>, <a href='https://bibliogram.art/'>Bibliogram</a>, & <a href='https://www.openstreetmap.org'>OpenStreetMap</a>. @@ -23,12 +26,6 @@ Der Code dieser Browser-Erweiterung ist verfügbar auf <a href='https://github.c <b>★ Spenden: 👨🏻💻</b> Wenn Ihnen diese Erweiterung gefällt und Sie finanziell in der Lage sind, erwägen Sie bitte <a href='https://www.buymeacoffee.com/SimonBrazell'> mir auf BuyMeACoffee einen Kaffee zu kaufen</a> ☕️ ️ um Ihre Wertschätzung zu zeigen und die Fortsetzung des Projekts zu unterstützen. -<b>★ Was ist neu in dieser Version (v1.1.36) 🆕</b> -<ul> - <li>Russische Übersetzung hinzugefügt</li> - <li>Invidious-Autoplay-Parameter gefixt</li> -</ul> - <b>★ Berechtigungen: ℹ️</b> <ul> <li>Bitte beachten Sie, dass der Zugriff auf alle Website-Navigationsereignisse ( alle URLs), nicht nur auf die Zieldomains, erforderlich ist, damit eingebettete Video-Weiterleitungen stattfinden können. Zur Zeit kenne ich keine andere Möglichkeit, Iframe-Weiterleitungen zu realisieren, freue mich aber über Vorschläge dazu 🙂</li> diff --git a/_locales/en/messages.json b/src/_locales/en/messages.json index 8f698af8..da518d36 100644 --- a/_locales/en/messages.json +++ b/src/_locales/en/messages.json @@ -4,7 +4,7 @@ "description": "Name of the extension." }, "extensionDescription": { - "message": "Redirects Twitter, YouTube, Instagram & Google Maps requests to privacy friendly alternatives.", + "message": "Redirects Twitter, YouTube, Instagram, Google Maps, Reddit & Google Search requests to privacy friendly alternatives.", "description": "Description of the extension." }, "nitterInstance": { diff --git a/_locales/en/store.md b/src/_locales/en/store.md index 7461ee5e..69b47c3c 100644 --- a/_locales/en/store.md +++ b/src/_locales/en/store.md @@ -26,15 +26,6 @@ The code for this web extension is available on <a href='https://github.com/Simo <b>★ Donate: 👨🏻💻</b> If you like this extension and are financially able please consider <a href='https://www.buymeacoffee.com/SimonBrazell'>buying me a coffee</a> ☕️ ️to show your appreciation and support the continuation of the project. -<b>★ What's New in This Version (v1.1.42) 🆕</b> -<ul> - <li>Added Polish language translation.</li> - <li>Added Chinese language translation.</li> - <li>Pruned the Invidious random instances list.</li> - <li>Added support for FreeTube redirects (where possible).</li> - <li>Handle /igtv/, /tv/ and /reel/ redirects to Bibliogram correctly.</li> -</ul> - <b>★ Permissions: ℹ️</b> <ul> <li>Please note, access to all website navigation events ( all URLs), not just the target domains, is required to allow embedded video redirects to occur. At this time I know of no other way to achieve iframe redirects, happy to hear some suggestions on this though 🙂</li> diff --git a/_locales/fr/messages.json b/src/_locales/fr/messages.json index 7b66ab42..7b66ab42 100644 --- a/_locales/fr/messages.json +++ b/src/_locales/fr/messages.json diff --git a/_locales/fr/store.md b/src/_locales/fr/store.md index 99a388c0..dc29f4f7 100644 --- a/_locales/fr/store.md +++ b/src/_locales/fr/store.md @@ -1,10 +1,13 @@ # Extension Store (AMO & Chrome Web Store) Listing ## Summary: + ``` Redirige les requêtes les demandes Twitter, YouTube, Instagram et Google Maps vers des alternatives respectueuses de la vie privée. pour Twitter, YouTube, Instagram et Google Maps vers des alternatives respectueuses de la vie privée. ``` + ## Description: + ``` Redirige les requètes pour Twitter, YouTube, Instagram et Google Maps vers des alternatives respectueuses de la confidentialité - <a href="https://nitter.net/">Nitter</a>, <a href="https://invidio.us/">Invidious</a>, <a href="https://bibliogram.art/">Bibliogram</a>, & <a href="https://www.openstreetmap.org">OpenStreetMap</a>. @@ -23,14 +26,8 @@ Le code de cette extension Web est disponible sur <a href="https://github.com/Si <b>★ Faire un don: 👨🏻💻</b> Si vous aimez ce module complémentaire et si vous avez une bonne situation financière, pensez à <a href="https://www.buymeacoffee.com/SimonBrazell">m'acheter un café</a> ☕️ pour montrer que vous appréciez et soutenez la poursuite du projet. -<b>★ Nouveautés de cette version (v1.1.36) 🆕</b> -<ul> - <li>Added Russian language translation.</li> - <li>Fix Invidious autoplay parameter.</li> -</ul> - <b>★ Autorisations: ℹ️</b> <ul> <li>Veuillez noter que l'accès à tous les événements de navigation sur le site Web (toutes les adresses URL), et pas seulement aux domaines cibles, est requis pour permettre aux redirections vidéo intégrées de se faire correctement. Pour le moment, je ne connais aucun autre moyen de réaliser des redirections iframe, je serais heureux d'entendre quelques suggestions à ce sujet cependant 🙂</li> </ul> -``` \ No newline at end of file +``` diff --git a/_locales/pl/messages.json b/src/_locales/pl/messages.json index 85877663..85877663 100644 --- a/_locales/pl/messages.json +++ b/src/_locales/pl/messages.json diff --git a/_locales/pl/store.md b/src/_locales/pl/store.md index 575e15b6..575e15b6 100644 --- a/_locales/pl/store.md +++ b/src/_locales/pl/store.md diff --git a/_locales/ru/messages.json b/src/_locales/ru/messages.json index a993f042..a993f042 100644 --- a/_locales/ru/messages.json +++ b/src/_locales/ru/messages.json diff --git a/_locales/ru/store.md b/src/_locales/ru/store.md index 31b6715f..7904efcb 100644 --- a/_locales/ru/store.md +++ b/src/_locales/ru/store.md @@ -1,10 +1,13 @@ # Extension Store (AMO & Chrome Web Store) Listing ## Summary: + ``` Простое расширение для браузера, которое перенаправляет запросы к Twitter, YouTube, Instagram & Google Maps на альтернативные сервисы, дружелюбные к приватности. ``` + ## Description: + ``` Перенаправляет запросы к Twitter, YouTube, Instagram, & Google Maps на альтернативные сервисы, дружелюбные к приватности - <a href='https://nitter.net/'>Nitter</a>, <a href='https://invidio.us/'>Invidious</a>, <a href='https://bibliogram.art/'>Bibliogram</a> и <a href='https://www.openstreetmap.org'>OpenStreetMap</a>. @@ -23,12 +26,6 @@ <b>★ Пожертвовать: 👨🏻💻</b> Если вам нравится это расширение и вы можете помочь финансово, пожалуйста, <a href='https://www.buymeacoffee.com/SimonBrazell'>купите мне кофе</a> ☕ и покажите ваше одобрение и поддержку развития проекта. -<b>★ Что нового в этой версии (v1.1.36) 🆕</b> -<ul> - <li>Добавлен перевод на русский язык.</li> - <li>Исправлен параметр автоматического воспроизведения Invidious.</li> -</ul> - <b>★ Разрешения: ℹ</b> <ul> <li>Важно: доступ ко всем сайтам (URL), не только к целевым, требуется для разрешения перенаправления встроенных видео. В данный момент я не знаю, как осуществить перенаправление iframe, буду рад выслушать ваши предложения 🙂</li> diff --git a/_locales/zh_CN/messages.json b/src/_locales/zh_CN/messages.json index 8c19e2de..8c19e2de 100644 --- a/_locales/zh_CN/messages.json +++ b/src/_locales/zh_CN/messages.json diff --git a/_locales/zh_CN/store.md b/src/_locales/zh_CN/store.md index 964debf6..964debf6 100644 --- a/_locales/zh_CN/store.md +++ b/src/_locales/zh_CN/store.md diff --git a/src/assets/javascripts/helpers/google-search.js b/src/assets/javascripts/helpers/google-search.js index c83d7c98..6ac12400 100644 --- a/src/assets/javascripts/helpers/google-search.js +++ b/src/assets/javascripts/helpers/google-search.js @@ -4,6 +4,13 @@ const redirects = [ { link: "https://startpage.com", q: "/search/" }, { link: "https://www.qwant.com", q: "/" }, { link: "https://www.mojeek.com", q: "/search" }, + { link: "https://search.snopyta.org", q: "/" }, + { link: "https://searx.info", q: "/" }, + { link: "https://searx.be", q: "/" }, + { link: "https://search.disroot.org", q: "/" }, + { link: "https://searx.tuxcloud.net", q: "/" }, + { link: "https://searx.ninja", q: "/" }, + { link: "https://tromland.org/searx", q: "/search" }, ]; export default { diff --git a/src/assets/javascripts/helpers/reddit.js b/src/assets/javascripts/helpers/reddit.js index 6cf62bc7..7c89a258 100644 --- a/src/assets/javascripts/helpers/reddit.js +++ b/src/assets/javascripts/helpers/reddit.js @@ -5,19 +5,19 @@ const targets = [ "amp.reddit.com", ]; const redirects = [ - "https://old.reddit.com", // desktop - "https://i.reddit.com", // mobile - // teddit: privacy w/ old UI - "https://teddit.net", - "https://teddit.ggc-project.de", - "https://teddit.kavin.rocks", - "https://snew.notabug.io", // anti-censorship // libreddit: privacy w/ modern UI "https://libredd.it", "https://libreddit.spike.codes", "https://libreddit.kavin.rocks", "https://libreddit.insanity.wtf", "https://libreddit.dothq.co", + // teddit: privacy w/ old UI + "https://teddit.net", + "https://teddit.ggc-project.de", + "https://teddit.kavin.rocks", + "https://old.reddit.com", // desktop + "https://i.reddit.com", // mobile + "https://snew.notabug.io", // anti-censorship ]; const bypassPaths = /\/(gallery\/poll\/rpan\/settings\/topics)/; diff --git a/src/assets/javascripts/remove-twitter-sw.js b/src/assets/javascripts/remove-twitter-sw.js index c39b4c9e..e6ff0ae9 100644 --- a/src/assets/javascripts/remove-twitter-sw.js +++ b/src/assets/javascripts/remove-twitter-sw.js @@ -1,5 +1,26 @@ "use strict"; +const nitterInstances = [ + "https://nitter.net", + "https://nitter.snopyta.org", + "https://nitter.42l.fr", + "https://nitter.nixnet.services", + "https://nitter.13ad.de", + "https://nitter.pussthecat.org", + "https://nitter.mastodont.cat", + "https://nitter.dark.fail", + "https://nitter.tedomum.net", + "https://nitter.cattube.org", + "https://nitter.fdn.fr", + "https://nitter.1d4.us", + "https://nitter.kavin.rocks", + "https://tweet.lambda.dance", + "https://nitter.cc", + "https://nitter.weaponizedhumiliation.com", + "https://nitter.vxempire.xyz", + "https://nitter.unixfox.eu", +]; + let disableNitter; let nitterInstance; let redirectBypassFlag; @@ -7,83 +28,161 @@ let exceptions; window.browser = window.browser || window.chrome; -Promise.all([ - import(browser.extension.getURL("src/assets/javascripts/helpers/common.js")), - import(browser.extension.getURL("src/assets/javascripts/helpers/twitter.js")), -]).then( - (helpers) => { - let commonHelper; - let twitterHelper; - [commonHelper, twitterHelper] = helpers; +function getRandomInstance() { + return nitterInstances[~~(nitterInstances.length * Math.random())]; +} - function isNotException(url) { - return !exceptions.some((regex) => regex.test(url.href)); - } +function isNotException(url) { + return !exceptions.some((regex) => regex.test(url.href)); +} - function shouldRedirect(url) { - return ( - !redirectBypassFlag && - isNotException(url) && - !disableNitter && - url.host !== nitterInstance && - !url.pathname.includes("/home") - ); - } +function shouldRedirect(url) { + return ( + !redirectBypassFlag && + isNotException(url) && + !disableNitter && + url.host !== nitterInstance && + !url.pathname.includes("/home") + ); +} - function redirectTwitter(url) { - if (url.host.split(".")[0] === "pbs") { - return `${nitterInstance}/pic/${encodeURIComponent(url.href)}`; - } else if (url.host.split(".")[0] === "video") { - return `${nitterInstance}/gif/${encodeURIComponent(url.href)}`; - } else { - return `${nitterInstance}${url.pathname}${url.search}`; - } - } +function redirectTwitter(url) { + if (url.host.split(".")[0] === "pbs") { + return `${nitterInstance}/pic/${encodeURIComponent(url.href)}`; + } else if (url.host.split(".")[0] === "video") { + return `${nitterInstance}/gif/${encodeURIComponent(url.href)}`; + } else { + return `${nitterInstance}${url.pathname}${url.search}`; + } +} - browser.storage.sync.get( - [ - "nitterInstance", - "disableNitter", - "removeTwitterSW", - "redirectBypassFlag", - "exceptions", - ], - (result) => { - redirectBypassFlag = result.redirectBypassFlag; - browser.storage.sync.set({ - redirectBypassFlag: false, - }); - if (!result.removeTwitterSW) { - disableNitter = result.disableNitter; - nitterInstance = - result.nitterInstance || - commonHelper.default.getRandomInstance( - twitterHelper.default.redirects - ); - exceptions = result.exceptions - ? result.exceptions.map((e) => { - return new RegExp(e); - }) - : []; - navigator.serviceWorker.getRegistrations().then((registrations) => { - for (let registration of registrations) { - if (registration.scope === "https://twitter.com/") { - registration.unregister(); - console.log("Unregistered Twitter SW", registration); - } - } - }); - const url = new URL(window.location); - if (shouldRedirect(url)) { - const redirect = redirectTwitter(url); - console.info("Redirecting", `"${url.href}"`, "=>", `"${redirect}"`); - window.location = redirect; +browser.storage.sync.get( + [ + "nitterInstance", + "disableNitter", + "removeTwitterSW", + "redirectBypassFlag", + "exceptions", + ], + (result) => { + redirectBypassFlag = result.redirectBypassFlag; + browser.storage.sync.set({ + redirectBypassFlag: false, + }); + if (!result.removeTwitterSW) { + disableNitter = result.disableNitter; + nitterInstance = result.nitterInstance || getRandomInstance(); + exceptions = result.exceptions + ? result.exceptions.map((e) => { + return new RegExp(e); + }) + : []; + navigator.serviceWorker.getRegistrations().then((registrations) => { + for (let registration of registrations) { + if (registration.scope === "https://twitter.com/") { + registration.unregister(); + console.log("Unregistered Twitter SW", registration); } } + }); + const url = new URL(window.location); + if (shouldRedirect(url)) { + const redirect = redirectTwitter(url); + console.info("Redirecting", `"${url.href}"`, "=>", `"${redirect}"`); + window.location = redirect; } - ); - }, - (error) => { - console.error(error); + } } ); + +// Keeping this here until https://bugzilla.mozilla.org/show_bug.cgi?id=1536094 is fixed... +// +//"use strict"; +// +//let disableNitter; +//let nitterInstance; +//let redirectBypassFlag; +//let exceptions; +// +//window.browser = window.browser || window.chrome; +// +//Promise.all([ +// import(browser.extension.getURL("src/assets/javascripts/helpers/common.js")), +// import(browser.extension.getURL("src/assets/javascripts/helpers/twitter.js")), +//]).then( +// (helpers) => { +// let commonHelper; +// let twitterHelper; +// [commonHelper, twitterHelper] = helpers; +// +// function isNotException(url) { +// return !exceptions.some((regex) => regex.test(url.href)); +// } +// +// function shouldRedirect(url) { +// return ( +// !redirectBypassFlag && +// isNotException(url) && +// !disableNitter && +// url.host !== nitterInstance && +// !url.pathname.includes("/home") +// ); +// } +// +// function redirectTwitter(url) { +// if (url.host.split(".")[0] === "pbs") { +// return `${nitterInstance}/pic/${encodeURIComponent(url.href)}`; +// } else if (url.host.split(".")[0] === "video") { +// return `${nitterInstance}/gif/${encodeURIComponent(url.href)}`; +// } else { +// return `${nitterInstance}${url.pathname}${url.search}`; +// } +// } +// +// browser.storage.sync.get( +// [ +// "nitterInstance", +// "disableNitter", +// "removeTwitterSW", +// "redirectBypassFlag", +// "exceptions", +// ], +// (result) => { +// redirectBypassFlag = result.redirectBypassFlag; +// browser.storage.sync.set({ +// redirectBypassFlag: false, +// }); +// if (!result.removeTwitterSW) { +// disableNitter = result.disableNitter; +// nitterInstance = +// result.nitterInstance || +// commonHelper.default.getRandomInstance( +// twitterHelper.default.redirects +// ); +// exceptions = result.exceptions +// ? result.exceptions.map((e) => { +// return new RegExp(e); +// }) +// : []; +// navigator.serviceWorker.getRegistrations().then((registrations) => { +// for (let registration of registrations) { +// if (registration.scope === "https://twitter.com/") { +// registration.unregister(); +// console.log("Unregistered Twitter SW", registration); +// } +// } +// }); +// const url = new URL(window.location); +// if (shouldRedirect(url)) { +// const redirect = redirectTwitter(url); +// console.info("Redirecting", `"${url.href}"`, "=>", `"${redirect}"`); +// window.location = redirect; +// } +// } +// } +// ); +// }, +// (error) => { +// console.error(error); +// } +//); diff --git a/manifest.json b/src/manifest.json index 5daf0bc7..5f9ff8c6 100644 --- a/manifest.json +++ b/src/manifest.json @@ -1,28 +1,28 @@ { "name": "__MSG_extensionName__", "description": "__MSG_extensionDescription__", - "version": "1.1.44", + "version": "1.1.45", "manifest_version": 2, "background": { - "page": "src/pages/background/background.html", + "page": "pages/background/background.html", "persistent": true }, "default_locale": "en", "icons": { - "16": "src/assets/images/icon16.png", - "32": "src/assets/images/icon32.png", - "48": "src/assets/images/icon48.png", - "128": "src/assets/images/icon128.png" + "16": "assets/images/icon16.png", + "32": "assets/images/icon32.png", + "48": "assets/images/icon48.png", + "128": "assets/images/icon128.png" }, "permissions": ["storage", "webRequest", "webRequestBlocking", "<all_urls>"], "browser_action": { "default_title": "Privacy Redirect", - "default_popup": "src/pages/popup/popup.html", + "default_popup": "pages/popup/popup.html", "default_icon": { - "16": "src/assets/images/icon16.png", - "32": "src/assets/images/icon32.png", - "48": "src/assets/images/icon48.png", - "128": "src/assets/images/icon128.png" + "16": "assets/images/icon16.png", + "32": "assets/images/icon32.png", + "48": "assets/images/icon48.png", + "128": "assets/images/icon128.png" } }, "content_scripts": [ @@ -34,7 +34,7 @@ "*://pbs.twimg.com/*", "*://video.twimg.com/*" ], - "js": ["src/assets/javascripts/remove-twitter-sw.js"], + "js": ["assets/javascripts/remove-twitter-sw.js"], "run_at": "document_start" }, { @@ -53,19 +53,19 @@ "*://c7hqkpkpemu6e7emz5b4vyz7idjgdvgaaa3dyimmeojqbgpea3xqjoid.onion/*", "*://w6ijuptxiku4xpnnaetxvnkc5vqcdu7mgns2u77qefoixi63vbvnpnqd.onion/*" ], - "js": ["src/assets/javascripts/persist-invidious-prefs.js"], + "js": ["assets/javascripts/persist-invidious-prefs.js"], "run_at": "document_start" } ], "options_ui": { - "page": "src/pages/options/options.html", + "page": "pages/options/options.html", "open_in_tab": false }, - "web_accessible_resources": ["src/assets/javascripts/helpers/*"], + "web_accessible_resources": ["assets/javascripts/helpers/*"], "browser_specific_settings": { "gecko": { "id": "{b7f9d2cd-d772-4302-8c3f-eb941af36f76}", - "strict_min_version": "67.0" + "strict_min_version": "60.0" } } } diff --git a/src/pages/background/background.html b/src/pages/background/background.html index 6ce1fdc9..55f5b619 100644 --- a/src/pages/background/background.html +++ b/src/pages/background/background.html @@ -1,2 +1,7 @@ <!DOCTYPE html> -<script type="module" src="background.js"></script> +<html> + <head> + <meta charset="utf-8" /> + <script type="module" src="background.js"></script> + </head> +</html> diff --git a/src/pages/options/options.html b/src/pages/options/options.html index af7bd41a..dbb1406e 100644 --- a/src/pages/options/options.html +++ b/src/pages/options/options.html @@ -211,7 +211,7 @@ <input id="reddit-instance" type="url" - placeholder="https://old.reddit.com" + placeholder="https://libredd.it" /> </div> </section> diff --git a/src/pages/options/options.js b/src/pages/options/options.js index a6980734..0f785f6e 100644 --- a/src/pages/options/options.js +++ b/src/pages/options/options.js @@ -467,11 +467,15 @@ function autocomplete(input, list) { } } function getItem(item, val) { - let div = document.createElement("div"); - let html = `<strong>${item.substr(0, val.length)}</strong>${item.substr( - val.length - )}<input type='hidden' value='${item}'>`; - div.appendChild(parser.parseFromString(html, "text/html").documentElement); + const div = document.createElement("div"); + const strong = document.createElement("strong"); + strong.textContent = item.substr(0, val.length); + div.innerText = item.substr(val.length); + const hiddenInput = document.createElement("input"); + hiddenInput.type = "hidden"; + hiddenInput.value = item; + div.prepend(strong); + div.appendChild(hiddenInput); div.addEventListener("click", function (e) { input.value = e.target.getElementsByTagName("input")[0].value; input.dispatchEvent(new Event("input")); diff --git a/src/web-ext-config.js b/src/web-ext-config.js new file mode 100644 index 00000000..885e79aa --- /dev/null +++ b/src/web-ext-config.js @@ -0,0 +1,8 @@ +module.exports = { + ignoreFiles: [ + "assets/images/Screen Shot*.png", + "assets/images/buy-me-a-coffee.png", + "assets/images/logo*.png", + "assets/images/badge*.png", + ], +}; |