matrix-spec/postcss.config.js
Johannes Marbach fddb1ba5f9 Use more specific names for the version picker CSS classes and add them to the PurgeCSS safelist
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
2025-12-05 18:22:40 +01:00

29 lines
973 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"],
},
],
// As these classes are only applied by JavaScript, PurgeCSS doesn't see them
// in the source code and removes them unless we explicitly tell it not to.
safelist: ['version-picker-selected', 'version-picker-latest']
});
module.exports = {
plugins: [
...(process.env.HUGO_ENVIRONMENT === 'production' ? [ purgecss ] : [])
]
};