postcss.config.js
TLDR
The postcss.config.js
file is a configuration file for PostCSS. It exports a function that accepts a context object and returns a configuration object. The configuration includes various PostCSS plugins and their respective options.
Methods
None.
Classes
None.
const fs = require('fs');
const {homepage, version, author, animateConfig} = JSON.parse(fs.readFileSync('package.json'));
const header = `
@charset "UTF-8";
/*!
* animate.css - ${homepage}
* Version - ${version}
* Licensed under the Hippocratic License 2.1 - http://firstdonoharm.dev
*
* Copyright (c) ${new Date().getFullYear()} ${author.name}
*/
`;
module.exports = (ctx) => {
const prefix = ctx.env === 'compat' ? '' : animateConfig.prefix;
const devMessage = `🎉🎉🎉🎉 \nanimate.css ${ctx.env} build was compiled sucessfully! \n`;
console.log(devMessage);
return {
map: ctx.options.map,
parser: ctx.options.parser,
plugins: {
'postcss-import': {root: ctx.file.dirname},
'postcss-prefixer': {
prefix,
ignore: [/\[class\*=.*\]/],
},
'postcss-preset-env': {
autoprefixer: {
cascade: false,
},
features: {
'custom-properties': true,
},
},
cssnano: ctx.env === 'production' || ctx.env === 'compat' ? {} : false,
'postcss-header': {
header,
},
},
};
};