Sha256: ad5b5c67e423f68d953e93ee7b35ed26c7b84db17249dbb6ac36f8ee9bfb33ef

Contents?: true

Size: 1.59 KB

Versions: 24

Compression:

Stored size: 1.59 KB

Contents

"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports["default"] = _default;
exports.messages = exports.ruleName = void 0;

var _stylelint = require("stylelint");

var _utils = require("../../utils");

var ruleName = (0, _utils.namespace)("at-function-parentheses-space-before");
exports.ruleName = ruleName;

var messages = _stylelint.utils.ruleMessages(ruleName, {
  rejectedBefore: function rejectedBefore() {
    return "Unexpected whitespace before parentheses in function declaration";
  },
  expectedBefore: function expectedBefore() {
    return "Expected a single space before parentheses in function declaration";
  }
});

exports.messages = messages;

function _default(value, _, context) {
  return function (root, result) {
    var validOptions = _stylelint.utils.validateOptions(result, ruleName, {
      actual: value,
      possible: ["always", "never"]
    });

    if (!validOptions) {
      return;
    }

    var match = /^([\w-]+)\s*?\(/;
    var replacement = value === "always" ? "$1 (" : "$1(";
    var checker = (0, _utils.whitespaceChecker)("space", value, messages).before;
    root.walkAtRules("function", function (decl) {
      if (context.fix) {
        decl.params = decl.params.replace(match, replacement);
        return;
      }

      checker({
        source: decl.params,
        index: decl.params.indexOf("("),
        err: function err(message) {
          return _stylelint.utils.report({
            message: message,
            node: decl,
            result: result,
            ruleName: ruleName
          });
        }
      });
    });
  };
}

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
trusty-cms-6.3.1 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.7 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.6 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.5 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.4 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.3 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.2 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.1 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.3.5 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-5.0.0 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.3.4 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.3.3 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.3.2 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.3.1 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.3 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.2.3 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.2.2 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.2.1 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.2 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js
trusty-cms-4.1.9 node_modules/stylelint-scss/dist/rules/at-function-parentheses-space-before/index.js