Skip to content

Commit 79db534

Browse files
authored
Add @babel/eslint-plugin (#187)
Closes #186.
1 parent 8954ede commit 79db534

8 files changed

+65
-26
lines changed

.eslintrc.base.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ module.exports = {
2323
),
2424
],
2525
parserOptions: {
26-
parser: "babel-eslint",
26+
parser: "@babel/eslint-parser",
2727
ecmaVersion: 2018,
2828
sourceType: "script",
2929
// Needed for the lint-verify-fail.test.js test.
@@ -63,9 +63,10 @@ module.exports = {
6363
"unicorn/prefer-module": "off",
6464
"unicorn/prefer-spread": "off",
6565
"unicorn/prevent-abbreviations": "off",
66-
// Force a conflict with Prettier in test-lint/babel.js.
66+
// Force a conflict with Prettier in test-lint/@babel.js. and test-lint/babel.js.
6767
"object-curly-spacing": "off",
6868
"babel/object-curly-spacing": ["error", "never"],
69+
"@babel/object-curly-spacing": ["error", "never"],
6970
},
7071
overrides: [
7172
{

README.md

+3
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ Then, add `"prettier"` to the "extends" array in your `.eslintrc.*` file. Make s
6060
That’s it! Extending `"prettier"` turns off a bunch of core ESLint rules, as well as a few rules from these plugins:
6161

6262
- [@typescript-eslint/eslint-plugin]
63+
- [@babel/eslint-plugin]
6364
- [eslint-plugin-babel]
6465
- [eslint-plugin-flowtype]
6566
- [eslint-plugin-react]
@@ -655,6 +656,7 @@ eslint-config-prettier has been tested with:
655656
- eslint-config-prettier 2.10.0 and older were tested with ESLint 4.x
656657
- eslint-config-prettier 2.1.1 and older were tested with ESLint 3.x
657658
- prettier 2.2.1
659+
- @babel/eslint-plugin 7.13.16
658660
- @typescript-eslint/eslint-plugin 4.22.0
659661
- eslint-plugin-babel 5.3.1
660662
- eslint-plugin-flowtype 5.7.2
@@ -710,6 +712,7 @@ When you’re done, run `npm test` to verify that you got it all right. It runs
710712

711713
[MIT](LICENSE).
712714

715+
[@babel/eslint-plugin]: https://github.com/babel/babel/tree/main/eslint/babel-eslint-plugin
713716
[@typescript-eslint/eslint-plugin]: https://github.com/typescript-eslint/typescript-eslint
714717
[@typescript-eslint/quotes]: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/quotes.md
715718
[arrow-body-style]: https://eslint.org/docs/rules/arrow-body-style

babel.config.json

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"plugins": ["@babel/plugin-syntax-jsx", "@babel/plugin-syntax-flow"]
3+
}

index.js

+2
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,8 @@ module.exports = {
9292
"wrap-iife": "off",
9393
"wrap-regex": "off",
9494
"yield-star-spacing": "off",
95+
"@babel/object-curly-spacing": "off",
96+
"@babel/semi": "off",
9597
"@typescript-eslint/brace-style": "off",
9698
"@typescript-eslint/comma-dangle": "off",
9799
"@typescript-eslint/comma-spacing": "off",

package-lock.json

+43-22
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+4-1
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,12 @@
1414
"build": "node scripts/build.js"
1515
},
1616
"devDependencies": {
17+
"@babel/eslint-parser": "7.13.14",
18+
"@babel/eslint-plugin": "7.13.16",
19+
"@babel/plugin-syntax-flow": "7.12.13",
20+
"@babel/plugin-syntax-jsx": "7.12.13",
1721
"@typescript-eslint/eslint-plugin": "4.22.0",
1822
"@typescript-eslint/parser": "4.22.0",
19-
"babel-eslint": "10.1.0",
2023
"doctoc": "2.0.0",
2124
"eslint": "7.25.0",
2225
"eslint-config-google": "0.14.0",

test-lint/@babel.js

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/* eslint-disable quotes, babel/object-curly-spacing */
2+
"use strict";
3+
4+
// Prettier wants spacing between curly braces, but
5+
// `@babel/object-curly-spacing` doesn’t.
6+
module.exports = { foo: "bar" };

test-lint/babel.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* eslint-disable quotes */
1+
/* eslint-disable quotes, @babel/object-curly-spacing */
22
"use strict";
33

44
// Prettier wants spacing between curly braces, but `babel/object-curly-spacing`

0 commit comments

Comments
 (0)