mirror of
https://github.com/goauthentik/authentik
synced 2026-04-27 18:07:15 +02:00
* web: Update deps. Avoid devDependencies. * web: Replace deprecated package with our own. * web: Clean up dev deps. * web: Clean up root packages. * web: Dedupe plugin.
30 lines
690 B
JavaScript
30 lines
690 B
JavaScript
/**
|
|
* @file Vite plugin to inline CSS imports
|
|
* @import { Plugin as VitePlugin } from "vite";
|
|
*/
|
|
|
|
const CSSImportPattern = /import [\w$]+ from .+\.(css)/g;
|
|
const JavaScriptFilePattern = /\.m?(js|ts|tsx)$/;
|
|
|
|
export function inlineCSSPlugin() {
|
|
/**
|
|
* @satisfies {VitePlugin}
|
|
*/
|
|
const inlineCSSPlugin = {
|
|
name: "inline-css-plugin",
|
|
transform: (source, id) => {
|
|
if (!JavaScriptFilePattern.test(id)) return;
|
|
|
|
const code = source.replace(CSSImportPattern, (match) => {
|
|
return `${match}?inline`;
|
|
});
|
|
|
|
return {
|
|
code,
|
|
};
|
|
},
|
|
};
|
|
|
|
return inlineCSSPlugin;
|
|
}
|