frontend/gulp/common/transform.js
Paulus Schoutsen 10ddb7faac
Minify once, reduce build warnings (#692)
* Minify once, reduce build warnings

* Remove rollup-plugin-uglify

* address comment
2017-11-26 17:20:55 -08:00

32 lines
936 B
JavaScript

const gulpif = require('gulp-if');
const babel = require('gulp-babel');
const uglify = require('./gulp-uglify.js');
const { gulp: cssSlam } = require('css-slam');
const htmlMinifier = require('gulp-html-minifier');
const { HtmlSplitter } = require('polymer-build');
const pump = require('pump');
module.exports.minifyStream = function (stream, es6) {
const sourcesHtmlSplitter = new HtmlSplitter();
return pump([
stream,
sourcesHtmlSplitter.split(),
gulpif(!es6, gulpif(/[^app]\.js$/, babel({
sourceType: 'script',
presets: [
['es2015', { modules: false }]
]
}))),
gulpif(/\.js$/, uglify(es6, { sourceMap: false })),
gulpif(/\.css$/, cssSlam()),
gulpif(/\.html$/, cssSlam()),
gulpif(/\.html$/, htmlMinifier({
collapseWhitespace: true,
removeComments: true
})),
sourcesHtmlSplitter.rejoin(),
], (error) => {
if (error) console.log(error);
});
};