You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

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');
};