normalizeAllRuleSettings.js 797 B

123456789101112131415161718192021222324252627282930313233
  1. 'use strict';
  2. const normalizeRuleSettings = require('./normalizeRuleSettings');
  3. const getStylelintRule = require('./utils/getStylelintRule');
  4. /** @typedef {import('stylelint').Config} StylelintConfig */
  5. /**
  6. * @param {StylelintConfig} config
  7. * @return {StylelintConfig}
  8. */
  9. function normalizeAllRuleSettings(config) {
  10. if (!config.rules) return config;
  11. /** @type {StylelintConfig['rules']} */
  12. const normalizedRules = {};
  13. for (const [ruleName, rawRuleSettings] of Object.entries(config.rules)) {
  14. const rule = getStylelintRule(ruleName, config);
  15. if (rule) {
  16. normalizedRules[ruleName] = normalizeRuleSettings(rawRuleSettings, rule);
  17. } else {
  18. normalizedRules[ruleName] = [];
  19. }
  20. }
  21. config.rules = normalizedRules;
  22. return config;
  23. }
  24. module.exports = normalizeAllRuleSettings;