This commit is contained in:
ManeraKai 2024-05-20 14:34:18 +03:00
parent 33fc116bac
commit abcd566305
No known key found for this signature in database
GPG Key ID: 5ABC31FFD562E337
2 changed files with 13 additions and 1 deletions

View File

@ -81,12 +81,16 @@ function rewrite(url, frontend, randomInstance) {
case "librey":
return `${randomInstance}/search.php${url.search}`
case "yattee":
url.searchParams.delete("si")
return url.href.replace(/^https?:\/{2}/, "yattee://")
case "freetube":
url.searchParams.delete("si")
return 'freetube://' + url.href
case "freetubePwa":
url.searchParams.delete("si")
return 'freetube://' + url.href
case "poketube": {
url.searchParams.delete("si")
if (url.pathname.startsWith('/channel')) {
const reg = /\/channel\/(.*)\/?$/.exec(url.pathname)
if (reg) {
@ -383,6 +387,7 @@ function rewrite(url, frontend, randomInstance) {
return `${randomInstance}${url.pathname}${url.search}`
}
case "invidious": {
url.searchParams.delete("si")
if (url.hostname == "youtu.be" || url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live")) {
const watch = url.pathname.substring(url.pathname.lastIndexOf('/') + 1)
return `${randomInstance}/watch?v=${watch}${url.search.replace("?", "&")}`
@ -407,6 +412,7 @@ function rewrite(url, frontend, randomInstance) {
return `${randomInstance}${url.pathname}${url.search}`
}
case "tuboYoutube":
url.searchParams.delete("si")
if (url.pathname.startsWith("/channel")) return `${randomInstance}/channel?url=${encodeURIComponent(url.href)}`
if (url.pathname.startsWith("/watch")) return `${randomInstance}/stream?url=${encodeURIComponent(url.href)}`
return randomInstance
@ -442,6 +448,11 @@ function rewrite(url, frontend, randomInstance) {
}
return `${randomInstance}${url.pathname}${url.search}`;
}
case "piped":
case "pipedMaterial":
case "cloudtube":
case "viewtube":
url.searchParams.delete("si")
default:
return `${randomInstance}${url.pathname}${url.search}`
}

View File

@ -32,6 +32,7 @@ let tabIdRedirects = {}
browser.webRequest.onBeforeRequest.addListener(
details => {
const url = new URL(details.url)
const old_href = url.href
if (new RegExp(/^chrome-extension:\/{2}.*\/instances\/.*.json$/).test(url.href) && details.type == "xmlhttprequest") return
let initiator
try {
@ -71,7 +72,7 @@ browser.webRequest.onBeforeRequest.addListener(
if (tabIdRedirects[details.tabId] != false) tabIdRedirects[details.tabId] = false
return null
}
console.log("Redirecting", url.href, "=>", newUrl)
console.log("Redirecting", old_href, "=>", newUrl)
return { redirectUrl: newUrl }
}
return null