aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/assets/javascripts/services.js23
-rw-r--r--src/config.json63
-rw-r--r--src/manifest.json4
-rw-r--r--src/pages/options/widgets/general.js49
-rw-r--r--src/updates/updates.xml2
5 files changed, 69 insertions, 72 deletions
diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js
index e0b7b6df..d76a538a 100644
--- a/src/assets/javascripts/services.js
+++ b/src/assets/javascripts/services.js
@@ -58,13 +58,6 @@ function redirect(url, type, initiator, forceRedirection) {
frontend = options[service].frontend
- if (
- config.services[service].embeddable &&
- type != options[service].redirectType && options[service].redirectType != "both"
- ) {
- if (options[service].unsupportedUrls == 'block') return 'CANCEL'
- return
- }
if (config.services[service].frontends[frontend].desktopApp && type != "main_frame" && options[service].redirectType != "main_frame")
frontend = options[service].embedFrontend
@@ -75,6 +68,14 @@ function redirect(url, type, initiator, forceRedirection) {
continue
}
+ if (
+ config.services[service].embeddable &&
+ type != options[service].redirectType && options[service].redirectType != "both"
+ ) {
+ if (options[service].unsupportedUrls == 'block') return 'CANCEL'
+ return
+ }
+
let instanceList = options[frontend]
if (instanceList === undefined) break
if (instanceList.length === 0) return null
@@ -111,13 +112,6 @@ function redirect(url, type, initiator, forceRedirection) {
if (!frontend) return
switch (frontend) {
- case "beatbump": {
- return `${randomInstance}${url.pathname}${url.search}`
- .replace("/watch?v=", "/listen?id=")
- .replace("/channel/", "/artist/")
- .replace("/playlist?list=", "/playlist/VL")
- .replace(/\/search\?q=.*/, searchQuery => searchQuery.replace("?q=", "/") + "?filter=all")
- }
case "hyperpipe": {
return `${randomInstance}${url.pathname}${url.search}`.replace(/\/search\?q=.*/, searchQuery => searchQuery.replace("?q=", "/"))
}
@@ -694,7 +688,6 @@ const defaultInstances = {
'lingva': ['https://lingva.ml'],
'searxng': ['https://search.bus-hit.me'],
'rimgo': ['https://rimgo.vern.cc'],
- 'beatbump': ['https://beatbump.ml'],
'hyperpipe': ['https://hyperpipe.surge.sh'],
'facil': [' https://facilmap.org '],
'osm': ['https://www.openstreetmap.org'],
diff --git a/src/config.json b/src/config.json
index 6e97b26e..51d8c69d 100644
--- a/src/config.json
+++ b/src/config.json
@@ -108,11 +108,6 @@
},
"youtubeMusic": {
"frontends": {
- "beatbump": {
- "name": "Beatbump",
- "instanceList": true,
- "url": "https://github.com/snuffyDev/Beatbump"
- },
"hyperpipe": {
"name": "Hyperpipe",
"instanceList": true,
@@ -120,12 +115,12 @@
}
},
"targets": [
- "^https?:\\/{2}music\\.youtube\\.com(\\/|$)"
+ "^https?:\\/{2}music\\.youtube\\.com\\/"
],
"name": "YT Music",
"options": {
"enabled": false,
- "frontend": "beatbump",
+ "frontend": "hyperpipe",
"unsupportedUrls": "bypass"
},
"imageType": "png",
@@ -141,11 +136,11 @@
"localhost": true
}
},
- "targets": [
- "^https?:\\/{2}(www\\.|mobile\\.)?twitter\\.com(\\/|$)",
- "^https?:\\/{2}(pbs\\.|video\\.)twimg\\.com(\\/|$)",
- "^https?:\\/{2}platform\\.twitter\\.com/embed(\\/|$)",
- "^https?:\\/{2}t\\.co(\\/|$)"
+ "targets": [
+ "^https?:\\/{2}(www\\.|mobile\\.)?twitter\\.com\\/",
+ "^https?:\\/{2}(pbs\\.|video\\.)twimg\\.com\\/",
+ "^https?:\\/{2}platform\\.twitter\\.com/embed\\/",
+ "^https?:\\/{2}t\\.co\\/"
],
"name": "Twitter",
"options": {
@@ -169,7 +164,7 @@
}
},
"targets": [
- "^https?:\\/{2}(www\\.)?tiktok\\.com(\\/|$)"
+ "^https?:\\/{2}(www\\.)?tiktok\\.com\\/"
],
"name": "TikTok",
"options": {
@@ -221,7 +216,7 @@
}
},
"targets": [
- "^https?:\\/{2}([im]\\.)?(stack\\.)?imgur\\.(com|io)(\\/|$)"
+ "^https?:\\/{2}([im]\\.)?(stack\\.)?imgur\\.(com|io)\\/"
],
"name": "Imgur",
"options": {
@@ -269,25 +264,25 @@
}
},
"targets": [
- "^https:\\/{2}(.*\\.)?medium\\.com",
- "^https?:\\/{2}towardsdatascience\\.com(\\/|$)",
- "^https?:\\/{2}uxdesign\\.cc(\\/|$)",
- "^https?:\\/{2}uxplanet\\.org(\\/|$)",
- "^https?:\\/{2}betterprogramming\\.pub(\\/|$)",
- "^https?:\\/{2}aninjusticemag\\.com(\\/|$)",
- "^https?:\\/{2}betterhumans\\.pub(\\/|$)",
- "^https?:\\/{2}psiloveyou\\.xyz(\\/|$)",
- "^https?:\\/{2}entrepreneurshandbook\\.co(\\/|$)",
- "^https?:\\/{2}blog\\.coinbase\\.com(\\/|$)",
- "^https?:\\/{2}levelup\\.gitconnected\\.com(\\/|$)",
- "^https?:\\/{2}javascript\\.plainenglish\\.io(\\/|$)",
- "^https?:\\/{2}blog\\.bitsrc\\.io(\\/|$)",
- "^https?:\\/{2}itnext\\.io(\\/|$)",
- "^https?:\\/{2}codeburst\\.io(\\/|$)",
- "^https?:\\/{2}infosecwriteups\\.com(\\/|$)",
- "^https?:\\/{2}blog\\.devgenius\\.io(\\/|$)",
- "^https?:\\/{2}writingcooperative\\.com(\\/|$)",
- "^https?:\\/{2}proandroiddev\\.com(\\/|$)"
+ "^https:\\/{2}([a-zA-Z0-9-]+\\.)?medium\\.com",
+ "^https?:\\/{2}towardsdatascience\\.com\\/",
+ "^https?:\\/{2}uxdesign\\.cc\\/",
+ "^https?:\\/{2}uxplanet\\.org\\/",
+ "^https?:\\/{2}betterprogramming\\.pub\\/",
+ "^https?:\\/{2}aninjusticemag\\.com\\/",
+ "^https?:\\/{2}betterhumans\\.pub\\/",
+ "^https?:\\/{2}psiloveyou\\.xyz\\/",
+ "^https?:\\/{2}entrepreneurshandbook\\.co\\/",
+ "^https?:\\/{2}blog\\.coinbase\\.com\\/",
+ "^https?:\\/{2}levelup\\.gitconnected\\.com\\/",
+ "^https?:\\/{2}javascript\\.plainenglish\\.io\\/",
+ "^https?:\\/{2}blog\\.bitsrc\\.io\\/",
+ "^https?:\\/{2}itnext\\.io\\/",
+ "^https?:\\/{2}codeburst\\.io\\/",
+ "^https?:\\/{2}infosecwriteups\\.com\\/",
+ "^https?:\\/{2}blog\\.devgenius\\.io\\/",
+ "^https?:\\/{2}writingcooperative\\.com\\/",
+ "^https?:\\/{2}proandroiddev\\.com\\/"
],
"name": "Medium",
"options": {
@@ -308,7 +303,7 @@
}
},
"targets": [
- "^https?:\\/{2}([a-zA-Z0-9-]+\\.)*quora\\.com(\\/|$)"
+ "^https?:\\/{2}([a-zA-Z0-9-]+\\.)*quora\\.com\\/"
],
"name": "Quora",
"options": {
diff --git a/src/manifest.json b/src/manifest.json
index d8736bbc..d8e1e603 100644
--- a/src/manifest.json
+++ b/src/manifest.json
@@ -1,12 +1,12 @@
{
"name": "__MSG_extensionName__",
"description": "__MSG_extensionDescription__",
- "version": "2.6.3",
+ "version": "2.7.1",
"manifest_version": 2,
"browser_specific_settings": {
"gecko": {
"id": "7esoorv3@alefvanoon.anonaddy.me",
- "strict_min_version": "67.0"
+ "strict_min_version": "89.0"
}
},
"background": {
diff --git a/src/pages/options/widgets/general.js b/src/pages/options/widgets/general.js
index db2a414e..794e3e7e 100644
--- a/src/pages/options/widgets/general.js
+++ b/src/pages/options/widgets/general.js
@@ -4,6 +4,8 @@ window.browser = window.browser || window.chrome
import utils from "../../../assets/javascripts/utils.js"
import servicesHelper from "../../../assets/javascripts/services.js"
+const isChrome = browser.runtime.getBrowserInfo === undefined
+
async function setOption(option, type, event) {
let options = await utils.getOptions()
if (type == "select") {
@@ -62,31 +64,38 @@ importSettingsElement.addEventListener("change", () => {
}
})
-const exportSettingsSync = document.getElementById("export-settings-sync")
-exportSettingsSync.addEventListener("click", async () => {
- let options = await utils.getOptions()
- options.version = browser.runtime.getManifest().version
- browser.storage.sync.set({ options }, () => location.reload())
-})
+const exportSettingsSync = document.getElementById("export-settings-sync")
const importSettingsSync = document.getElementById("import-settings-sync")
const importSettingsSyncText = document.getElementById("import_settings_sync_text")
-importSettingsSync.addEventListener("click", () => {
- function importError() {
- importSettingsSyncText.innerHTML = '<span style="color:red;">Error!</span>'
- setTimeout(() => (importSettingsSyncText.innerHTML = oldHTML), 1000)
- }
- const oldHTML = importSettingsSyncText.innerHTML
- importSettingsSyncText.innerHTML = "..."
- browser.storage.sync.get({ options }, r => {
- const options = r.options
- if (options.version == browser.runtime.getManifest().version) {
- browser.storage.local.set({ options }, () => location.reload())
- } else {
- importError()
+if (!isChrome) {
+ exportSettingsSync.addEventListener("click", async () => {
+ let options = await utils.getOptions()
+ options.version = browser.runtime.getManifest().version
+ browser.storage.sync.set({ options }, () => location.reload())
+ })
+
+ importSettingsSync.addEventListener("click", () => {
+ function importError() {
+ importSettingsSyncText.innerHTML = '<span style="color:red;">Error!</span>'
+ setTimeout(() => (importSettingsSyncText.innerHTML = oldHTML), 1000)
}
+ const oldHTML = importSettingsSyncText.innerHTML
+ importSettingsSyncText.innerHTML = "..."
+ browser.storage.sync.get({ options }, r => {
+ const options = r.options
+ if (options.version == browser.runtime.getManifest().version) {
+ browser.storage.local.set({ options }, () => location.reload())
+ } else {
+ importError()
+ }
+ })
})
-})
+} else {
+ exportSettingsSync.style.display = 'none'
+ importSettingsSync.style.display = 'none'
+}
+
const resetSettings = document.getElementById("reset-settings")
resetSettings.addEventListener("click", async () => {
diff --git a/src/updates/updates.xml b/src/updates/updates.xml
index 8cd4cee0..c03f04dc 100644
--- a/src/updates/updates.xml
+++ b/src/updates/updates.xml
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='oladmjdebphlnjjcnomfhhbfdldiimaf'>
- <updatecheck codebase='https://github.com/libredirect/libredirect/releases/download/v2.6.2/libredirect-2.6.2.crx' version='2.6.2' />
+ <updatecheck codebase='https://github.com/libredirect/libredirect/releases/download/v2.7.0/libredirect-2.7.0.crx' version='2.7.0' />
</app>
</gupdate>