diff --git a/src/vite-config.js b/src/vite-config.js index ff66ee4..378abbb 100644 --- a/src/vite-config.js +++ b/src/vite-config.js @@ -3,7 +3,7 @@ import { cpSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node import { basename, dirname, extname, join, relative, resolve } from 'node:path'; import { collectEntries, normalizePath, shouldCopyFile, walkFiles } from './file-rules.js'; -const addScssManifestAliases = (outDir) => { +const normalizeScssManifestEntries = (outDir) => { const manifestPath = join(outDir, 'manifest.json'); if (!existsSync(manifestPath)) { @@ -19,16 +19,14 @@ const addScssManifestAliases = (outDir) => { } const cssKey = `${key.slice(0, -'.scss'.length)}.css`; - if (manifest[cssKey]) { - continue; - } - - manifest[cssKey] = { + manifest[cssKey] = manifest[cssKey] ?? { ...entry, src: cssKey, name: cssKey, names: Array.isArray(entry.names) ? Array.from(new Set([cssKey, ...entry.names])) : [cssKey] }; + + delete manifest[key]; changed = true; } @@ -60,7 +58,7 @@ const copyServerFilesPlugin = ({ sourceDir, outDir }) => ({ cpSync(absolutePath, destination); }); - addScssManifestAliases(outDir); + normalizeScssManifestEntries(outDir); } });