summaryrefslogtreecommitdiff
path: root/scripts/frontend/stylelint/stylelint_utility_classes.js
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-03-31 12:08:17 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2022-03-31 12:08:17 +0000
commit5820d448c17f93606afb52d878c00d84681764e0 (patch)
tree98835aafc3d77377ba402baeb2b5110b2467bda1 /scripts/frontend/stylelint/stylelint_utility_classes.js
parentb654eb44a85fa358ce466b8d6cf772a660478fa9 (diff)
downloadgitlab-ce-5820d448c17f93606afb52d878c00d84681764e0.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'scripts/frontend/stylelint/stylelint_utility_classes.js')
-rw-r--r--scripts/frontend/stylelint/stylelint_utility_classes.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/scripts/frontend/stylelint/stylelint_utility_classes.js b/scripts/frontend/stylelint/stylelint_utility_classes.js
new file mode 100644
index 00000000000..ad2b2ddbb20
--- /dev/null
+++ b/scripts/frontend/stylelint/stylelint_utility_classes.js
@@ -0,0 +1,25 @@
+const stylelint = require('stylelint');
+const utils = require('./stylelint_utils');
+const utilityClasses = require('./utility_classes_map');
+
+const ruleName = 'stylelint-gitlab/utility-classes';
+
+const messages = stylelint.utils.ruleMessages(ruleName, {
+ expected: (selector1, selector2) => {
+ return `"${selector1}" has the same properties as our BS4 utility class "${selector2}" so please use that instead.`;
+ },
+});
+
+module.exports = stylelint.createPlugin(ruleName, (enabled) => {
+ if (!enabled) {
+ return;
+ }
+
+ // eslint-disable-next-line consistent-return
+ return (root, result) => {
+ utils.createPropertiesHashmap(root, result, ruleName, messages, utilityClasses, false);
+ };
+});
+
+module.exports.ruleName = ruleName;
+module.exports.messages = messages;