1
- 'use strict' ;
2
-
3
1
// All used modules.
4
- var babel = require ( 'gulp-babel' ) ;
5
2
var gulp = require ( 'gulp' ) ;
3
+ var babel = require ( 'gulp-babel' ) ;
6
4
var runSeq = require ( 'run-sequence' ) ;
7
5
var plumber = require ( 'gulp-plumber' ) ;
8
6
var concat = require ( 'gulp-concat' ) ;
@@ -17,6 +15,7 @@ var eslint = require('gulp-eslint');
17
15
var mocha = require ( 'gulp-mocha' ) ;
18
16
var karma = require ( 'karma' ) . server ;
19
17
var istanbul = require ( 'gulp-istanbul' ) ;
18
+ var notify = require ( 'gulp-notify' ) ;
20
19
21
20
// Development tasks
22
21
// --------------------------------------------------------------
@@ -33,6 +32,9 @@ gulp.task('reloadCSS', function () {
33
32
gulp . task ( 'lintJS' , function ( ) {
34
33
35
34
return gulp . src ( [ './browser/js/**/*.js' , './server/**/*.js' ] )
35
+ . pipe ( plumber ( {
36
+ errorHandler : notify . onError ( 'Linting FAILED! Check your gulp process.' )
37
+ } ) )
36
38
. pipe ( eslint ( ) )
37
39
. pipe ( eslint . format ( ) )
38
40
. pipe ( eslint . failOnError ( ) ) ;
@@ -81,10 +83,15 @@ gulp.task('testBrowserJS', function (done) {
81
83
} ) ;
82
84
83
85
gulp . task ( 'buildCSS' , function ( ) {
86
+
87
+ var sassCompilation = sass ( ) ;
88
+ sassCompilation . on ( 'error' , console . error . bind ( console ) ) ;
89
+
84
90
return gulp . src ( './browser/scss/main.scss' )
85
- . pipe ( sass ( {
86
- errLogToConsole : true
91
+ . pipe ( plumber ( {
92
+ errorHandler : notify . onError ( 'SASS processing failed! Check your gulp process.' )
87
93
} ) )
94
+ . pipe ( sassCompilation )
88
95
. pipe ( rename ( 'style.css' ) )
89
96
. pipe ( gulp . dest ( './public' ) ) ;
90
97
} ) ;
@@ -110,8 +117,6 @@ gulp.task('seedDB', function () {
110
117
111
118
} ) ;
112
119
113
- // --------------------------------------------------------------
114
-
115
120
// Production tasks
116
121
// --------------------------------------------------------------
117
122
@@ -134,8 +139,6 @@ gulp.task('buildJSProduction', function () {
134
139
135
140
gulp . task ( 'buildProduction' , [ 'buildCSSProduction' , 'buildJSProduction' ] ) ;
136
141
137
- // --------------------------------------------------------------
138
-
139
142
// Composed tasks
140
143
// --------------------------------------------------------------
141
144
@@ -149,13 +152,14 @@ gulp.task('build', function () {
149
152
150
153
gulp . task ( 'default' , function ( ) {
151
154
152
- livereload . listen ( ) ;
153
155
gulp . start ( 'build' ) ;
154
156
157
+ // Run when anything inside of browser/js changes.
155
158
gulp . watch ( 'browser/js/**' , function ( ) {
156
159
runSeq ( 'buildJS' , 'reload' ) ;
157
160
} ) ;
158
161
162
+ // Run when anything inside of browser/scss changes.
159
163
gulp . watch ( 'browser/scss/**' , function ( ) {
160
164
runSeq ( 'buildCSS' , 'reloadCSS' ) ;
161
165
} ) ;
@@ -171,4 +175,6 @@ gulp.task('default', function () {
171
175
// Run browser testing when a browser test file changes.
172
176
gulp . watch ( 'tests/browser/**/*' , [ 'testBrowserJS' ] ) ;
173
177
178
+ livereload . listen ( ) ;
179
+
174
180
} ) ;
0 commit comments