81 lines
3.0 KiB
JavaScript
81 lines
3.0 KiB
JavaScript
module.exports = function(grunt) {
|
|
|
|
// Project configuration.
|
|
grunt.initConfig({
|
|
pkg: grunt.file.readJSON('package.json'),
|
|
uglify: {
|
|
options: {
|
|
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
|
|
},
|
|
game: {
|
|
files: {
|
|
'dist/js/<%= pkg.name %>.game.min.js': ['src/game/js/*.js']
|
|
}
|
|
},
|
|
generator: {
|
|
files: {
|
|
'dist/js/<%= pkg.name %>.generator.min.js': ['src/generator/js/*.js']
|
|
}
|
|
}
|
|
},
|
|
cssmin: {
|
|
target: {
|
|
files: {
|
|
'dist/css/<%= pkg.name %>.generator.css': 'src/generator/css/*.css',
|
|
'dist/css/<%= pkg.name %>.game.css': 'src/game/css/*.css'
|
|
}
|
|
}
|
|
},
|
|
jshint: {
|
|
all: ['src/game/js/*.js', 'src/generator/js/*.js']
|
|
},
|
|
copy: {
|
|
main: {
|
|
files: [
|
|
{expand: true, flatten: true, src: ['src/game/*.html', 'src/generator/*.html'], dest: 'dist/', filter: 'isFile'}
|
|
],
|
|
options: {
|
|
process: function (content, srcpath) {
|
|
return content.replace(/(game.css|generator.css)/g, "motsmeles.$1");
|
|
//return content.replace(/(\.\.\/\.\.\/vendor\/fabric\.1\.4\.0\.min\.js)/g,"js/fabric.1.4.0.min.js");
|
|
}
|
|
}
|
|
},
|
|
dev: {
|
|
files: [
|
|
{expand: true, flatten: true, src: ['src/game/*.html', 'src/generator/*.html'], dest: 'dist/', filter: 'isFile'},
|
|
{expand: true, cwd: 'src/game/css/', src: '*.css', dest: 'dist/css/', filter: 'isFile'},
|
|
{expand: true, cwd: 'src/generator/css/', src: '*.css', dest: 'dist/css/', filter: 'isFile'},
|
|
]
|
|
},
|
|
vendor: {
|
|
files: [{expand: true, cwd: 'vendor/', src: '*.min.js', dest: 'dist/js/', filter: 'isFile'}]
|
|
}
|
|
},
|
|
concat: {
|
|
game: {
|
|
src: ['src/game/js/*.js'],
|
|
dest: 'dist/js/<%= pkg.name %>.game.min.js'
|
|
},
|
|
generator: {
|
|
src: ['src/generator/js/*.js'],
|
|
dest: 'dist/js/<%= pkg.name %>.generator.min.js'
|
|
}
|
|
},
|
|
clean: {
|
|
dist: ['dist'],
|
|
force: true
|
|
}
|
|
});
|
|
|
|
grunt.loadNpmTasks('grunt-contrib-clean');
|
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
|
grunt.loadNpmTasks('grunt-contrib-jshint');
|
|
grunt.loadNpmTasks('grunt-contrib-cssmin');
|
|
grunt.loadNpmTasks('grunt-contrib-copy');
|
|
grunt.loadNpmTasks('grunt-contrib-concat');
|
|
|
|
grunt.registerTask('default', ['clean:dist', 'jshint', 'uglify', 'cssmin', 'copy:main', 'copy:vendor']);
|
|
grunt.registerTask('dev', ['clean:dist', 'jshint', 'concat', 'copy:dev', 'copy:vendor']);
|
|
|
|
}; |