Stylelint rule to disallow specified syntax.
MIT License
Stylelint rule to disallow specified syntax, similar to ESLint
no-restricted-syntax
.
npm install stylelint-no-restricted-syntax --save
Add this config to your .stylelintrc
:
{
"plugins": ["stylelint-no-restricted-syntax"],
"rules": {
"plugin/no-restricted-syntax": [
[
{
"selector": "rule[selector='a']",
"message": "Anchors not allowed."
},
{
"selector": "decl[prop='z-index']",
"message": "z-index not allowed."
}
]
]
}
}
If using a JavaScript config file (e.g., stylelint.config.cjs
), you may also
use a function that returns a message:
module.exports = {
'plugins': ['stylelint-no-restricted-syntax'],
'rules': {
'plugin/no-restricted-syntax': [
[
{
'selector': "decl[prop='z-index']",
'message': (node) => `${node.prop} not allowed.`
}
]
]
}
};
Each restricted syntax rule consists of the following properties:
Property | Type | Description |
---|---|---|
selector |
string |
Selector for querying PostCSS AST. |
message |
string|function |
Error message for queried PostCSS node. If using a function, the provided argument is the full PostCSS node. |
a {
z-index: 10;
}
/** ↑
* Previous line will be considered as restricted syntax */
b {
font-weight: bold;
}
MIT © Ivan Nikolić