{
"rules": {
"at-rule-empty-line-before": [ "always",
- {"except": [ "blockless-group", "all-nested" ], ignore: ["after-comment"]}
+ {"except": [ "blockless-group"], ignore: ["after-comment", "all-nested"]}
],
"at-rule-name-case": "lower",
"at-rule-name-space-after": "always-single-line",
- "at-rule-no-unknown": [true, ignoreAtRules: ["extend", "include"]],
+ "at-rule-no-unknown": null, # Enabled for non-scss in grunt.
"at-rule-semicolon-newline-after": "always",
"block-closing-brace-newline-after": "always",
"block-closing-brace-newline-before": "always-multi-line",
"media-query-list-comma-newline-after": "always-multi-line",
"media-query-list-comma-space-after": "always-single-line",
"media-query-list-comma-space-before": "never",
- "no-browser-hacks": [true, { "severity": "warning" }],
+ "no-browser-hacks": null, # Enabled for non-scss in grunt.
"no-empty-source": true,
"no-eol-whitespace": true,
"no-extra-semicolons": [true, { "severity": "warning" }],
"unit-blacklist": ["pt", "rem"],
"unit-case": "lower",
"unit-no-unknown": true,
- "value-keyword-case": ["lower", {"ignoreKeywords": ["/@/"]}],
+ "value-keyword-case": ["lower", {"ignoreKeywords": ["/(@|$)/"]}],
"value-list-comma-newline-after": "always-multi-line",
"value-list-comma-space-after": "always-single-line",
"value-list-comma-space-before": "never",
"selector-type-no-unknown": null,
"length-zero-no-unit": null,
"color-hex-case": null,
- "color-hex-length": null
+ "color-hex-length": null,
+ // These rules have to be disabled in .stylelintrc for scss compat.
+ "at-rule-no-unknown": true,
+ "no-browser-hacks": [true, {"severity": "warning"}]
}
}
},
src: ['theme/**/*.less']
+ },
+ scss: {
+ options: {
+ syntax: 'scss',
+ configOverrides: {
+ rules: {
+ "unit-blacklist": null, // TODO: alter based on outcome of MDL-56061.
+ "declaration-no-important": null, // TODO: to be addressed by MDL-56063.
+ // TODO: MDL-55165 - Enable the following rules once we make output-changing changes to scss.
+ "declaration-block-no-duplicate-properties": null,
+ "declaration-block-no-ignored-properties": null,
+ "declaration-block-no-shorthand-property-overrides": null,
+ "property-no-unknown": null,
+ }
+ },
+ },
+ src: ['*/**/*.scss']
}
}
});
var eslintIgnores = ['# Generated by "grunt ignorefiles"', '*/**/yui/src/*/meta/', '*/**/build/'].concat(thirdPartyPaths);
grunt.file.write('.eslintignore', eslintIgnores.join('\n'));
// Generate .stylelintignore.
- var stylelintIgnores = ['# Generated by "grunt ignorefiles"', 'theme/bootstrapbase/style/'].concat(thirdPartyPaths);
+ var stylelintIgnores = [
+ '# Generated by "grunt ignorefiles"',
+ 'theme/bootstrapbase/style/',
+ 'theme/boost/scss/preset-*'
+ ].concat(thirdPartyPaths);
grunt.file.write('.stylelintignore', stylelintIgnores.join('\n'));
};