diff options
author | awy <awy@awy.one> | 2025-08-15 03:01:21 +0300 |
---|---|---|
committer | awy <awy@awy.one> | 2025-08-15 03:01:21 +0300 |
commit | a9370a08517668b3e98cc1d0bd42df407a76c220 (patch) | |
tree | 37e7bdb0e76f5495f798e077e45d377c0c3870c0 /data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets | |
parent | b73acfe395ea849fcd15c9886a7f4631f2b6f82b (diff) |
Diffstat (limited to 'data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets')
18 files changed, 0 insertions, 1022 deletions
diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/chevron-down.svg b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/chevron-down.svg deleted file mode 100644 index 7679f26..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/chevron-down.svg +++ /dev/null @@ -1,3 +0,0 @@ -<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 512 512'> - <polyline points='112 184 256 328 400 184' style='fill:none;stroke:#FF5B56;stroke-linecap:round;stroke-linejoin:round;stroke-width:48px'/> -</svg>
\ No newline at end of file diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon128.png b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon128.png Binary files differdeleted file mode 100644 index cd16bef..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon128.png +++ /dev/null diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon16.png b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon16.png Binary files differdeleted file mode 100644 index f896608..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon16.png +++ /dev/null diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon32.png b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon32.png Binary files differdeleted file mode 100644 index c5b417c..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon32.png +++ /dev/null diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon48.png b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon48.png Binary files differdeleted file mode 100644 index 24dd5af..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/images/icon48.png +++ /dev/null diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/common.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/common.js deleted file mode 100644 index a0e05c7..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/common.js +++ /dev/null @@ -1,12 +0,0 @@ -function filterInstances(instances) { - return instances.filter((instance) => !instance.includes(".onion")); -} - -function getRandomInstance(instances) { - return instances[~~(instances.length * Math.random())]; -} - -export default { - filterInstances, - getRandomInstance, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-maps.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-maps.js deleted file mode 100644 index 2ba924b..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-maps.js +++ /dev/null @@ -1,52 +0,0 @@ -const targets = /https?:\/\/(((www|maps)\.)?(google\.).*(\/maps)|maps\.(google\.).*)/; -const redirects = ["https://openstreetmap.org"]; -const mapCentreRegex = /@(-?\d[0-9.]*),(-?\d[0-9.]*),(\d{1,2})[.z]/; -const dataLatLngRegex = /(!3d|!4d)(-?[0-9]{1,10}.[0-9]{1,10})/g; -const placeRegex = /\/place\/(.*)\//; -const travelModes = { - driving: "fossgis_osrm_car", - walking: "fossgis_osrm_foot", - bicycling: "fossgis_osrm_bike", - transit: "fossgis_osrm_car", // not implemented on OSM, default to car. -}; -const layers = { - none: "S", - transit: "T", - traffic: "S", // not implemented on OSM, default to standard. - bicycling: "C", -}; -function addressToLatLng(address, callback) { - const xmlhttp = new XMLHttpRequest(); - xmlhttp.onreadystatechange = () => { - if (xmlhttp.readyState === XMLHttpRequest.DONE) { - if (xmlhttp.status === 200) { - const json = JSON.parse(xmlhttp.responseText)[0]; - if (json) { - callback( - `${json.lat}%2C${json.lon}`, - `${json.boundingbox[2]},${json.boundingbox[1]},${json.boundingbox[3]},${json.boundingbox[0]}` - ); - } - } else { - console.info("Error: Status is " + xmlhttp.status); - } - } - }; - xmlhttp.open( - "GET", - `https://nominatim.openstreetmap.org/search/${address}?format=json&limit=1`, - false - ); - xmlhttp.send(); -} - -export default { - targets, - redirects, - mapCentreRegex, - dataLatLngRegex, - placeRegex, - travelModes, - layers, - addressToLatLng, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-search.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-search.js deleted file mode 100644 index 8bd6a10..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-search.js +++ /dev/null @@ -1,27 +0,0 @@ -const targets = /https?:\/\/(((www|maps)\.)?(google\.).*(\/search)|search\.(google\.).*)/; -const redirects = [ - { link: "https://duckduckgo.com", q: "/" }, - { link: "https://startpage.com", q: "/search/" }, - { link: "https://www.ecosia.org", 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" }, - { link: "https://engine.presearch.org", q: "/search" }, - { link: "https://searx.silkky.cloud", q: "/" }, - { link: "https://search.trom.tf", q: "/" }, - { link: "https://whooglesearch.net", q: "/search" }, - { link: "https://whoogle.sdf.org", q: "/search" }, - { link: "https://whoogle.himiko.cloud", q: "/search" }, - { link: "https://whoogle-search.zeet.app", q: "/search" }, -]; - -export default { - targets, - redirects, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-translate.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-translate.js deleted file mode 100644 index 98bd09d..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/google-translate.js +++ /dev/null @@ -1,8 +0,0 @@ -const targets = ["translate.google.com", "translate.google.no"]; - -const redirects = ["https://translate.metalune.xyz"]; - -export default { - targets, - redirects, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/instagram.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/instagram.js deleted file mode 100644 index 7759603..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/instagram.js +++ /dev/null @@ -1,49 +0,0 @@ -const targets = [ - "instagram.com", - "www.instagram.com", - "help.instagram.com", - "about.instagram.com", -]; -const redirects = [ - "https://bibliogram.art", - "https://bibliogram.snopyta.org", - "https://bibliogram.pussthecat.org", - "https://bibliogram.nixnet.services", - "https://bibliogram.ethibox.fr", - "https://bibliogram.hamster.dance", - "https://insta.trom.tf", - "https://bib.actionsack.com" -]; -const reservedPaths = [ - "about", - "explore", - "support", - "press", - "api", - "privacy", - "safety", - "admin", - "graphql", - "accounts", - "help", - "terms", - "contact", - "blog", - "igtv", - "u", - "p", - "fragment", - "imageproxy", - "videoproxy", - ".well-known", - "tv", - "reel", -]; -const bypassPaths = /\/(accounts\/|embeds?.js)/; - -export default { - targets, - redirects, - reservedPaths, - bypassPaths, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/reddit.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/reddit.js deleted file mode 100644 index e37972b..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/reddit.js +++ /dev/null @@ -1,32 +0,0 @@ -const targets = [ - "www.reddit.com", - "np.reddit.com", - "new.reddit.com", - "amp.reddit.com", - "i.redd.it", - "redd.it", -]; -const redirects = [ - // libreddit: privacy w/ modern UI - "https://safereddit.com", - "https://reddit.rtrace.io", - "https://libreddit.privacydev.net", - "https://l.opnxng.com", - "https://libreddit.projectsegfau.lt", - "https://discuss.whatever.social", - "https://snoo.habedieeh.re", - "https://redlib.pussthecat.org", - "https://redlib.northboot.xyz", - "https://redlib.kylrth.com", - "https://red.artemislena.eu", - "https://old.reddit.com", // desktop - "http://red.lpoaj7z2zkajuhgnlltpeqh3zyq7wk2iyeggqaduhgxhyajtdt2j7wad.onion", - "http://snoo.habeehrhadazsw3izbrbilqajalfyqqln54mrja3iwpqxgcuxnus7eid.onion", -]; -const bypassPaths = /\/(gallery\/poll\/rpan\/settings\/topics)/; - -export default { - targets, - redirects, - bypassPaths, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/twitter.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/twitter.js deleted file mode 100644 index f57fb68..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/twitter.js +++ /dev/null @@ -1,30 +0,0 @@ -/* - Please remember to also update the src/manifest.json file - (content_scripts > matches, 'remove-twitter-sw.js') - when updating this list: - */ -const targets = [ - "x.com", - "mobile.x.com", - "twitter.com", - "www.twitter.com", - "mobile.twitter.com", - "pbs.twimg.com", - "video.twimg.com", -]; -/* - Please remember to also update the - src/assets/javascripts/remove-twitter-sw.js file - (const nitterInstances) when updating this list: - */ -const redirects = [ - "https://nitter.privacydev.net", - "https://xcancel.com", - "http://nitter.pjsfkvpxlinjamtawaksbnnaqs2fc2mtvmozrzckxh7f3kis6yea25ad.onion", - "http://nitter.g4c3eya4clenolymqbpgwz3q3tawoxw56yhzk4vugqrl6dtu3ejvhjid.onion", -]; - -export default { - targets, - redirects, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/wikipedia.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/wikipedia.js deleted file mode 100644 index 2800661..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/wikipedia.js +++ /dev/null @@ -1,8 +0,0 @@ -const targets = /wikipedia.org/; - -const redirects = ["https://wikiless.org"]; - -export default { - targets, - redirects, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/youtube.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/youtube.js deleted file mode 100644 index 53aa099..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/helpers/youtube.js +++ /dev/null @@ -1,26 +0,0 @@ -const targets = [ - "m.youtube.com", - "youtube.com", - "img.youtube.com", - "www.youtube.com", - "youtube-nocookie.com", - "www.youtube-nocookie.com", - "youtu.be", - "s.ytimg.com", - "music.youtube.com", - "piped.video", -]; -/* - Please remember to also update the manifest.json file - (content_scripts > matches, 'persist-invidious-prefs.js') - when updating this list: - */ -const redirects = [ - "https://inv.nadeko.net", - "http://inv.nadekonw7plitnjuawu6ytjsl7jlglk2t6pyq6eftptmiv3dvqndwvyd.onion", -]; - -export default { - targets, - redirects, -}; diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/localise.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/localise.js deleted file mode 100644 index 78e4c90..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/localise.js +++ /dev/null @@ -1,35 +0,0 @@ -window.browser = window.browser || window.chrome; - -function getMessage(tag) { - return tag.replace(/__MSG_(\w+)__/g, function (_match, v1) { - return v1 ? browser.i18n.getMessage(v1) : null; - }); -} - -function localisePage() { - let elements = document.querySelectorAll("[data-localise]"); - - for (let i in elements) - if (elements.hasOwnProperty(i)) { - let obj = elements[i]; - let tag = obj.getAttribute("data-localise").toString(); - - let msg = getMessage(tag); - - if (msg && msg !== tag) obj.textContent = msg; - } - - let placeholders = document.querySelectorAll("[data-localise-placeholder]"); - - for (let i in placeholders) - if (placeholders.hasOwnProperty(i)) { - let obj = placeholders[i]; - let tag = obj.getAttribute("data-localise-placeholder").toString(); - - let msg = getMessage(tag); - - if (msg && msg !== tag) obj.placeholder = msg; - } -} - -localisePage(); diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/persist-invidious-prefs.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/persist-invidious-prefs.js deleted file mode 100644 index dff2dd5..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/persist-invidious-prefs.js +++ /dev/null @@ -1,30 +0,0 @@ -"use strict"; - -window.browser = window.browser || window.chrome; - -function getCookie() { - let ca = document.cookie.split(";"); - for (let i = 0; i < ca.length; i++) { - let c = ca[i]; - while (c.charAt(0) == " ") c = c.substring(1, c.length); - if (c.indexOf("PREFS=") == 0) { - return JSON.parse( - decodeURIComponent(c.substring("PREFS=".length, c.length)) - ); - } - } - return {}; -} - -browser.storage.sync.get( - ["alwaysProxy", "videoQuality", "invidiousDarkMode", "persistInvidiousPrefs"], - (result) => { - if (result.persistInvidiousPrefs) { - const prefs = getCookie(); - prefs.local = result.alwaysProxy; - prefs.quality = result.videoQuality; - prefs.dark_mode = result.invidiousDarkMode; - document.cookie = `PREFS=${encodeURIComponent(JSON.stringify(prefs))}`; - } - } -); diff --git a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/remove-twitter-sw.js b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/remove-twitter-sw.js deleted file mode 100644 index f8d9e76..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/javascripts/remove-twitter-sw.js +++ /dev/null @@ -1,172 +0,0 @@ -"use strict"; - -const nitterInstances = [ - "https://nitter.privacydev.net", - "https://nitter.lucabased.xyz" -]; - -let disableNitter; -let nitterInstance; -let redirectBypassFlag; -let exceptions; - -window.browser = window.browser || window.chrome; - -function getRandomInstance() { - return nitterInstances[~~(nitterInstances.length * Math.random())]; -} - -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 || 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; - } - } - } -); - -// 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/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/stylesheets/styles.css b/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/stylesheets/styles.css deleted file mode 100644 index 5079a3c..0000000 --- a/data/extensions/{b7f9d2cd-d772-4302-8c3f-eb941af36f76}/assets/stylesheets/styles.css +++ /dev/null @@ -1,538 +0,0 @@ -body { - --text: #fff; - --bg-main: #3c4043; - --bg-secondary: #292a2d; - --active: #ff5b56; - --space: 5px; - --danger: #f04141; - --danger-light: #f9d0d5; - --dark-grey: #767676; - --light-grey: #c3c3c3; -} - -body.light-theme { - --text: #000; - --bg-main: #e3e7ea; - --bg-secondary: #fff; -} - -.light-theme.popup, -.light-theme .popup { - background-color: var(--bg-secondary); -} - -body { - margin: 0; - width: 400px; - margin: auto; - min-height: 572px; - font-family: Sans-Serif; - background-color: var(--bg-secondary); - color: var(--text); -} - -.popup { - width: 300px; - min-height: auto; - overflow: hidden; - background-color: var(--bg-main); -} - -input { - appearance: none; - -moz-appearance: none; - -webkit-appearance: none; -} - -header { - background-color: var(--bg-main); - color: var(--text); - display: flex; - padding: var(--space); -} - -header .logo-container { - width: 100%; - margin: var(--space) 0 var(--space) 0; - display: flex; - align-items: center; -} - -header .logo-container img { - height: 85px; - float: left; -} - -header .logo-container h1 { - font-size: 25px; - float: left; - margin-left: 15px; - text-transform: uppercase; - font-weight: normal; -} - -header .privacy { - letter-spacing: 0.13em; -} - -header .version { - font-size: 8.5px; - font-weight: bold; - position: absolute; - top: var(--space); - right: var(--space); -} - -h1 { - font-size: 14px; - margin: 7px auto; -} - -i { - font-size: 12px; -} - -h2 { - clear: both; - font-size: 12px; - font-weight: normal; - margin: 0; -} - -h3 { - font-size: 16px; -} - -h1, -h2 { - color: var(--text); -} - -footer { - width: 100%; -} - -footer a.button { - margin: var(--space); -} - -input[type="url"], -input[type="text"], -select { - width: 100%; - box-sizing: border-box; - margin-bottom: var(--space); - background-color: var(--bg-main); - border-style: inset; - color: var(--text); -} - -input[type="url"] { - padding: 1px 2px; -} - -input[type="checkbox"] { - opacity: 0; -} - -input[type="radio"] { - appearance: radio; - -moz-appearance: radio; - -webkit-appearance: radio; -} - -input[type="radio"]:checked + label { - background: transparent; -} - -.checkbox-label { - margin-left: 5px; - background: grey; - border-radius: 25px; - color: var(--text); - cursor: pointer; - display: block; - float: right; - font-weight: bold; - height: 30px; - position: relative; - text-indent: -400px; - width: 50px; -} - -.checkbox-label:after { - background: white; - border-radius: 90px; - content: ""; - height: 20px; - left: var(--space); - position: absolute; - top: var(--space); - transition: 0.3s; - width: 20px; -} - -input:checked + label { - background: var(--active); -} - -input:checked + label:after { - left: calc(100% - var(--space)); - transform: translateX(-100%); -} - -.settings-block { - display: block; - padding: 5px 10px 5px 10px; -} - -.settings-block h1 { - float: left; -} - -.button { - border: var(--active) solid 1px; - color: var(--text); - stroke: var(--text); - display: block; - font-size: 12px; - font-weight: bold; - margin: var(--space) auto; - padding: 10px; - text-align: center; - text-decoration: none; - cursor: pointer; - -webkit-transition-duration: 0.4s; - transition-duration: 0.4s; -} - -.button * { - vertical-align: middle; -} - -.button:hover { - background-color: var(--active); - color: var(--text); - stroke: var(--text); -} - -.button:active { - background-color: var(--active); - box-shadow: 0 var(--space) var(--bg-main); - transform: translateY(4px); -} - -input:invalid { - color: var(--danger); - border-color: var(--danger); - background-color: var(--danger-light); -} - -.margin-bottom { - margin-bottom: 20px; -} - -.tab { - overflow: hidden; - background-color: var(--bg-secondary); - position: fixed; - top: 0; - width: 400px; - z-index: 2; -} - -.tab button { - border-top-left-radius: 10px; - border-top-right-radius: 10px; - color: var(--text); - background-color: inherit; - float: left; - border: none; - outline: none; - cursor: pointer; - padding: 14px 16px; - transition: 0.3s; - border: solid 1px var(--bg-main); - width: 33.333%; - font-size: 14px; -} - -.tab button:hover { - background-color: var(--active); -} - -.tab button.active { - background-color: var(--bg-main); -} - -.tabcontent { - padding-top: 50px; - display: none; - background-color: var(--bg-main); - min-height: 510px; -} - -div.exceptions { - clear: left; -} - -div.exceptions > input { - width: 240px; - float: left; -} - -#add-to-exceptions { - float: right; - border: var(--active) solid 1px; - background-color: var(--active); - color: var(--text); - font-weight: bold; - cursor: pointer; - border-radius: 50%; - padding: 1px 1px 0px 1px; - margin-right: 5px; -} - -#add-to-exceptions svg { - height: 20px; - width: 20px; -} - -ul { - padding: 0; - list-style-type: none; - color: var(--text); - margin: 20px 20px 0 20px; -} - -li { - border-bottom: solid 0.5px var(--bg-secondary); - padding: 20px 0px 20px 20px; -} - -#exceptions-items button { - float: right; - margin-right: -5px; - border: var(--active) solid 1px; - background-color: var(--active); - color: var(--text); - font-weight: bold; - cursor: pointer; - border-radius: 50%; - padding: 2px 2px 0px 2px; -} - -.button svg { - height: 18px; - width: 18px; -} - -.autocomplete { - position: relative; - display: inline-block; - width: 100%; -} - -.autocomplete input { - background: url(../images/chevron-down.svg) right no-repeat; -} - -.autocomplete-items { - position: absolute; - border: 1px solid var(--bg-main); - border-bottom: none; - border-top: none; - z-index: 99; - top: 85%; - left: 0; - right: 0; - overflow-y: auto; - max-height: 175px; - color: var(--text); - overflow-x: hidden; - max-width: 380px; -} - -.autocomplete-items div { - padding: 10px; - cursor: pointer; - background-color: var(--bg-secondary); - border-bottom: 1px solid var(--bg-main); -} - -.autocomplete-items div:hover { - background-color: var(--active); -} - -.autocomplete-active { - background-color: var(--active); - color: var(--text); -} - -.option { - width: 100%; -} - -.option td { - vertical-align: middle; -} - -input[type="range"] { - -webkit-appearance: none; - margin: 18px 0; - width: 100%; -} - -input[type="range"]:focus { - outline: none; -} - -input[type="range"]::-webkit-slider-runnable-track { - width: 100%; - height: 8.4px; - cursor: pointer; - border-color: var(--dark-grey), var(--light-grey); - background: var(--bg-main); - border-radius: 1.3px; - border: 0.2px inset var(--dark-grey); -} - -input[type="range"]::-webkit-slider-thumb { - border-color: var(--active); - border: 1px solid var(--dark-grey); - height: 36px; - width: 16px; - border-radius: 3px; - background: var(--active); - cursor: pointer; - -webkit-appearance: none; - margin-top: -14px; -} - -input[type="range"]:focus::-webkit-slider-runnable-track { - background: var(--bg-main); -} - -input[type="range"]::-moz-range-track { - width: 100%; - height: 8.4px; - cursor: pointer; - border-color: var(--dark-grey), var(--light-grey); - background: var(--bg-main); - border-radius: 1.3px; - border: 0.2px inset var(--dark-grey); -} - -input[type="range"]::-moz-range-thumb { - border-color: var(--active); - border: 1px solid var(--dark-grey); - height: 36px; - width: 16px; - border-radius: 3px; - background: var(--active); - cursor: pointer; -} - -::placeholder { - color: var(--text); - opacity: 0.7; -} - -*:focus { - outline: var(--active) solid 2px; -} - -@media (prefers-color-scheme: light) { - body { - --text: #000; - --text-secondary: #fff; - --bg-main: #e3e7ea; - --bg-secondary: #fff; - } - - body.dark-theme { - --text: #fff; - --text-secondary: #000; - --bg-main: #3c4043; - --bg-secondary: #292a2d; - } - - .popup { - background-color: var(--bg-secondary); - } -} - -#volume-value { - float: right; -} - -.collapsible { - background-color: var(--bg-main); - cursor: pointer; - color: var(--active); - padding: 18px; - width: 100%; - border: none; - text-align: left; - outline: none; - font-size: 15px; - border-bottom: solid var(--active); - font-weight: bold; -} - -.collapsible:after { - content: "\25BE"; - color: var(--active); - font-weight: bold; - float: right; - margin-left: 5px; -} - -.collapsible-active, -.collapsible:hover, -.collapsible:hover::after { - background-color: var(--active); - color: var(--text-secondary); -} - -.collapsible-active:after { - content: "\25B4"; - color: var(--text-secondary); - font-weight: bold; - float: right; - margin-left: 5px; -} - -.collapsible-content { - padding: 0 18px; - display: none; - overflow: hidden; -} - -hr { - height: 2px; - background-color: var(--active); - border: none; -} - -.new-badge { - position: relative; -} - -.new-badge[data-new-badge]:after { - content: "New!"; - position: absolute; - top: -10px; - right: -42px; - font-size: 0.9em; - background: var(--active); - color: white; - width: 35px; - height: 18px; - text-align: center; - line-height: 18px; - border-radius: 25px; - padding: 2px; - box-shadow: 0 0 1px var(--bg-secondary); - font-weight: bold; -} |