-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
45 lines (37 loc) · 1.31 KB
/
Copy pathgulpfile.js
File metadata and controls
45 lines (37 loc) · 1.31 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
'use strict';
/**
* Used for concatenating, linting, and minifying all JS and CSS files.
* @type {Gulp}
*/
var gulp = require( 'gulp' );
var jshint = require( 'gulp-jshint' );
var sass = require( 'gulp-sass' );
var concat = require( 'gulp-concat' );
var uglify = require( 'gulp-uglify' );
var rename = require( 'gulp-rename' );
var concatCss = require( 'gulp-concat-css' );
var cleanCss = require( 'gulp-clean-css' );
gulp.task( 'default' , ['css' , 'lint' , 'scripts' , 'watch'] );
gulp.task( 'lint', function() {
return gulp.src( 'public/views/assets/js/*.js' )
.pipe( jshint() )
.pipe( jshint.reporter( 'default' ) );
} );
gulp.task( 'css', function() {
return gulp.src( 'public/views/assets/css/*.css' )
.pipe( concatCss( 'all.min.css' ) )
.pipe( cleanCss() )
.pipe( gulp.dest( 'public/views/assets/bundle/css' ) );
} );
gulp.task( 'scripts', function() {
return gulp.src( [ 'public/views/assets/js/vendor/*.js', 'public/views/assets/js/*.js'] )
.pipe( concat( 'all.min.js' ) )
.pipe( gulp.dest( 'public/views/assets/bundle/js' ) )
.pipe( rename( 'all.min.js' ) )
.pipe( uglify() )
.pipe( gulp.dest( 'public/views/assets/bundle/js' ) );
} );
gulp.task( 'watch', function() {
gulp.watch( 'public/views/assets/js/*.js', [ 'lint', 'scripts' ] );
gulp.watch( 'public/views/assets/css/*.css', [ 'css' ] );
} );