/*jshint node:true */ module.exports = function ( grunt ) { grunt.loadNpmTasks( 'grunt-contrib-jshint' ); grunt.loadNpmTasks( 'grunt-contrib-watch' ); grunt.loadNpmTasks( 'grunt-jsonlint' ); grunt.loadNpmTasks( 'grunt-banana-checker' ); grunt.loadNpmTasks( 'grunt-jscs' ); grunt.loadNpmTasks( 'grunt-stylelint' ); grunt.initConfig( { jshint: { options: { jshintrc: true, ignores: [ 'tests/externals/**' ] }, all: [ '**/*.js', '!node_modules/**', '!docs/**' ] }, jscs: { src: [ '<%= jshint.all %>', '!tests/externals/**', '!docs/**' ] }, // Lint – Styling stylelint: { options: { syntax: 'less' }, all: [ 'modules/**/*.css', 'modules/**/*.less' ] }, banana: { all: 'i18n/' }, watch: { files: [ '.{csslintrc,jscsrc,jshintignore,jshintrc}', '<%= jshint.all %>', '<%= csslint.all %>' ], tasks: 'test' }, jsonlint: { all: [ '**/*.json', '!node_modules/**', '!docs/**' ] } } ); grunt.registerTask( 'lint', [ 'jshint', 'jscs', 'stylelint', 'jsonlint', 'banana' ] ); grunt.registerTask( 'test', 'lint' ); grunt.registerTask( 'default', 'test' ); };