UNPKG

@pegakit/pegakit

Version:

The living styleguide, pattern library, UI ToolKit, and front-end build tools that power Pega's digital web properties.

53 lines (42 loc) 1.5 kB
// var imagemin = require('gulp-imagemin'); // var newer = require('gulp-newer'); // var filter = require('gulp-filter'); // var rename = require('gulp-rename'); var merge = require('merge2'); var resize = require('../libs/resize-images') var options = [ { width: 50, upscale: false }, { width: 100, upscale: false }, { width: 200, upscale: false }, { width: 320, upscale: false }, { width: 480, upscale: false }, { width: 640, upscale: false }, { width: 800, upscale: false }, { width: 1024, upscale: false }, { width: 1366, upscale: false }, { width: 1536, upscale: false }, { width: 1920, upscale: false }, { width: 2560, upscale: false } ] module.exports = function (gulp, config, $) { gulp.task('images', 'CMS-less responsive images. Minifies and intelligently creates resized versions of image assets.', function(done){ var streams = options.map(function(el) { return gulp.src(['./source/images/**/*', '!./source/images/**/*.svg']) .pipe($.rename(function(file) { if(file.extname) { file.basename += '-' + el.width } })) .pipe($.newer('./public/images')) .pipe(resize(el)) .pipe($.imagemin()) .pipe(gulp.dest('public/images')); }); streams.push(gulp.src('./source/images/**/*') .pipe($.newer('./public/images')) .pipe($.imagemin()) .pipe(gulp.dest('./public/images'))); return merge(streams); }); }; // });