1{
2  "extends": [
3    "eslint:recommended",
4    "plugin:react/recommended",
5    "prettier"
6  ],
7  "settings": {
8    "react": {
9      "pragma": "React",
10      "version": "detect"
11    }
12  },
13  "parser": "babel-eslint",
14  "parserOptions": {
15    "ecmaVersion": 6,
16    "sourceType": "module",
17    "ecmaFeatures": {
18      "arrowFunctions": true,
19      "blockBindings": true,
20      "classes": true,
21      "defaultParams": true,
22      "destructuring": true,
23      "forOf": true,
24      "generators": true,
25      "modules": true,
26      "templateStrings": true,
27      "jsx": true
28    }
29  },
30  "env": {
31    "browser": true,
32    "es6": true,
33    "jasmine": true,
34    "jest": true,
35    "node": true
36  },
37  "globals": {
38    "jest": true
39  },
40  "plugins": [
41    "react",
42    "import"
43  ],
44  "rules": {
45    "accessor-pairs": [
46      "error"
47    ],
48    "block-scoped-var": [
49      "error"
50    ],
51    "consistent-return": [
52      "error"
53    ],
54    "curly": [
55      "error",
56      "all"
57    ],
58    "default-case": [
59      "error"
60    ],
61    "dot-location": [
62      "off"
63    ],
64    "dot-notation": [
65      "error"
66    ],
67    "eqeqeq": [
68      "error"
69    ],
70    "guard-for-in": [
71      "off"
72    ],
73    "import/named": [
74      "off"
75    ],
76    "import/no-duplicates": [
77      "error"
78    ],
79    "import/no-named-as-default": [
80      "error"
81    ],
82    "new-cap": [
83      "error"
84    ],
85    "no-alert": [
86      1
87    ],
88    "no-caller": [
89      "error"
90    ],
91    "no-case-declarations": [
92      "error"
93    ],
94    "no-console": [
95      "error"
96    ],
97    "no-div-regex": [
98      "error"
99    ],
100    "no-dupe-keys": [
101      "error"
102    ],
103    "no-else-return": [
104      "error"
105    ],
106    "no-empty-pattern": [
107      "error"
108    ],
109    "no-eq-null": [
110      "error"
111    ],
112    "no-eval": [
113      "error"
114    ],
115    "no-extend-native": [
116      "error"
117    ],
118    "no-extra-bind": [
119      "error"
120    ],
121    "no-extra-boolean-cast": [
122      "error"
123    ],
124    "no-inline-comments": [
125      "error"
126    ],
127    "no-implicit-coercion": [
128      "error"
129    ],
130    "no-implied-eval": [
131      "error"
132    ],
133    "no-inner-declarations": [
134      "off"
135    ],
136    "no-invalid-this": [
137      "error"
138    ],
139    "no-iterator": [
140      "error"
141    ],
142    "no-labels": [
143      "error"
144    ],
145    "no-lone-blocks": [
146      "error"
147    ],
148    "no-loop-func": [
149      "error"
150    ],
151    "no-multi-str": [
152      "error"
153    ],
154    "no-native-reassign": [
155      "error"
156    ],
157    "no-new": [
158      "error"
159    ],
160    "no-new-func": [
161      "error"
162    ],
163    "no-new-wrappers": [
164      "error"
165    ],
166    "no-param-reassign": [
167      "error"
168    ],
169    "no-process-env": [
170      "warn"
171    ],
172    "no-proto": [
173      "error"
174    ],
175    "no-redeclare": [
176      "error"
177    ],
178    "no-return-assign": [
179      "error"
180    ],
181    "no-script-url": [
182      "error"
183    ],
184    "no-self-compare": [
185      "error"
186    ],
187    "no-sequences": [
188      "error"
189    ],
190    "no-shadow": [
191      "off"
192    ],
193    "no-throw-literal": [
194      "error"
195    ],
196    "no-undefined": [
197      "error"
198    ],
199    "no-unused-expressions": [
200      "error"
201    ],
202    "no-use-before-define": [
203      "error",
204      "nofunc"
205    ],
206    "no-useless-call": [
207      "error"
208    ],
209    "no-useless-concat": [
210      "error"
211    ],
212    "no-with": [
213      "error"
214    ],
215    "prefer-const": [
216      "error"
217    ],
218    "radix": [
219      "error"
220    ],
221    "react/jsx-no-duplicate-props": [
222      "error"
223    ],
224    "react/jsx-no-undef": [
225      "error"
226    ],
227    "react/jsx-uses-react": [
228      "error"
229    ],
230    "react/jsx-uses-vars": [
231      "error"
232    ],
233    "react/no-did-update-set-state": [
234      "error"
235    ],
236    "react/no-direct-mutation-state": [
237      "error"
238    ],
239    "react/no-is-mounted": [
240      "error"
241    ],
242    "react/no-unknown-property": [
243      "error"
244    ],
245    "react/prefer-es6-class": [
246      "error",
247      "always"
248    ],
249    "react/prop-types": "error",
250    "valid-jsdoc": [
251      "error"
252    ],
253    "yoda": [
254      "error"
255    ],
256    "spaced-comment": [
257      "error",
258      "always",
259      {
260        "block": {
261          "exceptions": [
262            "*"
263          ]
264        }
265      }
266    ],
267    "no-unused-vars": [
268      "error",
269      {
270        "args": "after-used",
271        "argsIgnorePattern": "^_",
272        "caughtErrorsIgnorePattern": "^e$"
273      }
274    ],
275    "no-magic-numbers": [
276      "error",
277      {
278        "ignoreArrayIndexes": true,
279        "ignore": [
280          -1,
281          0,
282          1,
283          2,
284          3,
285          100,
286          10,
287          0.5
288        ]
289      }
290    ],
291    "no-underscore-dangle": [
292      "off"
293    ]
294  }
295}
296