grunt.loadNpmTasks( 'grunt-jsonlint' );
grunt.loadNpmTasks( 'grunt-karma' );
grunt.loadNpmTasks( 'grunt-stylelint' );
+ grunt.loadNpmTasks( 'grunt-svgmin' );
karmaProxy[ wgScriptPath ] = {
target: wgServer + wgScriptPath,
disallowBlankTranslations: false
},
core: 'languages/i18n/',
+ exif: 'languages/i18n/exif/',
api: 'includes/api/i18n/',
installer: 'includes/installer/i18n/'
},
stylelint: {
src: '{resources/src,mw-config}/**/*.{css,less}'
},
+ svgmin: {
+ options: {
+ js2svg: {
+ indent: '\t',
+ pretty: true
+ },
+ multipass: true,
+ plugins: [ {
+ cleanupIDs: false
+ }, {
+ removeDesc: false
+ }, {
+ removeRasterImages: true
+ }, {
+ removeTitle: false
+ }, {
+ removeViewBox: false
+ }, {
+ removeXMLProcInst: false
+ }, {
+ sortAttrs: true
+ } ]
+ },
+ all: {
+ files: [ {
+ expand: true,
+ cwd: 'resources/src',
+ src: [
+ '**/*.svg'
+ ],
+ dest: 'resources/src/',
+ ext: '.svg'
+ } ]
+ }
+ },
watch: {
files: [
'.{stylelintrc,eslintrc.json}',
return !!( process.env.MW_SERVER && process.env.MW_SCRIPT_PATH );
} );
+ grunt.registerTask( 'minify', 'svgmin' );
grunt.registerTask( 'lint', [ 'eslint', 'banana', 'stylelint' ] );
grunt.registerTask( 'qunit', [ 'assert-mw-env', 'karma:main' ] );
grunt.registerTask( 'test', [ 'lint' ] );
- grunt.registerTask( 'default', 'test' );
+ grunt.registerTask( 'default', [ 'minify', 'test' ] );
};