Merge pull request #1 from YourAdIsHere/main

Add support for css @import rules
This commit is contained in:
Avad3 2024-06-26 01:00:29 -04:00 committed by GitHub
commit fb18c8af9f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,7 +1,11 @@
import { encodeUrl } from "./url" import { encodeUrl } from "./url";
export function rewriteCss(css: string, origin?: URL) { export function rewriteCss(css: string, origin?: URL) {
css = css.replace(/(?<=url\("?'?)[^"'][\S]*[^"'](?="?'?\);?)/g, (match) => encodeUrl(match, origin)); css = css.replace(/(?<=url\("?'?)[^"'][\S]*[^"'](?="?'?\);?)/g, (match) => encodeUrl(match, origin));
//painful regex simulator
css = css.replace(/@import\s+(['"])?([^'"\);]+)\1?\s*(?:;|$)/g, (match, quote, url) => {
return `@import ${quote || ""}${encodeUrl(url.trim(), origin)}${quote || ""};`;
});
return css; return css;
}
}