summaryrefslogtreecommitdiffstats
path: root/postcss.config.js
diff options
context:
space:
mode:
authorDejavu Moe <[email protected]>2023-05-20 18:27:42 +0800
committerDejavu Moe <[email protected]>2023-05-20 18:27:42 +0800
commit0ef11d6f21ce71d0afeb030dcd53b3f9c8eddf40 (patch)
treeb7199349e484d2cdd38a7fcbe9456cbaef7bfefe /postcss.config.js
parentf08f3f411198f381b4cc6c4ca28b9586ff6aec9f (diff)
downloadhugo-theme-dejavu-0ef11d6f21ce71d0afeb030dcd53b3f9c8eddf40.tar.gz
hugo-theme-dejavu-0ef11d6f21ce71d0afeb030dcd53b3f9c8eddf40.zip
init postcss config
Diffstat (limited to '')
-rw-r--r--postcss.config.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/postcss.config.js b/postcss.config.js
new file mode 100644
index 0000000..eefa272
--- /dev/null
+++ b/postcss.config.js
@@ -0,0 +1,37 @@
+const purgecss = require('@fullhuman/postcss-purgecss')({
+ content: ['./hugo_stats.json'],
+ defaultExtractor: content => {
+ let els = JSON.parse(content).htmlElements;
+ return els.tags.concat(els.classes, els.ids);
+ },
+});
+
+module.exports = {
+ plugins: [
+ require('postcss-import'),
+ require('autoprefixer'),
+ require('postcss-scss')({
+ parser: require('postcss-scss').parse,
+ includePaths: ['node_modules'],
+ }),
+ require('postcss-node-sass')({
+ includePaths: ['node_modules'],
+ }),
+ ...(process.env.HUGO_ENVIRONMENT === 'production' ? [purgecss] : []),
+ require('@fullhuman/postcss-purgecss')({
+ content: ['layouts/**/*.html'],
+ whitelist: [
+ 'highlight',
+ 'language-bash',
+ 'pre',
+ 'code',
+ 'content',
+ 'h3',
+ 'h4',
+ 'ul',
+ 'li',
+ ],
+ }),
+ require('cssnano')({ preset: 'default' }),
+ ],
+};