UNPKG

987 BJavaScriptView Raw
1'use strict';
2
3const atRuleNameSpaceChecker = require('../atRuleNameSpaceChecker');
4const ruleMessages = require('../../utils/ruleMessages');
5const validateOptions = require('../../utils/validateOptions');
6const whitespaceChecker = require('../../utils/whitespaceChecker');
7
8const ruleName = 'at-rule-name-newline-after';
9
10const messages = ruleMessages(ruleName, {
11 expectedAfter: (name) => `Expected newline after at-rule name "${name}"`,
12});
13
14/** @type {import('stylelint').Rule} */
15const rule = (primary) => {
16 const checker = whitespaceChecker('newline', primary, messages);
17
18 return (root, result) => {
19 const validOptions = validateOptions(result, ruleName, {
20 actual: primary,
21 possible: ['always', 'always-multi-line'],
22 });
23
24 if (!validOptions) {
25 return;
26 }
27
28 atRuleNameSpaceChecker({
29 root,
30 result,
31 locationChecker: checker.afterOneOnly,
32 checkedRuleName: ruleName,
33 });
34 };
35};
36
37rule.ruleName = ruleName;
38rule.messages = messages;
39module.exports = rule;