2014-02-02 19:20:52 +00:00
|
|
|
/* jshint node:true */
|
|
|
|
module.exports = function( grunt ){
|
|
|
|
'use strict';
|
2014-01-30 16:11:02 +00:00
|
|
|
|
2014-02-02 19:22:05 +00:00
|
|
|
grunt.initConfig({
|
2014-02-02 19:24:02 +00:00
|
|
|
// setting folder templates
|
|
|
|
dirs: {
|
|
|
|
css: 'assets/css',
|
|
|
|
fonts: 'assets/fonts',
|
|
|
|
images: 'assets/images',
|
|
|
|
js: 'assets/js'
|
|
|
|
},
|
|
|
|
|
2014-02-02 19:49:30 +00:00
|
|
|
// Compile all .less files.
|
2014-02-02 19:22:05 +00:00
|
|
|
less: {
|
|
|
|
compile: {
|
|
|
|
options: {
|
|
|
|
// These paths are searched for @imports
|
2014-02-02 19:38:00 +00:00
|
|
|
paths: ['<%= dirs.css %>/']
|
2014-02-02 19:22:05 +00:00
|
|
|
},
|
|
|
|
files: {
|
2014-02-02 19:49:30 +00:00
|
|
|
'<%= dirs.css %>/activation.css': '<%= dirs.css %>/activation.less',
|
|
|
|
'<%= dirs.css %>/admin.css': '<%= dirs.css %>/admin.less',
|
|
|
|
'<%= dirs.css %>/chosen.css': '<%= dirs.css %>/chosen.less',
|
|
|
|
'<%= dirs.css %>/dashboard.css': '<%= dirs.css %>/dashboard.less',
|
|
|
|
'<%= dirs.css %>/menu.css': '<%= dirs.css %>/menu.less',
|
|
|
|
'<%= dirs.css %>/prettyPhoto.css': '<%= dirs.css %>/prettyPhoto.less',
|
|
|
|
'<%= dirs.css %>/woocommerce-layout.css': '<%= dirs.css %>/woocommerce-layout.less',
|
|
|
|
'<%= dirs.css %>/woocommerce-smallscreen.css': '<%= dirs.css %>/woocommerce-smallscreen.less',
|
2014-02-02 19:24:02 +00:00
|
|
|
'<%= dirs.css %>/woocommerce.css': '<%= dirs.css %>/woocommerce.less'
|
2014-02-02 19:22:05 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2014-01-30 16:41:07 +00:00
|
|
|
|
2014-02-02 19:38:00 +00:00
|
|
|
// Minify all .css files.
|
2014-02-02 19:22:05 +00:00
|
|
|
cssmin: {
|
2014-02-02 19:38:00 +00:00
|
|
|
minify: {
|
|
|
|
expand: true,
|
|
|
|
cwd: '<%= dirs.css %>/',
|
|
|
|
src: ['*.css'],
|
|
|
|
dest: '<%= dirs.css %>/',
|
|
|
|
ext: '.css'
|
|
|
|
}
|
2014-02-02 19:22:05 +00:00
|
|
|
},
|
2014-01-30 16:41:07 +00:00
|
|
|
|
2014-02-02 20:47:06 +00:00
|
|
|
// Minify .js files.
|
|
|
|
uglify: {
|
|
|
|
options: {
|
|
|
|
preserveComments: 'some'
|
|
|
|
},
|
|
|
|
admin: {
|
|
|
|
files: [{
|
|
|
|
expand: true,
|
|
|
|
cwd: '<%= dirs.js %>/admin/',
|
|
|
|
src: [
|
|
|
|
'*.js',
|
|
|
|
'!*.min.js',
|
|
|
|
'!jquery.flot*' // !jquery.flot* prevents to join all jquery.flot files in jquery.min.js
|
|
|
|
],
|
|
|
|
dest: '<%= dirs.js %>/admin/',
|
|
|
|
ext: '.min.js'
|
|
|
|
}]
|
|
|
|
},
|
|
|
|
adminflot: { // minify correctly the jquery.flot lib
|
|
|
|
files: {
|
|
|
|
'<%= dirs.js %>/admin/jquery.flot.min.js': ['<%= dirs.js %>/admin/jquery.flot.js'],
|
|
|
|
'<%= dirs.js %>/admin/jquery.flot.pie.min.js': ['<%= dirs.js %>/admin/jquery.flot.pie.js'],
|
|
|
|
'<%= dirs.js %>/admin/jquery.flot.resize.min.js': ['<%= dirs.js %>/admin/jquery.flot.resize.js'],
|
|
|
|
'<%= dirs.js %>/admin/jquery.flot.stack.min.js': ['<%= dirs.js %>/admin/jquery.flot.stack.js'],
|
|
|
|
'<%= dirs.js %>/admin/jquery.flot.time.min.js': ['<%= dirs.js %>/admin/jquery.flot.time.js'],
|
|
|
|
}
|
|
|
|
},
|
|
|
|
frontend: {
|
|
|
|
files: [{
|
|
|
|
expand: true,
|
|
|
|
cwd: '<%= dirs.js %>/frontend/',
|
|
|
|
src: [
|
|
|
|
'*.js',
|
|
|
|
'!*.min.js'
|
|
|
|
],
|
|
|
|
dest: '<%= dirs.js %>/frontend/',
|
|
|
|
ext: '.min.js'
|
|
|
|
}]
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
2014-02-02 19:22:05 +00:00
|
|
|
shell: {
|
2014-02-02 20:08:35 +00:00
|
|
|
txpull: {
|
|
|
|
options: {
|
|
|
|
stdout: true
|
|
|
|
},
|
|
|
|
command: [
|
|
|
|
'cd i18n',
|
|
|
|
'tx pull -a -f',
|
|
|
|
].join( '&&' )
|
|
|
|
},
|
2014-02-02 19:22:05 +00:00
|
|
|
generatemos: {
|
2014-02-02 20:08:35 +00:00
|
|
|
options: {
|
|
|
|
stdout: true
|
|
|
|
},
|
2014-02-02 19:22:05 +00:00
|
|
|
command: [
|
|
|
|
'cd i18n/languages',
|
|
|
|
'for i in *.po; do msgfmt $i -o ${i%%.*}.mo; done',
|
|
|
|
].join( '&&' )
|
|
|
|
}
|
2014-02-02 20:08:35 +00:00
|
|
|
}
|
2014-01-30 16:51:05 +00:00
|
|
|
|
2014-02-02 19:22:05 +00:00
|
|
|
});
|
2014-01-30 16:11:02 +00:00
|
|
|
|
2014-02-02 19:22:05 +00:00
|
|
|
// Load NPM tasks to be used here
|
|
|
|
grunt.loadNpmTasks( 'grunt-shell' );
|
|
|
|
grunt.loadNpmTasks( 'grunt-contrib-less' );
|
|
|
|
grunt.loadNpmTasks( 'grunt-contrib-cssmin' );
|
2014-02-02 20:47:06 +00:00
|
|
|
grunt.loadNpmTasks( 'grunt-contrib-uglify' );
|
2014-01-30 16:34:23 +00:00
|
|
|
|
2014-02-02 19:22:05 +00:00
|
|
|
// Register tasks
|
2014-02-02 20:08:35 +00:00
|
|
|
grunt.registerTask( 'default', [
|
|
|
|
'less',
|
|
|
|
'cssmin',
|
2014-02-02 20:47:06 +00:00
|
|
|
'uglify'
|
2014-02-02 20:08:35 +00:00
|
|
|
]);
|
|
|
|
|
|
|
|
grunt.registerTask( 'dev', [
|
|
|
|
'default',
|
|
|
|
'shell:txpull',
|
|
|
|
'shell:generatemos'
|
|
|
|
]);
|
2014-01-30 16:11:02 +00:00
|
|
|
|
2014-02-02 19:20:52 +00:00
|
|
|
};
|