Selaa lähdekoodia

[fix] YouTube Mobile Locale URL Doesn't Exist

On m.youtube.com, the locale URL doesn't exist. This will throw an invalid URL (passes undefined to the URL constructor).

On quick glance it doesn't appear that there's a good alternative on mobile, so I just fallback to 'en'.
evanreichard 3 vuotta sitten
vanhempi
sitoutus
a7c8731564
1 muutettua tiedostoa jossa 5 lisäystä ja 5 poistoa
  1. 5 5
      Extensions/UserScript/Return Youtube Dislike.user.js

+ 5 - 5
Extensions/UserScript/Return Youtube Dislike.user.js

@@ -354,11 +354,11 @@ function roundDown(num) {
 }
 
 function numberFormat(numberState) {
-  const userLocales = new URL(
-    Array.from(document.querySelectorAll("head > link[rel='search']"))
-      ?.find((n) => n?.getAttribute("href")?.includes("?locale="))
-      ?.getAttribute("href")
-  )?.searchParams?.get("locale");
+  let localeURL = Array.from(document.querySelectorAll("head > link[rel='search']"))
+    ?.find((n) => n?.getAttribute("href")?.includes("?locale="))
+    ?.getAttribute("href");
+  
+  const userLocales = localeURL ? new URL(localeURL)?.searchParams?.get("locale") : 'en';
 
   const formatter = Intl.NumberFormat(
     document.documentElement.lang || userLocales,