sonarr-repo-only/Gruntfile.js

122 lines
3.1 KiB
JavaScript
Raw Normal View History

2013-03-22 23:39:08 +00:00
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
files: {
expand: true, // Enable dynamic expansion.
cwd: 'NzbDrone.Backbone/', // Src matches are relative to this path.
src: ['**/*.js'], // Actual pattern(s) to match.
dest: 'build/', // Destination path prefix.
2013-03-24 00:14:55 +00:00
ext: '.min.js'
}
},
less:{
bootstrap:{
2013-03-29 01:49:14 +00:00
src: ["NzbDrone.Backbone/Content/bootstrap/bootstrap.less"],
dest: "_output/UI/Content/bootstrap.css"
2013-03-22 23:39:08 +00:00
}
},
2013-03-22 23:39:08 +00:00
handlebars: {
options: {
namespace: "NzbDrone.Templates",
wrapped: false,
processName: function(fileName){
return fileName
.replace('NzbDrone.Backbone/','')
.replace('.html','');
}
2013-03-22 23:39:08 +00:00
},
files: {
src: ['NzbDrone.Backbone/**/*emplate.html'],
2013-03-29 01:49:14 +00:00
dest: '_output/UI/templates.js'
},
},
2013-03-29 01:49:14 +00:00
copy:{
index:{
src: 'NzbDrone.Backbone/index.html',
dest: '_output/UI/index.html'
},
scripts:{
expand:true,
cwd: 'NzbDrone.Backbone/',
src: '**/*.js',
dest: '_output/UI/'
},
styles:{
expand:true,
cwd: 'NzbDrone.Backbone/',
src: '**/*.css',
dest: '_output/UI/'
},
images:{
expand:true,
cwd: 'NzbDrone.Backbone/',
src: '**/*.png',
dest: '_output/UI/'
},
templates:{
expand:true,
cwd: 'NzbDrone.Backbone/',
src: '**/*emplate.html',
dest: '_output/UI/'
},
fonts:{
expand:true,
src: 'NzbDrone.Backbone/Content/Fonts/*.*',
dest: '_output/UI/Content/Fonts/',
flatten: true
}
},
watch:{
bootstrap:{
2013-03-29 01:49:14 +00:00
files: 'NzbDrone.Backbone/Content/bootstrap/*.less',
tasks: ['less:bootstrap']
},
handlebars:{
files: '<%= handlebars.files.src %>',
tasks: ['handlebars']
2013-03-29 01:49:14 +00:00
},
copyIndex:{
files: '<%= copy.index.src %>',
tasks: ['copy:index']
},
copyScripts:{
files: 'NzbDrone.Backbone/**/*.js',
tasks: ['copy:scripts']
},
copyStyles:{
files: 'NzbDrone.Backbone/**/*.js',
tasks: ['copy:styles']
},
copyImages:{
files: 'NzbDrone.Backbone/**/*.png',
tasks: ['copy:images']
},
copyTemplates:{
files: '<%= handlebars.files.src %>',
tasks: ['copy:templates']
},
copyFonts:{
files: '<%= copy.fonts.src %>',
tasks: ['copy:fonts']
2013-03-22 23:39:08 +00:00
}
}
});
2013-03-22 23:39:08 +00:00
// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-handlebars');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');
2013-03-29 01:49:14 +00:00
grunt.loadNpmTasks('grunt-contrib-copy');
2013-03-22 23:39:08 +00:00
// Default task(s).
2013-03-29 01:49:14 +00:00
grunt.registerTask('default', ['copy','less:bootstrap','handlebars', 'watch']);
2013-03-22 23:39:08 +00:00
};