UNPKG

819 BJavaScriptView Raw
1const create = (context) => {
2 const sourceCode = context.getSourceCode();
3
4 const enterBlockStatement = (node) => {
5 if (!node.body.length &&
6 !sourceCode.getComments(node).trailing.length) {
7 const start = sourceCode.getFirstToken(node).range[1];
8 const end = sourceCode.getLastToken(node).range[0];
9 if (start !== end) {
10 context.report({
11 node,
12 message: 'Spaces in an empty block is not allowed.',
13 loc: node.loc.start,
14 fix: fixer => fixer.removeRange([start, end]),
15 });
16 }
17 }
18 };
19
20 return {
21 BlockStatement: enterBlockStatement,
22 };
23};
24
25module.exports = {
26 meta: {
27 docs: {
28 description: 'disallow spaces in empty blocks',
29 category: 'Stylistic Issues',
30 },
31 fixable: 'whitespace',
32 },
33 create,
34};