You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
2.2 KiB
90 lines
2.2 KiB
3 months ago
|
/*global module:false*/
|
||
|
module.exports = function(grunt) {
|
||
|
mainTasks = ['coffee', 'growl:coffee', 'jasmine', 'growl:jasmine', 'uglify']
|
||
|
|
||
|
// Project configuration.
|
||
|
grunt.initConfig({
|
||
|
pkg: grunt.file.readJSON('package.json'),
|
||
|
uglify: {
|
||
|
dist: {
|
||
|
files: {
|
||
|
'dist/<%= pkg.name %>.min.js': 'dist/<%= pkg.name %>.js'
|
||
|
}
|
||
|
},
|
||
|
options: {
|
||
|
banner : '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
|
||
|
'<%= grunt.template.today("yyyy-mm-dd") %>\n' +
|
||
|
'<%= pkg.homepage ? "* " + pkg.homepage + "\\n" : "" %>' +
|
||
|
'* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
|
||
|
'*/',
|
||
|
report: 'gzip'
|
||
|
}
|
||
|
},
|
||
|
coffee : {
|
||
|
plugin : {
|
||
|
files: [{
|
||
|
expand: true,
|
||
|
cwd: 'src/',
|
||
|
src: '*.coffee',
|
||
|
dest: 'dist/',
|
||
|
ext: '.js'
|
||
|
}]
|
||
|
},
|
||
|
specs : {
|
||
|
files: [{
|
||
|
expand: true,
|
||
|
cwd: 'spec/coffeescripts/',
|
||
|
src: '*.coffee',
|
||
|
dest: 'spec/javascripts/',
|
||
|
ext: '.js'
|
||
|
}]
|
||
|
},
|
||
|
helpers : {
|
||
|
files: [{
|
||
|
expand: true,
|
||
|
cwd: 'spec/coffeescripts/helpers/',
|
||
|
src: '*.coffee',
|
||
|
dest: 'spec/javascripts/helpers/',
|
||
|
ext: '.js'
|
||
|
}]
|
||
|
}
|
||
|
},
|
||
|
jasmine : {
|
||
|
src : ['spec/javascripts/libs/*.js', 'dist/<%= pkg.name %>.js'],
|
||
|
options : {
|
||
|
specs : 'spec/javascripts/**/*.js',
|
||
|
helpers : 'spec/javascripts/helpers/**/*.js'
|
||
|
}
|
||
|
},
|
||
|
watch : {
|
||
|
files: [
|
||
|
'src/*',
|
||
|
'spec/coffeescripts/**/*.coffee'
|
||
|
],
|
||
|
tasks: mainTasks
|
||
|
},
|
||
|
growl : {
|
||
|
coffee : {
|
||
|
title : 'CoffeeScript',
|
||
|
message : 'Compiled successfully'
|
||
|
},
|
||
|
jasmine : {
|
||
|
title : 'Jasmine',
|
||
|
message : 'Tests passed successfully'
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
// Lib tasks.
|
||
|
grunt.loadNpmTasks('grunt-growl');
|
||
|
grunt.loadNpmTasks('grunt-contrib-jasmine');
|
||
|
grunt.loadNpmTasks('grunt-contrib-coffee');
|
||
|
grunt.loadNpmTasks('grunt-contrib-watch');
|
||
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
||
|
|
||
|
grunt.registerTask('default', mainTasks);
|
||
|
|
||
|
// Travis CI task.
|
||
|
grunt.registerTask('travis', ['coffee', 'jasmine']);
|
||
|
};
|