@@ -13,7 +13,15 @@ module.exports = function (grunt) {
13
13
} ) ;
14
14
require ( 'time-grunt' ) ( grunt ) ;
15
15
16
+ var webpack = require ( 'webpack' ) ;
16
17
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 <[email protected] >\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.' ;
17
25
18
26
// Project configuration.
19
27
grunt . initConfig ( {
@@ -22,10 +30,6 @@ module.exports = function (grunt) {
22
30
coverage : [ 'coverage/' ] ,
23
31
dist : [ 'dist/' ]
24
32
} ,
25
- jshint : {
26
- all : [ 'Gruntfile.js' , 'src/**/*.js' , 'test/*.js' ] ,
27
- jshintrc : '.jshintrc'
28
- } ,
29
33
watch : {
30
34
dist : {
31
35
files : [ 'src/**/*.js' ] ,
@@ -38,10 +42,10 @@ module.exports = function (grunt) {
38
42
report : 'min' ,
39
43
sourceMap : true ,
40
44
sourceMapName : 'dist/js-data-http.min.map' ,
41
- banner : '/**\n' +
42
- '* @author Jason Dobry <[email protected] >\n' +
43
- '* @file js-data-http.min.js\n' +
45
+ banner : '/*!\n' +
46
+ '* js-data-http\n' +
44
47
'* @version <%= pkg.version %> - Homepage <http://www.js-data.io/docs/dshttpadapter>\n' +
48
+ '* @author Jason Dobry <[email protected] >\n' +
45
49
'* @copyright (c) 2014-2015 Jason Dobry\n' +
46
50
'* @license MIT <https://github.com/js-data/js-data-http/blob/master/LICENSE>\n' +
47
51
'*\n' +
@@ -74,7 +78,22 @@ module.exports = function (grunt) {
74
78
commonjs2 : 'js-data-schema' ,
75
79
root : 'Schemator'
76
80
}
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
+ ]
78
97
}
79
98
} ,
80
99
karma : {
@@ -118,30 +137,10 @@ module.exports = function (grunt) {
118
137
grunt . file . write ( filePath , file ) ;
119
138
} ) ;
120
139
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 <[email protected] >\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
-
139
140
grunt . registerTask ( 'test' , [ 'build' , 'karma:ci' , 'karma:min' ] ) ;
140
141
grunt . registerTask ( 'build' , [
141
142
'clean' ,
142
- 'jshint' ,
143
143
'webpack' ,
144
- 'banner' ,
145
144
'uglify:main'
146
145
] ) ;
147
146
grunt . registerTask ( 'go' , [ 'build' , 'watch:dist' ] ) ;
0 commit comments