@blitz/eslint-plugin
Version:
An ESLint config to enforce a consistent code styles across StackBlitz projects
38 lines • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.messageId = exports.ruleName = void 0;
const util_1 = require("../util");
exports.ruleName = 'block-scope-case';
exports.messageId = 'default';
exports.default = (0, util_1.createRule)({
name: exports.ruleName,
meta: {
type: 'layout',
docs: {
description: 'Ensures all case statements are block scoped',
},
fixable: 'code',
schema: [],
messages: {
[exports.messageId]: 'Case statements must be block scoped.',
},
},
defaultOptions: [],
create: (context) => {
return {
SwitchCase: (node) => {
if (node.consequent.length > 0 && node.consequent[0].type !== 'BlockStatement') {
context.report({
node,
loc: {
column: node.loc.start.column + (node.test ? 'case'.length : 'default'.length),
line: node.loc.start.line,
},
messageId: 'default',
});
}
},
};
},
});
//# sourceMappingURL=block-scope-case.js.map