@@ -17,12 +17,16 @@ import browserSync from 'browser-sync';
17
17
import debowerify from 'debowerify' ;
18
18
import ngAnnotate from 'browserify-ngannotate' ;
19
19
20
+ function createSourcemap ( ) {
21
+ return ! global . isProd || config . browserify . prodSourcemap ;
22
+ }
23
+
20
24
// Based on: http://blog.avisi.nl/2014/04/25/how-to-keep-a-fast-build-with-browserify-and-reactjs/
21
25
function buildScript ( file ) {
22
-
23
- var bundler = browserify ( {
26
+
27
+ let bundler = browserify ( {
24
28
entries : [ config . sourceDir + 'js/' + file ] ,
25
- debug : true ,
29
+ debug : createSourcemap ( ) ,
26
30
cache : { } ,
27
31
packageCache : { } ,
28
32
fullPaths : ! global . isProd
@@ -51,16 +55,16 @@ function buildScript(file) {
51
55
52
56
function rebundle ( ) {
53
57
const stream = bundler . bundle ( ) ;
54
- const createSourcemap = global . isProd && config . browserify . prodSourcemap ;
58
+ const sourceMapLocation = global . isProd ? './' : '' ;
55
59
56
60
return stream . on ( 'error' , handleErrors )
57
61
. pipe ( source ( file ) )
58
- . pipe ( gulpif ( createSourcemap , buffer ( ) ) )
59
- . pipe ( gulpif ( createSourcemap , sourcemaps . init ( ) ) )
62
+ . pipe ( gulpif ( createSourcemap ( ) , buffer ( ) ) )
63
+ . pipe ( gulpif ( createSourcemap ( ) , sourcemaps . init ( { loadMaps : true } ) ) )
60
64
. pipe ( gulpif ( global . isProd , streamify ( uglify ( {
61
65
compress : { drop_console : true }
62
66
} ) ) ) )
63
- . pipe ( gulpif ( createSourcemap , sourcemaps . write ( './' ) ) )
67
+ . pipe ( gulpif ( createSourcemap ( ) , sourcemaps . write ( sourceMapLocation ) ) )
64
68
. pipe ( gulp . dest ( config . scripts . dest ) )
65
69
. pipe ( browserSync . stream ( { once : true } ) ) ;
66
70
}
0 commit comments