@@ -6,83 +6,97 @@ module.exports = function(grunt) {
66 pkg : grunt . file . readJSON ( 'package.json' ) ,
77 meta : {
88 banner : '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
9- '<%= grunt.template.today("yyyy-mm-dd") %>\n' +
10- '<%= pkg.homepage ? "* " + pkg.homepage + "\n" : "" %>' +
11- '* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
12- ' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */'
9+ '<%= grunt.template.today("yyyy-mm-dd") %>\n' +
10+ '<%= pkg.homepage ? "* " + pkg.homepage : "" %>\n' +
11+ '* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
12+ ' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */\n\n' ,
13+
14+ minibanner : '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
15+ '<%= grunt.template.today("yyyy-mm-dd") %> - ' +
16+ '<%= pkg.homepage ? "* " + pkg.homepage + " - " : "" %>' +
17+ 'Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
18+ ' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */ '
1319 } ,
1420 concat : {
21+ options : {
22+ stripBanners : true ,
23+ banner : '<%= meta.banner %>'
24+ } ,
1525 dist_js : {
16- src : [ '<banner:meta.banner>' , ' src/jquery.coords.js', 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' ] ,
26+ src : [ 'src/jquery.coords.js' , 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' ] ,
1727 dest : 'dist/<%= pkg.name %>.js'
1828 } ,
1929
2030 dist_extras_js : {
21- src : [ '<banner:meta.banner>' , ' src/jquery.coords.js', 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' , 'src/<%= pkg.name %>.extras.js' ] ,
31+ src : [ 'src/jquery.coords.js' , 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' , 'src/<%= pkg.name %>.extras.js' ] ,
2232 dest : 'dist/<%= pkg.name %>.with-extras.js'
2333 } ,
2434
2535 dist_css : {
26- src : [ '<banner:meta.banner>' , ' src/<%= pkg.name %>.css'] ,
36+ src : [ 'src/<%= pkg.name %>.css' ] ,
2737 dest : 'dist/<%= pkg.name %>.css'
2838 } ,
2939
3040 dist_demo_js : {
31- src : [ '<banner:meta.banner>' , ' src/jquery.coords.js', 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' ] ,
41+ src : [ 'src/jquery.coords.js' , 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' ] ,
3242 dest : 'gh-pages/dist/<%= pkg.name %>.js'
3343 } ,
3444
3545 dist_extras_demo_js : {
36- src : [ '<banner:meta.banner>' , ' src/jquery.coords.js', 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js> ' , 'src/<%= pkg.name %>.js' , 'src/<%= pkg.name %>.extras.js' ] ,
46+ src : [ 'src/jquery.coords.js' , 'src/jquery.collision.js' , 'src/utils.js' , 'src/jquery.draggable.js' , 'src/<%= pkg.name %>.js' , 'src/<%= pkg.name %>.extras.js' ] ,
3747 dest : 'gh-pages/dist/<%= pkg.name %>.with-extras.js'
3848 } ,
3949
4050 dist_demo_css : {
41- src : [ '<banner:meta.banner>' , ' src/<%= pkg.name %>.css'] ,
51+ src : [ 'src/<%= pkg.name %>.css' ] ,
4252 dest : 'gh-pages/dist/<%= pkg.name %>.css'
4353 }
4454 } ,
4555 uglify : {
56+ options : {
57+ banner : '<%= meta.minibanner %>'
58+ } ,
4659 dist : {
4760 files : {
48- 'dist/<%= pkg.name %>.min.js' : [ 'dist/ <%= pkg.name %>.js ' ]
61+ 'dist/<%= pkg.name %>.min.js' : [ '<%= concat.dist_js.dest %>' ]
4962 }
5063 } ,
5164
5265 dist_extras : {
5366 files : {
54- 'dist/<%= pkg.name %>.with-extras.min.js' : [ 'dist/ <%= pkg.name %>.with-extras.js ' ]
67+ 'dist/<%= pkg.name %>.with-extras.min.js' : [ '<%= concat.dist_extras_js.dest %>' ]
5568 }
5669 } ,
5770
5871 dist_demo : {
5972 files : {
60- 'gh-pages/dist/<%= pkg.name %>.min.js' : [ 'dist/ <%= pkg.name %>.js' ]
73+ 'gh-pages/dist/<%= pkg.name %>.min.js' : [ '<%= concat.dist_js.dest %>' ] ,
6174 }
6275 } ,
6376
6477 dist_extras_demo : {
6578 files : {
66- 'gh-pages/dist/<%= pkg.name %>.with-extras.min.js' : [ 'dist/ <%= pkg.name %>.with-extras.js ' ]
79+ 'gh-pages/dist/<%= pkg.name %>.with-extras.min.js' : [ '<%= concat.dist_extras_js.dest %>' ]
6780 }
6881 }
6982 } ,
7083 cssmin : {
7184 compress : {
85+ options : {
86+ keepSpecialComments : 0 ,
87+ banner : '<%= meta.minibanner %>'
88+ } ,
7289 files : {
7390 "dist/<%= pkg.name %>.min.css" : [ "dist/<%= pkg.name %>.css" ] ,
7491 "gh-pages/dist/<%= pkg.name %>.min.css" : [ "dist/<%= pkg.name %>.css" ]
7592 }
7693 }
7794 } ,
78- qunit : {
79- files : [ 'test/**/*.html' ]
80- } ,
81- jslint : {
95+ jshint : {
8296 files : [ 'grunt.js' , 'src/**/*.js' , 'test/**/*.js' ]
8397 } ,
8498 watch : {
85- files : [ '<config: lint.files>' , 'src/<%= pkg.name %>.css' ] ,
99+ files : [ '<%= lint.files % >' , 'src/<%= pkg.name %>.css' ] ,
86100 tasks : 'min concat'
87101 } ,
88102 jshint : {
@@ -118,10 +132,15 @@ module.exports = function(grunt) {
118132 }
119133 } ) ;
120134
121- grunt . loadNpmTasks ( 'grunt-contrib' ) ;
122- grunt . loadNpmTasks ( 'grunt-jslint' ) ;
135+ // grunt.loadNpmTasks('grunt-contrib');
136+
137+ grunt . loadNpmTasks ( 'grunt-contrib-jshint' ) ;
138+ grunt . loadNpmTasks ( 'grunt-contrib-concat' ) ;
139+ grunt . loadNpmTasks ( 'grunt-contrib-uglify' ) ;
140+ grunt . loadNpmTasks ( 'grunt-contrib-cssmin' ) ;
141+ grunt . loadNpmTasks ( 'grunt-contrib-yuidoc' ) ;
123142
124143 // Default task.
125- grunt . registerTask ( 'default' , [ 'jslint' , 'qunit ', 'concat' , 'uglify' , 'cssmin' , 'yuidoc' ] ) ;
144+ grunt . registerTask ( 'default' , [ 'jshint ' , 'concat' , 'uglify' , 'cssmin' , 'yuidoc' ] ) ;
126145
127146} ;
0 commit comments