fix: soo many lint errors

This commit is contained in:
Max Richter
2025-11-03 00:03:27 +01:00
parent c13420c3ab
commit 696082250d
41 changed files with 373 additions and 500 deletions

View File

@@ -11,12 +11,14 @@ export function absolutizeDomUrls(dom: JSDOM, domain: string): void {
const base = toBase(domain);
const rewrite = (selector: string, attr: string) => {
document.querySelectorAll<HTMLElement>(selector).forEach((el) => {
const v = el.getAttribute(attr);
if (!v) return;
const abs = toAbsolute(v, base);
if (abs !== v) el.setAttribute(attr, abs);
});
document.querySelectorAll<HTMLElement>(selector).forEach(
(el: HTMLElement) => {
const v = el.getAttribute(attr);
if (!v) return;
const abs = toAbsolute(v, base);
if (abs !== v) el.setAttribute(attr, abs);
},
);
};
// Common URL attributes
@@ -41,35 +43,35 @@ export function absolutizeDomUrls(dom: JSDOM, domain: string): void {
rewrite("form[action]", "action");
rewrite("video[poster]", "poster");
// srcset (img, source)
document
.querySelectorAll<HTMLElement>("img[srcset], source[srcset]")
.forEach((el) => {
.querySelectorAll("img[srcset], source[srcset]")
.forEach((el: HTMLImageElement) => {
const v = el.getAttribute("srcset");
if (!v) return;
const abs = absolutizeSrcset(v, base);
if (abs !== v) el.setAttribute("srcset", abs);
});
// Inline CSS in style attributes: url(...)
document.querySelectorAll<HTMLElement>("[style]").forEach((el) => {
const v = el.getAttribute("style");
if (!v) return;
const abs = absolutizeCssUrls(v, base);
if (abs !== v) el.setAttribute("style", abs);
});
document.querySelectorAll("[style]").forEach(
(el: HTMLElement) => {
const v = el.getAttribute("style");
if (!v) return;
const abs = absolutizeCssUrls(v, base);
if (abs !== v) el.setAttribute("style", abs);
},
);
// <style> blocks (inline CSS): url(...)
document.querySelectorAll<HTMLStyleElement>("style").forEach((styleEl) => {
const css = styleEl.textContent ?? "";
const abs = absolutizeCssUrls(css, base);
if (abs !== css) styleEl.textContent = abs;
});
document.querySelectorAll("style").forEach(
(styleEl: HTMLStyleElement) => {
const css = styleEl.textContent ?? "";
const abs = absolutizeCssUrls(css, base);
if (abs !== css) styleEl.textContent = abs;
},
);
// <meta http-equiv="refresh" content="5; url=/path">
document
.querySelectorAll<HTMLMetaElement>('meta[http-equiv="refresh" i][content]')
.forEach((meta) => {
.querySelectorAll('meta[http-equiv="refresh" i][content]')
.forEach((meta: HTMLMetaElement) => {
const content = meta.getAttribute("content") || "";
const abs = absolutizeMetaRefresh(content, base);
if (abs !== content) meta.setAttribute("content", abs);