fix: soo many lint errors
This commit is contained in:
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user