@babel/eslint-plugin
Version:
Companion rules for @babel/eslint-parser
1 lines • 2.75 kB
Source Map (JSON)
{"version":3,"names":["ruleComposer","require","eslint","eslintVersion","ESLint","version","noInvalidThisRule","parseInt","builtinRules","Linter","getRules","get","module","exports","filterReports","problem","inClassMember","node","type","key","parent"],"sources":["../../src/rules/no-invalid-this.cjs"],"sourcesContent":["const ruleComposer = require(\"eslint-rule-composer\");\nconst eslint = require(\"eslint\");\nconst eslintVersion = eslint.ESLint.version;\n\nconst noInvalidThisRule = (\n parseInt(eslintVersion, 10) >= 9\n ? require(\"eslint/use-at-your-own-risk\").builtinRules\n : new eslint.Linter().getRules()\n).get(\"no-invalid-this\");\n\nif (parseInt(eslintVersion, 10) >= 8) {\n // ESLint 8 supports class properties / private methods natively\n // so we simply forward the original rule\n module.exports = noInvalidThisRule;\n} else {\n module.exports = ruleComposer.filterReports(noInvalidThisRule, problem => {\n let inClassMember = false;\n let node = problem.node;\n\n while (node) {\n if (\n node.type === \"ClassPrivateMethod\" ||\n node.type === \"ClassPrivateProperty\" ||\n node.type === \"ClassProperty\" ||\n node.type === \"PropertyDefinition\" ||\n (node.type === \"MethodDefinition\" &&\n node.key.type === \"PrivateIdentifier\")\n ) {\n inClassMember = true;\n break;\n } else if (\n node.type === \"FunctionDeclaration\" ||\n node.type === \"FunctionExpression\"\n ) {\n inClassMember = false;\n break;\n }\n\n node = node.parent;\n }\n\n return !inClassMember;\n });\n}\n"],"mappings":"AAAA,MAAMA,YAAY,GAAGC,OAAO,CAAC,sBAAsB,CAAC;AACpD,MAAMC,MAAM,GAAGD,OAAO,CAAC,QAAQ,CAAC;AAChC,MAAME,aAAa,GAAGD,MAAM,CAACE,MAAM,CAACC,OAAO;AAE3C,MAAMC,iBAAiB,GAAG,CACxBC,QAAQ,CAACJ,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,GAC5BF,OAAO,CAAC,6BAA6B,CAAC,CAACO,YAAY,GACnD,IAAIN,MAAM,CAACO,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAClCC,GAAG,CAAC,iBAAiB,CAAC;AAExB,IAAIJ,QAAQ,CAACJ,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE;EAGpCS,MAAM,CAACC,OAAO,GAAGP,iBAAiB;AACpC,CAAC,MAAM;EACLM,MAAM,CAACC,OAAO,GAAGb,YAAY,CAACc,aAAa,CAACR,iBAAiB,EAAES,OAAO,IAAI;IACxE,IAAIC,aAAa,GAAG,KAAK;IACzB,IAAIC,IAAI,GAAGF,OAAO,CAACE,IAAI;IAEvB,OAAOA,IAAI,EAAE;MACX,IACEA,IAAI,CAACC,IAAI,KAAK,oBAAoB,IAClCD,IAAI,CAACC,IAAI,KAAK,sBAAsB,IACpCD,IAAI,CAACC,IAAI,KAAK,eAAe,IAC7BD,IAAI,CAACC,IAAI,KAAK,oBAAoB,IACjCD,IAAI,CAACC,IAAI,KAAK,kBAAkB,IAC/BD,IAAI,CAACE,GAAG,CAACD,IAAI,KAAK,mBAAoB,EACxC;QACAF,aAAa,GAAG,IAAI;QACpB;MACF,CAAC,MAAM,IACLC,IAAI,CAACC,IAAI,KAAK,qBAAqB,IACnCD,IAAI,CAACC,IAAI,KAAK,oBAAoB,EAClC;QACAF,aAAa,GAAG,KAAK;QACrB;MACF;MAEAC,IAAI,GAAGA,IAAI,CAACG,MAAM;IACpB;IAEA,OAAO,CAACJ,aAAa;EACvB,CAAC,CAAC;AACJ","ignoreList":[]}