[mod] add stylelint process to target themes.simple

Before build, do lint the LESS files using stylelint [1].  The configuration
'stylelint-config-standard' [2] is added to the root of the simple theme [3].

[1] https://stylelint.io/
[2] https://github.com/stylelint/stylelint-config-standard
[3] https://stylelint.io/user-guide/configure

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
This commit is contained in:
Markus Heiser 2021-06-22 13:33:05 +02:00
parent e73a96b5f9
commit dfc5c3bc15
3 changed files with 28 additions and 3 deletions

View file

@ -0,0 +1,3 @@
{
"extends": "stylelint-config-standard"
}

View file

@ -23,6 +23,14 @@ module.exports = function(grunt) {
} }
} }
}, },
stylelint: {
options: {
formatter: 'unix',
},
src: [
'src/less/**/*.less',
]
},
copy: { copy: {
js: { js: {
expand: true, expand: true,
@ -191,8 +199,17 @@ module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-contrib-less'); grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-cssmin'); grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.loadNpmTasks('grunt-webfont'); grunt.loadNpmTasks('grunt-webfont');
grunt.loadNpmTasks('grunt-stylelint');
grunt.registerTask('test', ['jshint']); grunt.registerTask('test', ['jshint']);
grunt.registerTask('default', ['jshint', 'copy', 'concat', 'uglify', 'less:development', 'less:production']); grunt.registerTask('default', [
'jshint',
'stylelint',
'copy',
'concat',
'uglify',
'less:development',
'less:production'
]);
}; };

View file

@ -9,11 +9,14 @@
"grunt-contrib-less": "~3.0.0", "grunt-contrib-less": "~3.0.0",
"grunt-contrib-uglify": "~5.0.1", "grunt-contrib-uglify": "~5.0.1",
"grunt-contrib-watch": "~1.1.0", "grunt-contrib-watch": "~1.1.0",
"grunt-stylelint": "^0.16.0",
"grunt-webfont": "^1.7.2", "grunt-webfont": "^1.7.2",
"ionicons-npm": "^2.0.1", "ionicons-npm": "^2.0.1",
"jslint": "^0.12.1", "jslint": "^0.12.1",
"less": "^4.1.1", "less": "^4.1.1",
"less-plugin-clean-css": "^1.5.1" "less-plugin-clean-css": "^1.5.1",
"stylelint": "^13.13.1",
"stylelint-config-standard": "^22.0.0"
}, },
"dependencies": { "dependencies": {
"autocomplete-js": "2.7.1", "autocomplete-js": "2.7.1",
@ -25,6 +28,8 @@
"build": "grunt", "build": "grunt",
"watch": "grunt watch", "watch": "grunt watch",
"webfont": "grunt webfont", "webfont": "grunt webfont",
"clean": "rm -Rf node_modules package-lock.json ion.less" "clean": "rm -Rf node_modules package-lock.json ion.less",
"stylelint": "grunt stylelint",
"stylelint-fix": "grunt stylelint --fix"
} }
} }