UNPKG

stylelint

Version:
61 lines (47 loc) 1.84 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.messages = exports.ruleName = undefined; exports.default = function (blacklist) { return function (root, result) { var validOptions = (0, _utils.validateOptions)(result, ruleName, { actual: blacklist, possible: [_lodash.isString] }); if (!validOptions) { return; } root.walkAtRules(/^media$/i, function (atRule) { (0, _postcssMediaQueryParser2.default)(atRule.params).walk(/^media-feature$/i, function (mediaFeatureNode) { var parent = mediaFeatureNode.parent; var sourceIndex = mediaFeatureNode.sourceIndex; var value = mediaFeatureNode.value; if ((0, _utils.isRangeContextMediaFeature)(parent.value) || !(0, _utils.isStandardSyntaxMediaFeatureName)(value) || (0, _utils.isCustomMediaQuery)(value)) { return; } if (!(0, _utils.matchesStringOrRegExp)(value.toLowerCase(), blacklist)) { return; } (0, _utils.report)({ index: (0, _utils.atRuleParamIndex)(atRule) + sourceIndex, message: messages.rejected(value), node: atRule, ruleName: ruleName, result: result }); }); }); }; }; var _utils = require("../../utils"); var _lodash = require("lodash"); var _postcssMediaQueryParser = require("postcss-media-query-parser"); var _postcssMediaQueryParser2 = _interopRequireDefault(_postcssMediaQueryParser); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var ruleName = exports.ruleName = "media-feature-name-blacklist"; var messages = exports.messages = (0, _utils.ruleMessages)(ruleName, { rejected: function rejected(name) { return "Unexpected media feature name \"" + name + "\""; } });