@@ -13,7 +13,15 @@ module.exports = function (grunt) {
1313 } ) ;
1414 require ( 'time-grunt' ) ( grunt ) ;
1515
16+ var webpack = require ( 'webpack' ) ;
1617 var pkg = grunt . file . readJSON ( 'package.json' ) ;
18+ var banner = 'js-data-http\n' +
19+ '@version ' + pkg . version + ' - Homepage <http://www.js-data.io/docs/dshttpadapter>\n' +
20+ '@author Jason Dobry <jason.dobry@gmail.com>\n' +
21+ '@copyright (c) 2014-2015 Jason Dobry \n' +
22+ '@license MIT <https://github.com/js-data/js-data-http/blob/master/LICENSE>\n' +
23+ '\n' +
24+ '@overview Http adapter for js-data.' ;
1725
1826 // Project configuration.
1927 grunt . initConfig ( {
@@ -22,10 +30,6 @@ module.exports = function (grunt) {
2230 coverage : [ 'coverage/' ] ,
2331 dist : [ 'dist/' ]
2432 } ,
25- jshint : {
26- all : [ 'Gruntfile.js' , 'src/**/*.js' , 'test/*.js' ] ,
27- jshintrc : '.jshintrc'
28- } ,
2933 watch : {
3034 dist : {
3135 files : [ 'src/**/*.js' ] ,
@@ -38,10 +42,10 @@ module.exports = function (grunt) {
3842 report : 'min' ,
3943 sourceMap : true ,
4044 sourceMapName : 'dist/js-data-http.min.map' ,
41- banner : '/**\n' +
42- '* @author Jason Dobry <jason.dobry@gmail.com>\n' +
43- '* @file js-data-http.min.js\n' +
45+ banner : '/*!\n' +
46+ '* js-data-http\n' +
4447 '* @version <%= pkg.version %> - Homepage <http://www.js-data.io/docs/dshttpadapter>\n' +
48+ '* @author Jason Dobry <jason.dobry@gmail.com>\n' +
4549 '* @copyright (c) 2014-2015 Jason Dobry\n' +
4650 '* @license MIT <https://github.com/js-data/js-data-http/blob/master/LICENSE>\n' +
4751 '*\n' +
@@ -74,7 +78,22 @@ module.exports = function (grunt) {
7478 commonjs2 : 'js-data-schema' ,
7579 root : 'Schemator'
7680 }
77- }
81+ } ,
82+ module : {
83+ loaders : [
84+ { test : / ( s r c ) ( .+ ) \. j s $ / , exclude : / n o d e _ m o d u l e s / , loader : 'babel-loader?blacklist=useStrict' }
85+ ] ,
86+ preLoaders : [
87+ {
88+ test : / ( s r c ) ( .+ ) \. j s $ | ( t e s t ) ( .+ ) \. j s $ / , // include .js files
89+ exclude : / n o d e _ m o d u l e s / , // exclude any and all files in the node_modules folder
90+ loader : "jshint-loader?failOnHint=true"
91+ }
92+ ]
93+ } ,
94+ plugins : [
95+ new webpack . BannerPlugin ( banner )
96+ ]
7897 }
7998 } ,
8099 karma : {
@@ -118,30 +137,10 @@ module.exports = function (grunt) {
118137 grunt . file . write ( filePath , file ) ;
119138 } ) ;
120139
121- grunt . registerTask ( 'banner' , function ( ) {
122- var file = grunt . file . read ( 'dist/js-data-http.js' ) ;
123-
124- var banner = '/**\n' +
125- '* @author Jason Dobry <jason.dobry@gmail.com>\n' +
126- '* @file js-data-http.js\n' +
127- '* @version ' + pkg . version + ' - Homepage <http://www.js-data.io/docs/dshttpadapter>\n' +
128- '* @copyright (c) 2014-2015 Jason Dobry \n' +
129- '* @license MIT <https://github.com/js-data/js-data-http/blob/master/LICENSE>\n' +
130- '*\n' +
131- '* @overview Http adapter for js-data.\n' +
132- '*/\n' ;
133-
134- file = banner + file ;
135-
136- grunt . file . write ( 'dist/js-data-http.js' , file ) ;
137- } ) ;
138-
139140 grunt . registerTask ( 'test' , [ 'build' , 'karma:ci' , 'karma:min' ] ) ;
140141 grunt . registerTask ( 'build' , [
141142 'clean' ,
142- 'jshint' ,
143143 'webpack' ,
144- 'banner' ,
145144 'uglify:main'
146145 ] ) ;
147146 grunt . registerTask ( 'go' , [ 'build' , 'watch:dist' ] ) ;
0 commit comments