.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / stylelint / lib / rules / selector-combinator-space-before / index.js
1 "use strict";
2
3 const ruleMessages = require("../../utils/ruleMessages");
4 const selectorCombinatorSpaceChecker = require("../selectorCombinatorSpaceChecker");
5 const validateOptions = require("../../utils/validateOptions");
6 const whitespaceChecker = require("../../utils/whitespaceChecker");
7
8 const ruleName = "selector-combinator-space-before";
9
10 const messages = ruleMessages(ruleName, {
11   expectedBefore: combinator => `Expected single space before "${combinator}"`,
12   rejectedBefore: combinator => `Unexpected whitespace before "${combinator}"`
13 });
14
15 const rule = function(expectation) {
16   const checker = whitespaceChecker("space", expectation, messages);
17   return (root, result) => {
18     const validOptions = validateOptions(result, ruleName, {
19       actual: expectation,
20       possible: ["always", "never"]
21     });
22     if (!validOptions) {
23       return;
24     }
25
26     selectorCombinatorSpaceChecker({
27       root,
28       result,
29       locationChecker: checker.before,
30       locationType: "before",
31       checkedRuleName: ruleName
32     });
33   };
34 };
35
36 rule.ruleName = ruleName;
37 rule.messages = messages;
38 module.exports = rule;