4.0.4 • Published 6 years ago

gulp-bless-improved-cachebusting v4.0.4

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

gulp-bless

NPM version Build Status Windows Build Status Dependency Status


Gulp plugin which splits CSS files suitably for Internet Explorer < 10. In this version, cachebusting is using a sha1 hash so no unnecessary busting is happening.

This is the a Gulp wrapper around bless.js (see blesscss.com).

Installation

npm install gulp-bless

Usage

var gulp = require('gulp');
var bless = require('gulp-bless');

gulp.task('css', function() {
    gulp.src('style.css')
        .pipe(bless())
        .pipe(gulp.dest('./splitCSS'));
});

gulp.task('default', ['watch']);

// Rerun the task when a file changes
gulp.task('watch', function () {
  gulp.watch('./css/*.css', ['css']);
});

bless(options).

  • imports - A boolean (which defaults to true). Determines whether or not the first chunk / "blessed" file @imports the others.
  • cacheBuster - A boolean (which defaults to true). If imports is true, this will add a random query parameter value to prevent against aggressive caching.
  • log - A boolean (which defaults to false). Logs a small bit of information about the process.
  • suffix - Either a string or a function (which defaults to "-blessed").

    • If it is a string then it will be appended to the original file name before the index. E.g.

        	//Assume you have long.css that is to be splitted into 3 parts, following code will 
        	//produce 3 files: long.css, long-part1.css, long-part2.css    
        	gulp.src('long.css')
        	    .pipe(bless{
        	 		suffix: '-part'
        	    })
        	    .pipe(gulp.dest('./'));
    • If it is a function then whatever returned by the function is appended to the original file name. The function takes in a 1-based index E.g.

      	//Assume you have long.css that is to be splitted into 3 parts, following code will 
        	//produce 3 files: long.css, long-functionpart1.css, long-functionpart2.css
        	gulp.src('long.css')
        	    .pipe(bless{
        	 		suffix: function(index) {
        	 			return "-functionpart" + index;
        	 		}
        	    })
        	    .pipe(gulp.dest('./'));

Example:

gulp.src('long.css')
        .pipe(bless({
            imports: false
        }))
        .pipe(gulp.dest('./'))

About minification

You should minify your CSS after it goes through gulp-bless. See BlessCSS/bless#90 as to why.

Does this support sourcemaps?

Yes. This can be used with gulp-sourcemaps.

Team