babel/eslint/babel-eslint-plugin/rules/no-invalid-this.js
Brian Ng b41b3af879 Merge pull request babel/eslint-plugin-babel#138 from babel/composer
Refactor rules to use eslint-rule-composer
2018-03-30 08:34:43 -05:00

25 lines
605 B
JavaScript

"use strict";
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") {
inClassProperty = true;
return;
}
node = node.parent;
}
return !inClassProperty;
}
);