11module . exports = {
22 env : {
3- es2021 : true ,
4- node : true ,
3+ es2021 : true ,
4+ node : true ,
55 } ,
66 settings : {
7- react : {
8- version : "detect" ,
9- } ,
7+ react : {
8+ version : "detect" ,
9+ } ,
1010 } ,
1111 extends : [
12- "eslint:recommended" ,
13- "plugin:react/recommended" ,
14- "plugin:@typescript-eslint/recommended" ,
12+ "eslint:recommended" ,
13+ "plugin:react/recommended" ,
14+ "plugin:@typescript-eslint/recommended" ,
1515 ] ,
1616 parser : "@typescript-eslint/parser" ,
1717 parserOptions : {
18- ecmaFeatures : {
19- jsx : true ,
20- } ,
21- ecmaVersion : 12 ,
22- sourceType : "module" ,
18+ ecmaFeatures : {
19+ jsx : true ,
20+ } ,
21+ ecmaVersion : 12 ,
22+ sourceType : "module" ,
2323 } ,
2424 plugins : [
25- "react" ,
26- "react-hooks" ,
27- "@typescript-eslint" ,
28- "typescript-sort-keys" ,
29- "sort-destructure-keys" ,
30- "import" ,
25+ "react" ,
26+ "react-hooks" ,
27+ "@typescript-eslint" ,
28+ "typescript-sort-keys" ,
29+ "sort-destructure-keys" ,
30+ "import" ,
3131 ] ,
3232 rules : {
33- "linebreak-style" : [ "error" , "unix" ] ,
34- quotes : [ "warn" , "double" ] ,
35- semi : [ "warn" , "always" ] ,
36- "react-hooks/rules-of-hooks" : "error" ,
37- "react-hooks/exhaustive-deps" : "error" ,
38- "react/display-name" : "off" ,
39- "react/prop-types" : "off" ,
40- "no-unused-vars" : "off" , // disable the base rule as it can report incorrect errors
41- "@typescript-eslint/consistent-type-imports" : [
42- "warn" ,
43- { prefer : "type-imports" } ,
44- ] ,
45- "@typescript-eslint/no-unused-vars" : [
46- "warn" ,
47- {
48- vars : "all" ,
49- args : "after-used" ,
50- ignoreRestSiblings : true ,
51- } ,
52- ] ,
53- "no-unreachable" : "warn" ,
54- "typescript-sort-keys/interface" : "warn" ,
55- "typescript-sort-keys/string-enum" : "warn" ,
56- "sort-destructure-keys/sort-destructure-keys" : [
57- "warn" ,
58- { caseSensitive : false } ,
59- ] ,
60- "react/jsx-sort-props" : [
61- "warn" ,
62- {
63- ignoreCase : true ,
64- reservedFirst : [ "key" , "children" , "ref" ] ,
65- } ,
66- ] ,
67- "import/order" : [
68- "warn" ,
69- {
70- "newlines-between" : "always" ,
71- distinctGroup : true ,
72- alphabetize : {
73- order : "asc" ,
74- caseInsensitive : true ,
75- orderImportKind : "desc" ,
76- } ,
77- groups : [
78- "builtin" ,
79- "external" ,
80- "parent" ,
81- "sibling" ,
82- "internal" ,
83- "unknown" ,
84- ] ,
85- pathGroupsExcludedImportTypes : [ "react" ] ,
86- pathGroups : [
87- {
88- pattern : "react" ,
89- group : "builtin" ,
90- position : "before" ,
91- } ,
33+ "linebreak-style" : [ "error" , "unix" ] ,
34+ quotes : [ "off" ] ,
35+ semi : [ "warn" , "always" ] ,
36+ "react-hooks/rules-of-hooks" : "error" ,
37+ "react-hooks/exhaustive-deps" : "error" ,
38+ "react/display-name" : "off" ,
39+ "react/prop-types" : "off" ,
40+ "no-unused-vars" : "off" , // disable the base rule as it can report incorrect errors
41+ "@typescript-eslint/consistent-type-imports" : [
42+ "warn" ,
43+ { prefer : "type-imports" } ,
44+ ] ,
45+ "@typescript-eslint/no-unused-vars" : [
46+ "warn" ,
9247 {
93- pattern : "([a-z]|@)**" ,
94- group : "external" ,
48+ vars : "all" ,
49+ args : "after-used" ,
50+ ignoreRestSiblings : true ,
9551 } ,
52+ ] ,
53+ "no-unreachable" : "warn" ,
54+ "typescript-sort-keys/interface" : "warn" ,
55+ "typescript-sort-keys/string-enum" : "warn" ,
56+ "sort-destructure-keys/sort-destructure-keys" : [
57+ "warn" ,
58+ { caseSensitive : false } ,
59+ ] ,
60+ "react/jsx-sort-props" : [
61+ "warn" ,
9662 {
97- pattern : "**/styles" ,
98- group : "internal" ,
99- position : "before" ,
63+ ignoreCase : true ,
64+ reservedFirst : [ "key" , "children" , "ref" ] ,
10065 } ,
66+ ] ,
67+ "import/order" : [
68+ "warn" ,
10169 {
102- pattern : "**/types" ,
103- group : "internal" ,
104- position : "before" ,
70+ "newlines-between" : "always" ,
71+ distinctGroup : true ,
72+ alphabetize : {
73+ order : "asc" ,
74+ caseInsensitive : true ,
75+ orderImportKind : "desc" ,
76+ } ,
77+ groups : [
78+ "builtin" ,
79+ "external" ,
80+ "parent" ,
81+ "sibling" ,
82+ "internal" ,
83+ "unknown" ,
84+ ] ,
85+ pathGroupsExcludedImportTypes : [ "react" ] ,
86+ pathGroups : [
87+ {
88+ pattern : "react" ,
89+ group : "builtin" ,
90+ position : "before" ,
91+ } ,
92+ {
93+ pattern : "([a-z]|@)**" ,
94+ group : "external" ,
95+ } ,
96+ {
97+ pattern : "**/styles" ,
98+ group : "internal" ,
99+ position : "before" ,
100+ } ,
101+ {
102+ pattern : "**/types" ,
103+ group : "internal" ,
104+ position : "before" ,
105+ } ,
106+ {
107+ pattern : "**/components/**" ,
108+ group : "internal" ,
109+ } ,
110+ {
111+ pattern : "**/utils/**" ,
112+ group : "internal" ,
113+ position : "after" ,
114+ } ,
115+ ] ,
105116 } ,
106- {
107- pattern : "**/components/**" ,
108- group : "internal" ,
109- } ,
110- {
111- pattern : "**/utils/**" ,
112- group : "internal" ,
113- position : "after" ,
114- } ,
115- ] ,
116- } ,
117- ] ,
117+ ] ,
118118 } ,
119- } ;
119+ } ;
0 commit comments