yova 2 years ago
parent b41f4d6e64
commit 89048f4b40

@ -0,0 +1,38 @@
const removeNewlines = (string) => string.replace(/\n$/g, "");
// See https://gohugo.io/hugo-pipes/postprocess/#css-purging-with-postcss
const purgecss = require("@fullhuman/postcss-purgecss")({
content: [
//
// TODO: Maybe use process.cwd() to get some heuristics of what
// is going on, i.e. which of the following cases we are in.
//
// When this file is copied to the root of your Hugo site
"./hugo_stats.json",
// When your Hugo site does not have its own postcss.config.js
// and hence this file is used inside ./themes/hugo-product-launch
"../../hugo_stats.json",
// When building the exampleSite during development
"./exampleSite/hugo_stats.json",
],
defaultExtractor: (content) => {
let els = JSON.parse(content).htmlElements;
// An HTML element-name may include a newline, e.g.
// <a
// href="https://www.yo.com"
// class="pretty-link"
// >Yo!</a>
// Thus we remove those newlines.
return els.tags.concat(els.classes, els.ids).map(removeNewlines);
},
});
module.exports = {
plugins: [
require("postcss-import"),
require("tailwindcss"),
require("autoprefixer"),
// ...(process.env.HUGO_ENVIRONMENT === "production" ? [purgecss] : []),
],
};
Loading…
Cancel
Save