1+ /*global module: true, require: true*/
2+ module . exports = function ( grunt ) {
3+
4+ grunt . initConfig ( {
5+ pkg : grunt . file . readJSON ( 'package.json' ) ,
6+ concat : {
7+ dist : {
8+ files : {
9+ 'dist/jquery.validate.js' : [ 'jquery.validate.js' ] ,
10+ 'dist/additional-methods.js' : [ 'additional-methods.js' ]
11+ }
12+ }
13+ } ,
14+ uglify : {
15+ options : {
16+ preserveComments : false ,
17+ banner : '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
18+ '<%= grunt.template.today("m/d/yyyy") %>\\n' +
19+ '<%= pkg.homepage ? "* " + pkg.homepage + "\\n" : "" %>' +
20+ '* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
21+ ' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */'
22+ } ,
23+ all : {
24+ files : {
25+ 'dist/jquery.validate.min.js' : [ 'dist/jquery.validate.js' ] ,
26+ 'dist/additional-methods.min.js' : [ 'dist/additional-methods.js' ]
27+ }
28+ }
29+ } ,
30+ zip : {
31+ dist : {
32+ src : [
33+ 'dist/additional-methods.js' ,
34+ 'dist/additional-methods.min.js' ,
35+ 'dist/jquery.validate.js' ,
36+ 'dist/jquery.validate.min.js' ,
37+ 'README.md' ,
38+ 'changelog.txt' ,
39+ 'grunt.js' ,
40+ 'package.json' ,
41+ 'demo/**/*.*' ,
42+ 'lib/**/*.*' ,
43+ 'localization/**/*.*' ,
44+ 'test/**/*.*'
45+ ] ,
46+ dest : 'dist/<%= pkg.name %>-<%= pkg.version %>.zip'
47+ } ,
48+ options : {
49+ zlib : {
50+ level : 1
51+ }
52+ }
53+ } ,
54+ qunit : {
55+ files : [ 'test/index.html' ]
56+ } ,
57+ jshint : {
58+ options : {
59+ curly : true ,
60+ eqeqeq : true ,
61+ immed : true ,
62+ latedef : true ,
63+ newcap : true ,
64+ noarg : true ,
65+ sub : true ,
66+ undef : true ,
67+ eqnull : true ,
68+ browser : true ,
69+ globals : {
70+ jQuery : true ,
71+ $ : true ,
72+ console : true
73+ }
74+ } ,
75+ files : [
76+ 'jquery.validate.js' ,
77+ 'additional-methods.js' ,
78+ 'localization/*.js'
79+ ] ,
80+ test : {
81+ options : {
82+ globals : {
83+ jQuery : true ,
84+ $ : true ,
85+ QUnit : true ,
86+ module : true ,
87+ test : true ,
88+ start : true ,
89+ stop : true ,
90+ expect : true ,
91+ ok : true ,
92+ equal : true ,
93+ deepEqual : true ,
94+ strictEqual : true
95+ }
96+ } ,
97+ files : {
98+ src : [
99+ 'test/test.js' ,
100+ 'test/rules.js' ,
101+ 'test/messages.js' ,
102+ 'test/methods.js'
103+ ]
104+ }
105+ } ,
106+ grunt : {
107+ files : {
108+ src : [
109+ 'Gruntfile.js'
110+ ]
111+ }
112+ }
113+ }
114+ } ) ;
115+
116+ grunt . registerTask ( 'default' , [ 'jshint' , 'qunit' ] ) ;
117+ grunt . registerTask ( 'release' , [ 'default' , 'concat' , 'uglify' , 'zip' ] ) ;
118+ grunt . loadNpmTasks ( 'grunt-contrib-jshint' ) ;
119+ grunt . loadNpmTasks ( 'grunt-contrib-qunit' ) ;
120+ grunt . loadNpmTasks ( 'grunt-contrib-uglify' ) ;
121+ grunt . loadNpmTasks ( 'grunt-contrib-concat' ) ;
122+ grunt . loadNpmTasks ( 'grunt-zipstream' ) ;
123+ } ;
0 commit comments