summaryrefslogtreecommitdiffstats
path: root/postcss.config.js
blob: eefa272f60784f6822ba321c12745d5d5dc9f9db (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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' }),
  ],
};