33import react from "@eslint-react/eslint-plugin" ;
44import js from "@eslint/js" ;
55import reactHooks from "eslint-plugin-react-hooks" ;
6- import reactRefresh from "eslint-plugin-react-refresh" ;
76import tseslint from "typescript-eslint" ;
87
98import TSCONFIG from "./tsconfig.json" with { type : "json" } ;
@@ -12,13 +11,14 @@ import TSCONFIG_NODE from "./tsconfig.node.json" with { type: "json" };
1211const GLOB_TS = [ "**/*.ts" , "**/*.tsx" ] ;
1312
1413export default tseslint . config (
15- js . configs . recommended ,
1614 {
1715 files : GLOB_TS ,
1816 extends : [
17+ js . configs . recommended ,
1918 tseslint . configs . recommended ,
2019 ] ,
2120 } ,
21+ // base configuration for browser environment source files
2222 {
2323 files : TSCONFIG . include ,
2424 extends : [
@@ -32,28 +32,7 @@ export default tseslint.config(
3232 } ,
3333 } ,
3434 } ,
35- {
36- files : TSCONFIG . include ,
37- ...react . configs [ "recommended-type-checked" ] ,
38- } ,
39- {
40- files : TSCONFIG . include ,
41- plugins : {
42- // @ts -expect-error - Missing types
43- "react-hooks" : reactHooks ,
44- } ,
45- // @ts -ignore - Missing types
46- rules : reactHooks . configs . recommended . rules ,
47- } ,
48- {
49- files : TSCONFIG . include ,
50- plugins : {
51- "react-refresh" : reactRefresh ,
52- } ,
53- rules : {
54- "react-refresh/only-export-components" : "warn" ,
55- } ,
56- } ,
35+ // base configuration for node environment source files (*.config.ts, etc.)
5736 {
5837 files : TSCONFIG_NODE . include ,
5938 ignores : TSCONFIG_NODE . exclude ,
@@ -68,13 +47,19 @@ export default tseslint.config(
6847 "no-console" : "off" ,
6948 } ,
7049 } ,
50+ // React configuration
7151 {
72- ignores : [
73- "node_modules" ,
74- "dist" ,
75- "benchmark" ,
76- "eslint.config.mjs" ,
77- "eslint.config.d.ts" ,
78- ] ,
52+ files : TSCONFIG . include ,
53+ ...react . configs [ "recommended-type-checked" ] ,
54+ } ,
55+ // React Hooks configuration
56+ {
57+ files : TSCONFIG . include ,
58+ plugins : {
59+ // @ts -expect-error - Missing types
60+ "react-hooks" : reactHooks ,
61+ } ,
62+ // @ts -ignore - Missing types
63+ rules : reactHooks . configs . recommended . rules ,
7964 } ,
8065) ;
0 commit comments