import fs from "node:fs/promises"; import path from "node:path"; import postcss from "postcss"; import postcssImport from "postcss-import"; import postcssImportExtGlob from "postcss-import-ext-glob"; import autoprefixer from "autoprefixer"; import cssnano from "cssnano"; export const cssConfig = (eleventyConfig) => { eleventyConfig.addTemplateFormats("css"); eleventyConfig.addExtension("css", { outputFileExtension: "css", compile: async (inputContent, inputPath) => { const outputPath = "dist/assets/css/index.css"; if (inputPath.endsWith("index.css")) { return async () => { let result = await postcss([ postcssImportExtGlob, postcssImport, autoprefixer, cssnano, ]).process(inputContent, { from: inputPath }); await fs.mkdir(path.dirname(outputPath), { recursive: true }); await fs.writeFile(outputPath, result.css); return result.css; }; } }, }); };