about summary refs log tree commit diff stats
path: root/src/assets/javascripts/tiktok.js
diff options
context:
space:
mode:
authorEdward <101938856+EdwardLangdon@users.noreply.github.com>2022-10-09 18:40:39 +0530
committerGitHub <noreply@github.com>2022-10-09 18:40:39 +0530
commit488c8c7c8b6b3431aed56c7eb1bc394fc8b6a321 (patch)
tree5e7d60bb0f818f0c37ab26babe127b26dd6baad7 /src/assets/javascripts/tiktok.js
parentUpdate LibreDirect messages pt_BR 07-29-2022 (diff)
parentUpdated instances (diff)
downloadlibredirect-488c8c7c8b6b3431aed56c7eb1bc394fc8b6a321.zip
Merge branch 'master' into patch-1
Diffstat (limited to 'src/assets/javascripts/tiktok.js')
-rw-r--r--src/assets/javascripts/tiktok.js260
1 files changed, 0 insertions, 260 deletions
diff --git a/src/assets/javascripts/tiktok.js b/src/assets/javascripts/tiktok.js
deleted file mode 100644
index ba4a9ff1..00000000
--- a/src/assets/javascripts/tiktok.js
+++ /dev/null
@@ -1,260 +0,0 @@
-window.browser = window.browser || window.chrome
-
-import utils from "./utils.js"
-
-const targets = [/^https?:\/{2}(www\.|)tiktok\.com.*/]
-
-const frontends = new Array("proxiTok")
-const protocols = new Array("normal", "tor", "i2p", "loki")
-
-let redirects = {}
-
-for (let i = 0; i < frontends.length; i++) {
-	redirects[frontends[i]] = {}
-	for (let x = 0; x < protocols.length; x++) {
-		redirects[frontends[i]][protocols[x]] = []
-	}
-}
-
-function setRedirects(val) {
-	browser.storage.local.get("cloudflareBlackList", r => {
-		redirects.proxiTok = val
-		proxiTokNormalRedirectsChecks = [...redirects.proxiTok.normal]
-		for (const instance of r.cloudflareBlackList) {
-			const a = proxiTokNormalRedirectsChecks.indexOf(instance)
-			if (a > -1) proxiTokNormalRedirectsChecks.splice(a, 1)
-		}
-		browser.storage.local.set({
-			tiktokRedirects: redirects,
-			proxiTokNormalRedirectsChecks,
-		})
-	})
-}
-
-function initProxiTokCookies(test, from) {
-	return new Promise(async resolve => {
-		await init()
-		let protocolHost = utils.protocolHost(from)
-		if (
-			![
-				...proxiTokNormalRedirectsChecks,
-				...proxiTokNormalCustomRedirects,
-				...proxiTokTorRedirectsChecks,
-				...proxiTokTorCustomRedirects,
-				...proxiTokI2pCustomRedirects,
-				...proxiTokLokiCustomRedirects,
-			].includes(protocolHost)
-		)
-			resolve()
-
-		if (!test) {
-			let checkedInstances = []
-			if (protocol == "loki") checkedInstances = [...proxiTokI2pCustomRedirects]
-			else if (protocol == "i2p") checkedInstances = [...proxiTokLokiCustomRedirects]
-			else if (protocol == "tor") checkedInstances = [...proxiTokTorRedirectsChecks, ...proxiTokTorCustomRedirects]
-			if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
-				checkedInstances = [...proxiTokNormalRedirectsChecks, ...proxiTokNormalCustomRedirects]
-			}
-			await utils.copyCookie("proxitok", from, checkedInstances, "theme")
-			await utils.copyCookie("proxitok", from, checkedInstances, "api-legacy")
-		}
-		resolve(true)
-	})
-}
-
-function pasteProxiTokCookies() {
-	return new Promise(async resolve => {
-		await init()
-		if (disableTiktok || protocol === undefined) {
-			resolve()
-			return
-		}
-		let checkedInstances = []
-		if (protocol == "loki") checkedInstances = [...proxiTokI2pCustomRedirects]
-		else if (protocol == "i2p") checkedInstances = [...proxiTokLokiCustomRedirects]
-		else if (protocol == "tor") checkedInstances = [...proxiTokTorRedirectsChecks, ...proxiTokTorCustomRedirects]
-		if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
-			checkedInstances = [...proxiTokNormalRedirectsChecks, ...proxiTokNormalCustomRedirects]
-		}
-		utils.getCookiesFromStorage("proxitok", checkedInstances, "theme")
-		utils.getCookiesFromStorage("proxitok", checkedInstances, "api-legacy")
-		resolve()
-	})
-}
-
-let disableTiktok,
-	protocol,
-	protocolFallback,
-	tiktokRedirects,
-	proxiTokNormalRedirectsChecks,
-	proxiTokNormalCustomRedirects,
-	proxiTokTorRedirectsChecks,
-	proxiTokTorCustomRedirects,
-	proxiTokI2pCustomRedirects,
-	proxiTokLokiCustomRedirects
-
-function init() {
-	return new Promise(async resolve => {
-		browser.storage.local.get(
-			[
-				"disableTiktok",
-				"protocol",
-				"protocolFallback",
-				"tiktokRedirects",
-				"proxiTokNormalRedirectsChecks",
-				"proxiTokNormalCustomRedirects",
-				"proxiTokTorRedirectsChecks",
-				"proxiTokTorCustomRedirects",
-				"proxiTokI2pCustomRedirects",
-				"proxiTokLokiCustomRedirects",
-			],
-			r => {
-				disableTiktok = r.disableTiktok
-				protocol = r.protocol
-				protocolFallback = r.protocolFallback
-				tiktokRedirects = r.tiktokRedirects
-				proxiTokNormalRedirectsChecks = r.proxiTokNormalRedirectsChecks
-				proxiTokNormalCustomRedirects = r.proxiTokNormalCustomRedirects
-				proxiTokTorRedirectsChecks = r.proxiTokTorRedirectsChecks
-				proxiTokTorCustomRedirects = r.proxiTokTorCustomRedirects
-				proxiTokI2pCustomRedirects = r.proxiTokI2pCustomRedirects
-				proxiTokLokiCustomRedirects = r.proxiTokLokiCustomRedirects
-				resolve()
-			}
-		)
-	})
-}
-
-init()
-browser.storage.onChanged.addListener(init)
-
-// https://www.tiktok.com/@keysikaspol/video/7061265241887345946
-// https://www.tiktok.com/@keysikaspol
-function redirect(url, type, initiator, disableOverride) {
-	if (disableTiktok && !disableOverride) return
-	if (type != "main_frame") return
-	const all = [...tiktokRedirects.proxiTok.normal, ...proxiTokNormalCustomRedirects]
-	if (initiator && (all.includes(initiator.origin) || targets.includes(initiator.host))) return
-	if (!targets.some(rx => rx.test(url.href))) return
-
-	let instancesList = []
-	if (protocol == "loki") instancesList = [...proxiTokI2pCustomRedirects]
-	else if (protocol == "i2p") instancesList = [...proxiTokLokiCustomRedirects]
-	else if (protocol == "tor") instancesList = [...proxiTokTorRedirectsChecks, ...proxiTokTorCustomRedirects]
-	if ((instancesList.length === 0 && protocolFallback) || protocol == "normal") {
-		instancesList = [...proxiTokNormalRedirectsChecks, ...proxiTokNormalCustomRedirects]
-	}
-	if (instancesList.length === 0) return
-
-	const randomInstance = utils.getRandomInstance(instancesList)
-	return `${randomInstance}${url.pathname}`
-}
-
-function reverse(url) {
-	return new Promise(async resolve => {
-		await init()
-		let protocolHost = utils.protocolHost(url)
-		const all = [
-			...tiktokRedirects.proxiTok.normal,
-			...tiktokRedirects.proxiTok.tor,
-			...proxiTokNormalCustomRedirects,
-			...proxiTokTorCustomRedirects,
-			...proxiTokI2pCustomRedirects,
-			...proxiTokLokiCustomRedirects,
-		]
-		if (!all.includes(protocolHost)) {
-			resolve()
-			return
-		}
-
-		resolve(`https://tiktok.com${url.pathname}${url.search}`)
-	})
-}
-
-function switchInstance(url, disableOverride) {
-	return new Promise(async resolve => {
-		await init()
-		if (disableTiktok && !disableOverride) {
-			resolve()
-			return
-		}
-		let protocolHost = utils.protocolHost(url)
-		const all = [
-			...tiktokRedirects.proxiTok.tor,
-			...tiktokRedirects.proxiTok.normal,
-
-			...proxiTokNormalCustomRedirects,
-			...proxiTokTorCustomRedirects,
-			...proxiTokI2pCustomRedirects,
-			...proxiTokLokiCustomRedirects,
-		]
-		if (!all.includes(protocolHost)) {
-			resolve()
-			return
-		}
-
-		let instancesList = []
-		if (protocol == "loki") instancesList = [...proxiTokI2pCustomRedirects]
-		else if (protocol == "i2p") instancesList = [...proxiTokLokiCustomRedirects]
-		else if (protocol == "tor") instancesList = [...proxiTokTorRedirectsChecks, ...proxiTokTorCustomRedirects]
-		if ((instancesList.length === 0 && protocolFallback) || protocol == "normal") {
-			instancesList = [...proxiTokNormalRedirectsChecks, ...proxiTokNormalCustomRedirects]
-		}
-
-		const i = instancesList.indexOf(protocolHost)
-		if (i > -1) instancesList.splice(i, 1)
-		if (instancesList.length === 0) {
-			resolve()
-			return
-		}
-
-		const randomInstance = utils.getRandomInstance(instancesList)
-		resolve(`${randomInstance}${url.pathname}${url.search}`)
-	})
-}
-
-function initDefaults() {
-	return new Promise(async resolve => {
-		fetch("/instances/data.json")
-			.then(response => response.text())
-			.then(async data => {
-				let dataJson = JSON.parse(data)
-				for (let i = 0; i < frontends.length; i++) {
-					redirects[frontends[i]] = dataJson[frontends[i]]
-				}
-				browser.storage.local.set(
-					{
-						disableTiktok: false,
-
-						tiktokRedirects: redirects,
-
-						proxiTokNormalRedirectsChecks: [...redirects.proxiTok.normal],
-						proxiTokNormalCustomRedirects: [],
-
-						proxiTokTorRedirectsChecks: [...redirects.proxiTok.tor],
-						proxiTokTorCustomRedirects: [],
-
-						proxiTokI2pRedirectsChecks: [...redirects.proxiTok.i2p],
-						proxiTokI2pCustomRedirects: [],
-
-						proxiTokLokiRedirectsChecks: [...redirects.proxiTok.loki],
-						proxiTokLokiCustomRedirects: [],
-					},
-					() => resolve()
-				)
-			})
-	})
-}
-
-export default {
-	setRedirects,
-
-	redirect,
-	reverse,
-	switchInstance,
-
-	initProxiTokCookies,
-	pasteProxiTokCookies,
-
-	initDefaults,
-}