gulp.task('build-html', ['compass-dist', 'temp-scripts'], function () { var jsFilter = filter('**/*.js'); var cssFilter = filter('**/*.css'); return gulp.src('src/{./index.html,templates/**/*.html}') .pipe(useref.assets({searchPath: '{.tmp,src}'})) .pipe(jsFilter) .pipe(uglify()) .pipe(jsFilter.restore()) .pipe(cssFilter) .pipe(minifyCss({ cache: true, keepSpecialComments: 0 // 0: remove all })) .pipe(cssFilter.restore()) .pipe(rev()) // for rev hash .pipe(useref.restore()) .pipe(useref()) .pipe(revReplace()) // for rev hash .pipe(useref.restore()) .pipe(gulp.dest(dirs.build)) .pipe(size()); });
gulp.task('useref', function() { return gulp.src('app/*.html') .pipe(useref.assets()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('./dist')); });
gulp.task('minify', function() { var jsFilter = filter('.tmp/*.js'); var cssFilter = filter('.tmp/*.css'); return gulp.src('PROD.jpt') // begin useref .pipe(useref.assets()) // uglify js .pipe(jsFilter) // .pipe(uglify()) .pipe(jsFilter.restore()) // minify css .pipe(cssFilter) .pipe(csso(true)) .pipe(cssFilter.restore()) // complete useref .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('.')) // smoosh html .pipe(smoosher({ cssTags: { begin: '<p:style>', end: '</p:style>' } })) .pipe(gulp.dest('.')); });
gulp.task('distribute', function(){ return gulp.src('*.html') .pipe(useref.assets()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('distribute')); })
gulp.task('html', function() { return gulp.src('./app/**/*.html') .pipe(useref.assets()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('dist')) .pipe(connect.reload()); });
gulp.task('build-workers', function () { gulp.src('app/js/workers/**/*.js') .pipe(useref.assets()) .pipe(ngmin()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('build/js/workers')); });
gulp.task('default', function() { return gulp.src('app/*.html') .pipe(useref.assets()) .pipe(gulpif('*.js', uglify())) .pipe(gulpif('*.css', minifyCss())) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('dist')); });
gulp.task('buildblocks', function () { return gulp.src('./src/*.html') .pipe(useref.assets()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulpif('*.js', uglify())) .pipe(gulpif('*.css', minifyCSS())) .pipe(gulpif('*.html', minifyHTML())) .pipe(gulp.dest('dist')); });
gulp.task('build', ['build-workers', 'build-css', 'build-images', 'build-contents'], function () { var jsFilter = filter('**/*.js'); return gulp.src(['app/**/*.html', '!app/bower_components{,/**}']) .pipe(useref.assets()) .pipe(jsFilter) .pipe(ngmin()) .pipe(uglify()) .pipe(jsFilter.restore()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('build')); });
gulp.task('html', ['lint', 'styles'], function () { var htmlPath = config.html(), minifycss = require('gulp-minify-css'), useref = require('gulp-useref'), gulpif = require('gulp-if'), uglify = require('gulp-uglify'); return gulp.src(htmlPath) .pipe(useref.assets()) .pipe(gulpif('*.js', uglify())) .pipe(gulpif('*.css', minifycss())) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest(config.dist)); });
gulp.task('build', ['clean'], function () { var nonVendor = 'scripts/**/*.js'; return gulp.src('src/index.html') .pipe(useref.assets()) .pipe(gif(nonVendor, ngmin())) .pipe(gif('*.js', uglify({ mangle: false, preserveComments: saveLicense }))) .pipe(gif('*.css', autoprefixer('last 2 versions'))) .pipe(gif('*.css', minifyCss())) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('dist')) .pipe(lr()); });
gulp.task('html', ['styles', 'scripts', 'icons', 'views'], function () { var jsFilter = filter('**/*.js'); var cssFilter = filter('**/*.css'); return gulp.src('src/*.html') .pipe(useref.assets()) .pipe(jsFilter) .pipe(uglify()) .pipe(jsFilter.restore()) .pipe(cssFilter) .pipe(csso()) .pipe(cssFilter.restore()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('dist')) .pipe(size()); });
gulp.task('html', ['styles', 'browserify'], function() { var jsFilter = filter('**/*.js'); var cssFilter = filter('**/*.css'); return gulp.src('app/*.html') .pipe(useref.assets({ searchPath: '{.tmp,app}' })) .pipe(jsFilter) .pipe(uglify()) .pipe(jsFilter.restore()) .pipe(cssFilter) .pipe(csso()) .pipe(cssFilter.restore()) .pipe(useref.restore()) .pipe(useref()) .pipe(gulp.dest('dist')) .pipe(size()); });
gulp.task('html', ['html:clean'], function(){ var jsFilter = filter('**/*.js') , cssFilter = filter('**/*.css') , htmlFilter = filter('**/*.html'); return gulp.src(Config.paths.app.root + '/**/*.html') .pipe(useref.assets()) .pipe(jsFilter) .pipe(uglify()) .pipe(jsFilter.restore()) .pipe(cssFilter) .pipe(minifyCss()) .pipe(cssFilter.restore()) .pipe(useref.restore()) .pipe(useref()) .pipe(htmlFilter) .pipe(minifyHtml()) .pipe(htmlFilter.restore()) .pipe(gulp.dest(Config.paths.dist.root)); })
gulp.task('use-ref', ['pdfs','templates', 'styles', 'scripts'], function () { // quick error handler for gulp-plumber var onError = function (err) { console.error(err); throw err; }; // grab all the html in .tmp return gulp.src(config.assetBuildDir) // added gulp-plumber here since you'll often need // more info on why these stream failed .pipe(plumber({ errorHandler: onError })) // useref all the html, and look in app and .tmp // for files references in the html .pipe(useref.assets({ searchPath: config.userefSearchPath })) // uglify if it's js, optimize if it's css .pipe(gulpIf('**/*.js', uglify())) .pipe(gulpIf('**/*.css', csso())) // useref requires a call to restore() and useref() // when you're done .pipe(useref.restore()) .pipe(useref()) // throw it all into dist .pipe(gulp.dest(config.distDir)) .pipe(size()); });