const uglify = require('gulp-uglify')
const vfs = require('vinyl-fs')
-imagemin.noop = (buffer) => Promise.resolve(buffer)
-
module.exports = (src, dest, preview) => () => {
const opts = { base: src, cwd: src }
const sourcemaps = preview || process.env.SOURCEMAPS === 'true'
.src('img/**/*.{gif,ico,jpg,png,svg}', opts)
.pipe(
imagemin([
- imagemin.gifsicle() || imagemin.noop,
- imagemin.jpegtran() || imagemin.noop,
- imagemin.optipng() || imagemin.noop,
+ imagemin.gifsicle(),
+ imagemin.jpegtran(),
+ imagemin.optipng(),
imagemin.svgo({ plugins: [{ removeViewBox: false }] }),
- ])
+ ].reduce((accum, it) => it ? accum.concat(it) : accum, []))
),
vfs.src('helpers/*.js', opts),
vfs.src('layouts/*.hbs', opts),