3 const ruleMessages = require("../../utils/ruleMessages");
4 const validateOptions = require("../../utils/validateOptions");
5 const valueListCommaWhitespaceChecker = require("../valueListCommaWhitespaceChecker");
6 const whitespaceChecker = require("../../utils/whitespaceChecker");
8 const ruleName = "value-list-comma-space-before";
10 const messages = ruleMessages(ruleName, {
11 expectedBefore: () => 'Expected single space before ","',
12 rejectedBefore: () => 'Unexpected whitespace before ","',
13 expectedBeforeSingleLine: () =>
14 'Unexpected whitespace before "," in a single-line list',
15 rejectedBeforeSingleLine: () =>
16 'Unexpected whitespace before "," in a single-line list'
19 const rule = function(expectation) {
20 const checker = whitespaceChecker("space", expectation, messages);
21 return (root, result) => {
22 const validOptions = validateOptions(result, ruleName, {
24 possible: ["always", "never", "always-single-line", "never-single-line"]
30 valueListCommaWhitespaceChecker({
33 locationChecker: checker.before,
34 checkedRuleName: ruleName
39 rule.ruleName = ruleName;
40 rule.messages = messages;
41 module.exports = rule;