function postPlugins() { const plugins = []; plugins.push(discardComments()); plugins.push(minifyGradients()); plugins.push(reduceTransforms()); // see https://github.com/ai/browserslist#queries plugins.push(autoprefixer({browsers: ['last 3 versions'], cascade: false})); plugins.push(convertValues({length: false})); plugins.push(calc()); plugins.push(colormin()); plugins.push(orderedValues()); plugins.push(minifySelectors()); plugins.push(minifyParams()); plugins.push(normalizeCharset({add: false})); // minify-font-values should be run before discard-unused plugins.push(minifyFontValues()); plugins.push(discardUnused()); plugins.push(normalizeUrl); plugins.push(cssnanoCore()); // Optimisations after this are sensitive to previous optimisations in // the pipe, such as whitespace normalising/selector re-ordering plugins.push(mergeIdents()); plugins.push(mergeLonghand()); plugins.push(discardDuplicates()); plugins.push(mergeRules()); plugins.push(discardEmpty()); plugins.push(uniqueSelectors()); return plugins; }
module.exports = function() { 'use strict'; var root = path.resolve('./src/styles'); gulp.src(root + '/index.css') .pipe(plumber()) .pipe(postcss([atImport(), colormin(), autoprefixer()], { root: root, path: root, from: root + '/index.css' })) .pipe(concat('main.css')) .pipe(gutil.env.dist ? minifyCss() : gutil.noop()) .pipe(gulp.dest('./app/styles/')) .pipe(reload({stream: true})); };