Files
ECAILLE Fabrice (externe) e2277667c5 Fix: add dependencies
2017-05-04 10:26:11 +02:00

99 lines
2.8 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
module.exports = function(grunt) {
/**
* Load tasks
*/
grunt.loadNpmTasks('lesshat-devstack');
grunt.loadNpmTasks('grunt-prompt');
/**
* Grunt config
*/
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
generator: {
settings: {
mixin_name: null,
default_value: null,
vendors: null
}
},
version: {
settings: {
version: null
}
},
prompt: {
version: {
options: {
questions: [{
config: 'version.settings.version',
type: 'input',
validate: function(value) {
return (value && true);
},
message: 'LESS Hat next version number? Current is ' + '<%= pkg.version %>'.green + ':',
}],
}
},
generate: {
options: {
questions: [{
config: 'generator.settings.mixin_name',
type: 'input',
message: 'What is the name of new mixin? (e.g. animationDelay)',
filter: function(value) {
grunt.config('generator.settings.mixin_css_name', value.replace(/([A-Z])/g, function(upperCase) {
return '-' + upperCase.toLowerCase();
}));
grunt.config('generator.settings.mixin_name | firstLetter', value[0].toUpperCase() + value.slice(1));
return value[0].toLowerCase() + value.slice(1);
},
validate: function(value) {
if (/[a-z0-9]+/i.test(value)) {
return true;
} else {
return 'Please fill only valid characters [a-zA-Z0-9].';
}
}
}, {
config: 'generator.settings.vendors',
type: 'checkbox',
message: 'For which browsers is this mixin?',
choices: [{
name: 'webkit'
}, {
name: 'moz'
}, {
name: 'opera'
}, {
name: 'ms',
}]
}, {
config: 'generator.settings.default_value',
type: 'input',
default: 'none',
filter: function(value) {
return '\'' + value + '\'';
},
message: 'What is default value of the mixin? Optional you can skip',
}]
}
}
}
});
/**
* Register tasks
*/
grunt.registerTask('version', ['prompt:version', 'iterate', 'build', 'mixins_update']);
grunt.registerTask('dev', ['build', 'test']);
grunt.registerTask('generate', ['prompt:generate', 'generator']);
grunt.registerTask('contrib', ['build', 'test', 'mixins_update', 'prefix', 'documentation']);
grunt.registerTask('default', ['version','build', 'test', 'mixins_update', 'prefix', 'documentation', 'git']);
};