1+ var gulp = require ( 'gulp' ) ;
2+ var sourcemaps = require ( 'gulp-sourcemaps' ) ;
3+ var traceur = require ( 'gulp-traceur' ) ;
4+ var concat = require ( 'gulp-concat' ) ;
5+ var connect = require ( "gulp-connect" ) ;
6+ var jshint = require ( 'gulp-jshint' ) ;
7+
8+ var SOURCE_FILES = [ '!app/**/*_test.js' , 'app/*.js' , 'app/modules/**/*.js' ] ;
9+
10+ // Runs JSHint Report against all JS files in app
11+ gulp . task ( 'lint' , function ( ) {
12+ return gulp . src ( SOURCE_FILES )
13+ . pipe ( jshint ( ) )
14+ . pipe ( jshint . reporter ( 'jshint-stylish' ) )
15+ . pipe ( jshint . reporter ( 'fail' ) ) ;
16+ } ) ;
17+
18+ gulp . task ( 'watch' , function ( ) {
19+
20+ // Lint the JS files when they change
21+ gulp . watch ( SOURCE_FILES , [ 'lint' , 'traceur' ] ) ;
22+ } ) ;
23+
24+ /* Sourcemaps seem to not be working when a base is specified */
25+ gulp . task ( 'traceur' , function ( ) {
26+ return gulp . src ( [ '!app/**/*_test.js' , 'app/*.js' , 'app/modules/**/*.js' ] , { base : './app' } )
27+ //.pipe(sourcemaps.init())
28+ . pipe ( traceur ( {
29+ modules : 'register' ,
30+ moduleName : true
31+ } ) )
32+ . pipe ( concat ( 'bundle.js' ) )
33+ //.pipe(sourcemaps.write())
34+ . pipe ( gulp . dest ( 'app/dist' ) ) ;
35+ } ) ;
36+
37+ gulp . task ( 'connect' , function ( ) {
38+
39+ // Uses gulp-connect plugin to start up a server
40+ connect . server ( {
41+ root : [ 'app' ] ,
42+ port : 9000
43+ } ) ;
44+ } ) ;
45+
46+ gulp . task ( 'default' , [ 'traceur' , 'lint' , 'watch' , 'connect' ] ) ;
0 commit comments