website/.eleventy.js

28 lines
816 B
JavaScript

const htmlmin = require("html-minifier");
const CleanCSS = require("clean-css");
module.exports = function (eleventyConfig) {
eleventyConfig.addPassthroughCopy("publi");
eleventyConfig.addFilter("cssmin", function (code) {
return new CleanCSS({}).minify(code).styles;
});
eleventyConfig.addTransform("htmlmin", function (content, outputPath) {
if (outputPath.endsWith(".html")) {
return htmlmin.minify(content, {
useShortDoctype: true,
removeComments: true,
collapseWhitespace: true,
minifyJS: true,
minifyCSS: true,
});
}
return content;
});
eleventyConfig.addTransform("cssmin", function (content, outputPath) {
if (outputPath.endsWith(".css")) {
return new CleanCSS({}).minify(content);
}
return content;
});
};