From b92fdb6b91627e29962335e8ba9c6a7aa721a5f5 Mon Sep 17 00:00:00 2001 From: setop Date: Tue, 18 Mar 2025 14:45:35 +0100 Subject: [PATCH] working --- background.js | 20 ++++++++++++++++++++ icon.png | Bin 0 -> 2827 bytes manifest.json | 17 +++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 background.js create mode 100644 icon.png create mode 100644 manifest.json diff --git a/background.js b/background.js new file mode 100644 index 0000000..6b61c29 --- /dev/null +++ b/background.js @@ -0,0 +1,20 @@ +// Listen for web requests +browser.webRequest.onBeforeRequest.addListener( + function(details) { + const url = new URL(details.url); + + // Check if the URL is a YouTube URL + if (url.hostname === "www.youtube.com" || url.hostname === "youtube.com") { + // Extract the video ID from the URL + const videoId = url.searchParams.get("v"); + if (videoId) { + // Rewrite to the embedded URL format + const embedUrl = `https://www.youtube.com/embed/${videoId}`; + return { redirectUrl: embedUrl }; + } + } + }, + { urls: [""] }, + ["blocking"] +); + diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..797832a66fab696e7aaa9af4ac0e0c9e4a9f5318 GIT binary patch literal 2827 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 literal 0 HcmV?d00001 diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..1a3c19b --- /dev/null +++ b/manifest.json @@ -0,0 +1,17 @@ +{ + "manifest_version": 2, + "name": "YouTube URL Rewriter", + "version": "1.0", + "description": "Rewrites YouTube URLs to embedded format.", + "permissions": [ + "webRequest", + "webRequestBlocking", + "" + ], + "background": { + "scripts": ["background.js"] + }, + "icons": { + "128": "icon.png" + } +}