This repository was archived by the owner on Jul 2, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
49 lines (44 loc) · 1.38 KB
/
gulpfile.js
File metadata and controls
49 lines (44 loc) · 1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
var gulp = require( 'gulp' );
var sass = require( 'gulp-sass' );
var autoprefixer = require( 'gulp-autoprefixer' );
var sourcemaps = require( 'gulp-sourcemaps' );
var plumber = require( 'gulp-plumber' );
var gutil = require( 'gulp-util' );
var jshint = require( 'gulp-jshint' );
var through2 = require( 'through2' );
var onError = function (err) {
console.log( 'An error occurred:', gutil.colors.magenta(err.message) );
gutil.beep();
this.emit( 'end' );
};
gulp.task( 'sass', function() {
return gulp.src( './sass/*.scss' )
.pipe( plumber( { errorHandler: onError } ) )
.pipe( sourcemaps.init() )
.pipe( sass( { outputStyle: 'expanded' } ).on( 'error', sass.logError ) )
.pipe( autoprefixer({
overrideBrowserslist: [
'last 2 versions',
'Android >= 6.0'
],
grid: true,
}))
.pipe( sourcemaps.write('./') )
.pipe( through2.obj( function( file, enc, cb ) {
let date = new Date();
file.stat.atime = date;
file.stat.mtime = date;
cb( null, file );
}) )
.pipe( gulp.dest('./') );
});
gulp.task( 'jslint', function() {
return gulp.src( './js/*.js' )
.pipe( jshint() )
.pipe( jshint.reporter( 'default' ) );
});
gulp.task( 'watch', function() {
gulp.watch( './sass/**/*.scss', gulp.series('sass') );
gulp.watch( './js/*.js', gulp.series('jslint') );
});
gulp.task( 'default', gulp.series( 'watch' ) );