eslint-plugin-babel
Version:
an eslint rule plugin companion to babel-eslint
26 lines (20 loc) • 645 B
JavaScript
;
const ruleComposer = require('eslint-rule-composer');
const eslint = require('eslint');
const noInvalidThisRule = new eslint.Linter().getRules().get('no-invalid-this');
module.exports = ruleComposer.filterReports(
noInvalidThisRule,
(problem, metadata) => {
let inClassProperty = false;
let node = problem.node;
while (node) {
if (node.type === "ClassProperty" ||
node.type === "ClassPrivateProperty") {
inClassProperty = true;
return;
}
node = node.parent;
}
return !inClassProperty;
}
);