diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js index ac84142..b9ee64e 100644 --- a/src/assets/javascripts/services.js +++ b/src/assets/javascripts/services.js @@ -396,6 +396,13 @@ function rewrite(url, frontend, randomInstance) { return url.href return `${randomInstance}${url.pathname}${url.search}` } + case "freetubeMusic": { + if (url.hostname == "youtu.be" || url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live")) { + const watch = url.pathname.substring(url.pathname.lastIndexOf('/') + 1) + return `freetube://youtube.com/watch?v=${watch}` + } + return 'freetube://' + url.href + } case "invidiousMusic": { if (url.hostname == "youtu.be" || url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live")) { const watch = url.pathname.substring(url.pathname.lastIndexOf('/') + 1) @@ -683,7 +690,7 @@ async function reverse(url) { case "tekstowo": return `${config.services[service].url}/${url.search.slice(1)}` case "goodreads": - return `https://goodreads.com${url.pathname}${url.search}` + return `https://goodreads.com${url.pathname}${url.search}` default: return } diff --git a/src/config.json b/src/config.json index fbe2fe1..76e4b02 100644 --- a/src/config.json +++ b/src/config.json @@ -159,6 +159,13 @@ "embeddable": true, "instanceList": true, "url": "https://invidious.io/" + }, + "freetubeMusic": { + "name": "FreeTube", + "embeddable": false, + "desktopApp": true, + "instanceList": false, + "url": "https://github.com/FreeTubeApp/FreeTube" } }, "targets": [