TIF_E41200319/Website/public/library/izitoast/gulpfile.js

57 lines
1.6 KiB
JavaScript

var gulp = require( 'gulp' );
var concat = require( 'gulp-concat' );
var stylus = require('gulp-stylus');
var size = require( 'gulp-size' );
var jshint = require( 'gulp-jshint' );
var notify = require( 'gulp-notify' );
var uglify = require( 'gulp-uglify' );
var csso = require( 'gulp-csso' );
var catchError = function(err) {
console.log(err.toString())
this.emit('end')
}
/**
* Styl task
**/
gulp.task('styl', function () {
return gulp.src('./src/css/style.styl')
.pipe(stylus())
.on('error', catchError)
.pipe( concat( 'iziToast.css' ) )
.pipe( gulp.dest( './dist/css' ) )
.pipe( concat( 'iziToast.min.css' ) )
.pipe( csso({discardComments: false}) )
.pipe( gulp.dest( './dist/css' ) )
.pipe( notify( 'Stylus build done successfully!' ) )
.pipe( size({ showFiles: true }) );
});
/**
* Scripts task
**/
gulp.task( 'scripts', function() {
return gulp.src( './src/js/iziToast.js' )
.pipe( jshint() )
.pipe( jshint.reporter('default') )
.pipe( concat( 'iziToast.min.js' ) )
.pipe( uglify( { mangle: true } ) )
.pipe( gulp.dest( './dist/js' ) )
.pipe( notify( 'Scripts build done successfully!' ) )
.pipe( size({ showFiles: true }) );
});
/**
* Watch task
**/
gulp.task('watch', ['styl','scripts'], function() {
gulp.watch('./src/css/**/*.styl', [ 'styl' ]) // watch for changes and run the css task
gulp.watch('./src/js/**/*.js', [ 'scripts' ]) // watch for changes and run the js task
})
/**
* Default task
**/
gulp.task( 'default', [ 'styl', 'scripts' ] );