Files
waxmplayer/src/background.js

28 lines
709 B
JavaScript

browser.browserAction.onClicked.addListener(() => {
browser.tabs.create({
url: browser.runtime.getURL("player.html")
});
});
browser.webRequest.onBeforeRequest.addListener(
(details) => {
const url = details.url.toLowerCase();
if (isSupportedMediaUrl(url)) {
const playerUrl = browser.runtime.getURL("player.html") + "?media=" + encodeURIComponent(details.url);
return { redirectUrl: playerUrl };
}
return {};
},
{
urls: ["<all_urls>"],
types: ["main_frame", "sub_frame"]
},
["blocking"]
);
function isSupportedMediaUrl(url) {
return url.match(/\.(669|amf|it|mod|mtm|mptm|s3m|stm|ult|uni|xm|umx)$/i) ||
url.match(/^(669|amf|it|mod|mtm|mptm|s3m|stm|ult|uni|xm|umx)\./i);
}