diff options
Diffstat (limited to 'www/wiki/extensions/Cite/Gruntfile.js')
-rw-r--r-- | www/wiki/extensions/Cite/Gruntfile.js | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/www/wiki/extensions/Cite/Gruntfile.js b/www/wiki/extensions/Cite/Gruntfile.js new file mode 100644 index 00000000..4082717e --- /dev/null +++ b/www/wiki/extensions/Cite/Gruntfile.js @@ -0,0 +1,83 @@ +/*! + * Grunt file + * + * @package Cite + */ + +/* eslint-env node, es6 */ + +module.exports = function ( grunt ) { + var conf = grunt.file.readJSON( 'extension.json' ); + + grunt.loadNpmTasks( 'grunt-banana-checker' ); + grunt.loadNpmTasks( 'grunt-eslint' ); + grunt.loadNpmTasks( 'grunt-jsonlint' ); + grunt.loadNpmTasks( 'grunt-stylelint' ); + grunt.loadNpmTasks( 'grunt-svgmin' ); + + grunt.initConfig( { + eslint: { + all: [ + '**/*.js', + '{.jsduck,build}/**/*.js', + 'modules/**/*.js', + '!node_modules/**', + '!vendor/**' + ] + }, + banana: conf.MessagesDirs, + stylelint: { + all: [ + '**/*.css', + '**/*.less', + '!node_modules/**', + '!vendor/**' + ] + }, + jsonlint: { + all: [ + '**/*.json', + '!node_modules/**', + '!vendor/**' + ] + }, + // SVG Optimization + svgmin: { + options: { + js2svg: { + pretty: true, + multipass: true + }, + plugins: [ { + cleanupIDs: false + }, { + removeDesc: false + }, { + removeRasterImages: true + }, { + removeTitle: false + }, { + removeViewBox: false + }, { + removeXMLProcInst: false + }, { + sortAttrs: true + } ] + }, + all: { + files: [ { + expand: true, + cwd: 'modules/ve-cite/icons', + src: [ + '**/*.svg' + ], + dest: 'modules/ve-cite/icons/', + ext: '.svg' + } ] + } + } + } ); + + grunt.registerTask( 'test', [ 'eslint', 'stylelint', 'jsonlint', 'banana', 'svgmin' ] ); + grunt.registerTask( 'default', 'test' ); +}; |