@@ -23,8 +23,6 @@ module.exports = function(options) {
2323 . pipe ( $ . jshint . reporter ( 'jshint-stylish' ) )
2424< % } if ( props . jsPreprocessor . key !== 'none' ) { % >
2525 . pipe ( $ . sourcemaps . init ( ) )
26- < % } if ( props . jsPreprocessor . key === 'traceur' ) { % >
27- . pipe ( $ . traceur ( ) ) . on ( 'error' , options . errorHandler ( 'Traceur' ) )
2826< % } if ( props . jsPreprocessor . key === 'coffee' ) { % >
2927 . pipe ( $ . coffeelint ( ) )
3028 . pipe ( $ . coffeelint . reporter ( ) )
@@ -39,45 +37,50 @@ module.exports = function(options) {
3937< % } % >
4038< % if ( props . jsPreprocessor . key === 'typescript' ) { % >
4139 . pipe ( $ . toJson ( { filename : options . tmp + '/sortOutput.json' , relative :true } ) )
42- < % } % >
43- < % if ( props . jsPreprocessor . key === 'traceur' ) { % >
44- . pipe ( gulp . dest ( options . tmp + '/traceur' ) )
45- < % } else if ( props . jsPreprocessor . key !== 'none' ) { % >
40+ < % } if ( props . jsPreprocessor . key !== 'none' ) { % >
4641 . pipe ( gulp . dest ( options . tmp + '/serve/' ) )
4742< % } % >
4843 . pipe ( browserSync . reload ( { stream : true } ) )
4944 . pipe ( $ . size ( ) ) ;
5045 } ) ;
5146< % } else { % >
5247 function webpack ( watch , callback ) {
53- return gulp . src ( options . src + '/app/index.js' )
54- . pipe ( $ . webpack ( {
55- watch : watch ,
56- module : {
57- preLoaders : [ { test : / \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'jshint-loader' } ] ,
48+ var webpackOptions = {
49+ watch : watch ,
50+ module : {
51+ preLoaders : [ { test : / \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'jshint-loader' } ] ,
5852< % if ( props. jsPreprocessor . key === 'babel' ) { % >
59- loaders : [ { test : / \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'babel-loader' } ]
53+ loaders : [ { test : / \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'babel-loader' } ]
6054< % } if ( props . jsPreprocessor . key === 'traceur' ) { % >
61- loaders : [ { test : / \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'traceur-loader' } ]
55+ loaders: [ { test : / \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'traceur-loader' } ]
6256< % } % >
63- } ,
64- output : { filename : 'index.js' }
65- } , null , function ( err , stats ) {
66- if ( err ) {
67- options . errorHandler ( 'Webpack' ) ( err ) ;
68- }
69- $ . util . log ( stats . toString ( {
70- colors : $ . util . colors . supportsColor ,
71- chunks : false ,
72- hash : false ,
73- version : false
74- } ) ) ;
75- browserSync . reload ( ) ;
76- if ( watch ) {
77- watch = false ;
78- callback ( ) ;
79- }
80- } ) )
57+ } ,
58+ output : { filename : 'index.js' }
59+ } ;
60+
61+ if ( watch ) {
62+ webpackOptions . devtool = 'inline-source-map' ;
63+ }
64+
65+ var webpackChangeHandler = function ( err , stats ) {
66+ if ( err ) {
67+ options . errorHandler ( 'Webpack' ) ( err ) ;
68+ }
69+ $ . util . log ( stats . toString ( {
70+ colors : $ . util . colors . supportsColor ,
71+ chunks : false ,
72+ hash : false ,
73+ version : false
74+ } ) ) ;
75+ browserSync . reload ( ) ;
76+ if ( watch ) {
77+ watch = false ;
78+ callback ( ) ;
79+ }
80+ } ;
81+
82+ return gulp . src ( options . src + '/app/index.js' )
83+ . pipe ( $ . webpack ( webpackOptions , null , webpackChangeHandler ) )
8184 . pipe ( gulp . dest ( options . tmp + '/serve/app' ) ) ;
8285 }
8386
0 commit comments