1- var browserify = require ( 'browserify ' ) ;
1+ var assign = require ( 'lodash.assign ' ) ;
22var babelify = require ( 'babelify' ) ;
3+ var browserify = require ( 'browserify' ) ;
4+ var buffer = require ( 'vinyl-buffer' ) ;
35var gulp = require ( 'gulp' ) ;
46var gutil = require ( 'gulp-util' ) ;
57var sass = require ( 'gulp-sass' ) ;
68var source = require ( 'vinyl-source-stream' ) ;
9+ var uglify = require ( 'gulp-uglify' ) ;
710var watchify = require ( 'watchify' ) ;
811
912var options = {
1013 browserifyOpts : {
11- entries : [ './src/js/app.js' ] ,
12- debug : true ,
13-
14- cache : { } ,
15- packageCache : { } ,
16- fullPaths : true
14+ entries : './src/js/app.js' ,
15+ debug : true
1716 } ,
1817 jsDest : 'dist/js'
1918} ;
@@ -25,24 +24,29 @@ gulp.task('build:js', function () {
2524 . transform ( babelify )
2625 . bundle ( )
2726 . pipe ( source ( 'app.js' ) )
27+ . pipe ( buffer ( ) )
28+ . pipe ( uglify ( ) )
2829 . pipe ( gulp . dest ( options . jsDest ) ) ;
2930} ) ;
3031
3132gulp . task ( 'watch:js' , function ( ) {
32- var watcher = bundler
33- . plugin ( watchify , { ignoreWatch : [ '**/node_modules/**' ] } )
34- . transform ( babelify ) ;
33+ var watcherOpts = assign ( { } , watchify . args , options . browserifyOpts ) ;
34+ var watcher = watchify ( browserify ( watcherOpts ) ) . transform ( babelify ) ;
3535
3636 function bundle ( ) {
37- return watcher . bundle ( )
37+ return watcher
38+ . bundle ( )
3839 // log errors if they happen
3940 . on ( 'error' , gutil . log . bind ( gutil , 'Browserify Error' ) )
4041 . pipe ( source ( 'app.js' ) )
42+ . pipe ( buffer ( ) )
4143 . pipe ( gulp . dest ( options . jsDest ) ) ;
42- } ;
44+ }
4345
4446 watcher . on ( 'update' , bundle ) ; // on any dep update, runs the bundler
4547 watcher . on ( 'log' , gutil . log ) ; // output build logs to terminal
48+
49+ return bundle ( ) ;
4650} ) ;
4751
4852gulp . task ( 'build:scss' , function ( ) {
0 commit comments