coze-studio/frontend/config/stylelint-config/plugins/plugin-disallow-nesting-lev...

29 lines
835 B
JavaScript

const stylelint = require('stylelint');
const ruleName = 'plugin/disallow-first-level-global';
module.exports = stylelint.createPlugin(ruleName, function (ruleValue) {
if (ruleValue === null || ruleValue === undefined || ruleValue === false) {
return () => {
// Nop.
};
}
return function (postcssRoot, postcssResult) {
postcssRoot.walkRules(rule => {
if (rule.parent.type === 'root' && /:global/.test(rule.selector)) {
stylelint.utils.report({
ruleName,
result: postcssResult,
node: rule,
message: 'Disallow :global class with nesting level of 1',
});
}
});
};
});
module.exports.ruleName = ruleName;
module.exports.messages = stylelint.utils.ruleMessages(ruleName, {
expected: 'Disallow :global class with nesting level of 1',
});