11module . exports = {
22 root : true ,
3- extends : "@react-native-community" ,
3+ extends : [
4+ "eslint:recommended" ,
5+ "plugin:react/recommended" ,
6+ "plugin:@typescript-eslint/recommended" ,
7+ "@react-native-community" ,
8+ "prettier" ,
9+ ] ,
10+ ignorePatterns : [
11+ "**/*/*.js" ,
12+ "*.js" ,
13+ "*.svg" ,
14+ "*.json" ,
15+ "*.png" ,
16+ "package.json" ,
17+ "package-lock.json" ,
18+ ] ,
419 parser : "@typescript-eslint/parser" ,
5- plugins : [ "import" , "eslint-plugin-import" , "@typescript-eslint" ] ,
20+ plugins : [
21+ "import" ,
22+ "react" ,
23+ "react-native" ,
24+ "prettier" ,
25+ "react-hooks" ,
26+ "@typescript-eslint" ,
27+ "promise" ,
28+ "jest" ,
29+ "unused-imports" ,
30+ ] ,
31+ env : {
32+ browser : true ,
33+ es2021 : true ,
34+ "jest/globals" : true ,
35+ "react-native/react-native" : true ,
36+ } ,
637 settings : {
738 "import/resolver" : {
839 node : {
@@ -36,9 +67,25 @@ module.exports = {
3667 avoidEscape : true ,
3768 } ,
3869 ] ,
70+ "import/extensions" : [
71+ "error" ,
72+ "never" ,
73+ {
74+ svg : "always" ,
75+ model : "always" ,
76+ style : "always" ,
77+ png : "always" ,
78+ jpg : "always" ,
79+ json : "always" ,
80+ constant : "always" ,
81+ } ,
82+ ] ,
83+ "no-useless-catch" : 0 ,
84+ "react-hooks/exhaustive-deps" : 0 ,
3985 "max-len" : [ "error" , 120 ] ,
40- "@typescript-eslint/ban-ts-comment" : 2 ,
41- "@typescript-eslint/no-explicit-any" : 2 ,
86+ "@typescript-eslint/ban-ts-comment" : 1 ,
87+ "@typescript-eslint/no-empty-function" : 0 ,
88+ "@typescript-eslint/no-explicit-any" : 1 ,
4289 "@typescript-eslint/explicit-module-boundary-types" : 0 ,
4390 "react/jsx-filename-extension" : [ "error" , { extensions : [ ".tsx" ] } ] ,
4491 "react-native/no-unused-styles" : 2 ,
@@ -47,9 +94,8 @@ module.exports = {
4794 "react-native/no-color-literals" : 0 ,
4895 "react-native/no-raw-text" : 0 ,
4996 "import/no-extraneous-dependencies" : 2 ,
50- "import/extensions" : [ "error" , "never" , { svg : "always" } ] ,
5197 "import/no-named-as-default-member" : 2 ,
52- "import/order" : [ "error" , { "newlines-between" : "always" } ] ,
98+ "import/order" : 0 ,
5399 "import/no-duplicates" : 2 ,
54100 "import/no-useless-path-segments" : 2 ,
55101 "import/no-cycle" : 2 ,
@@ -64,14 +110,14 @@ module.exports = {
64110 "import/no-deprecated" : 0 ,
65111 "@typescript-eslint/indent" : 0 ,
66112 "react-hooks/rules-of-hooks" : 2 ,
67- "react-hooks/exhaustive-deps" : [
68- "error" ,
69- { additionalHooks : "(useMemoOne)" } ,
70- ] ,
71- "jest/no-identical-title" : 2 ,
72- "jest/valid-expect" : 2 ,
73113 camelcase : 2 ,
74114 "prefer-destructuring" : 2 ,
75115 "no-nested-ternary" : 2 ,
116+ "prettier/prettier" : [
117+ "error" ,
118+ {
119+ endOfLine : "auto" ,
120+ } ,
121+ ] ,
76122 } ,
77123} ;
0 commit comments