25 lines
744 B
JavaScript
25 lines
744 B
JavaScript
// Remove unused CSS selectors.
|
|
const purgecss = require('@fullhuman/postcss-purgecss')({
|
|
content: [
|
|
// Use stats generated by Hugo from HTML content.
|
|
'./hugo_stats.json',
|
|
// Add used JS scripts.
|
|
process.env.HUGO_PUBLISHDIR + '/js/click-to-copy.min.*.js',
|
|
process.env.HUGO_PUBLISHDIR + '/js/main.min.*.js',
|
|
],
|
|
extractors: [
|
|
{
|
|
extractor: (content) => {
|
|
let els = JSON.parse(content).htmlElements;
|
|
return els.tags.concat(els.classes, els.ids);
|
|
},
|
|
extensions: ["json"],
|
|
},
|
|
],
|
|
});
|
|
|
|
module.exports = {
|
|
plugins: [
|
|
...(process.env.HUGO_ENVIRONMENT === 'production' ? [ purgecss ] : [])
|
|
]
|
|
};
|