63 lines
1.8 KiB
JavaScript
63 lines
1.8 KiB
JavaScript
|
module.exports = function(grunt) {
|
||
|
grunt.initConfig({
|
||
|
pkg: grunt.file.readJSON('package.json'), // the package file to use
|
||
|
|
||
|
uglify: {
|
||
|
files: {
|
||
|
expand: true,
|
||
|
flatten: true,
|
||
|
src: 'src/js/*.js',
|
||
|
dest: 'dist',
|
||
|
ext: '.min.js'
|
||
|
}
|
||
|
},
|
||
|
|
||
|
cssmin: {
|
||
|
minify: {
|
||
|
expand: true,
|
||
|
cwd: 'src/css',
|
||
|
src: ['*.css', '!*.min.css'],
|
||
|
dest: 'dist',
|
||
|
ext: '.min.css'
|
||
|
}
|
||
|
},
|
||
|
|
||
|
qunit: {
|
||
|
all: ['tests/*.html']
|
||
|
},
|
||
|
|
||
|
watch: {
|
||
|
files: ['tests/*.js', 'tests/*.html', 'src/**'],
|
||
|
tasks: ['default']
|
||
|
},
|
||
|
|
||
|
copy: {
|
||
|
main: {
|
||
|
files: [
|
||
|
// copy dist to tests
|
||
|
// { expand: true, cwd: 'dist', src: '*', dest: 'tests/lib/' },
|
||
|
{ expand: true, cwd: 'src/css', src: '*', dest: 'tests/lib/' },
|
||
|
{ expand: true, cwd: 'src/js', src: '*', dest: 'tests/lib/' },
|
||
|
// copy latest libs to tests
|
||
|
{ expand: true, cwd: 'public/bower_components/jquery', src: 'jquery.js', dest: 'tests/lib/' },
|
||
|
{ expand: true, cwd: 'public/bower_components/bootstrap-datepicker/js', src: 'bootstrap-datepicker.js', dest: 'tests/lib/' },
|
||
|
// copy src to example
|
||
|
{ expand: true, cwd: 'src/css', src: '*', dest: 'public/css/' },
|
||
|
{ expand: true, cwd: 'src/js', src: '*', dest: 'public/js/' }
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
// load up your plugins
|
||
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
||
|
grunt.loadNpmTasks('grunt-contrib-cssmin');
|
||
|
grunt.loadNpmTasks('grunt-contrib-qunit');
|
||
|
grunt.loadNpmTasks('grunt-contrib-watch');
|
||
|
grunt.loadNpmTasks('grunt-contrib-copy');
|
||
|
|
||
|
// register one or more task lists (you should ALWAYS have a "default" task list)
|
||
|
grunt.registerTask('default', ['uglify','cssmin', 'copy', 'qunit', 'watch']);
|
||
|
grunt.registerTask('test', 'qunit');
|
||
|
};
|