1
+ {
2
+ "extends": "eslint:recommended",
3
+ "root": true,
4
+ "parser": "babel-eslint",
5
+ "plugins": [ /*"import", */
6
+ "jsx-a11y",
7
+ "react"
8
+ ],
9
+ "env": {
10
+ "browser": true,
11
+ "commonjs": true,
12
+ "es6": true,
13
+ "jest": true,
14
+ "node": true
15
+ },
16
+ "parserOptions": {
17
+ "ecmaVersion": 6,
18
+ "sourceType": "module",
19
+ "ecmaFeatures": {
20
+ "jsx": true,
21
+ "generators": true,
22
+ "experimentalObjectRestSpread": true
23
+ }
24
+ },
25
+ "settings": {
26
+ "import/ignore": [
27
+ "node_modules",
28
+ "\\.(json|css|jpg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm)$"
29
+ ],
30
+ "import/extensions": [
31
+ ".js"
32
+ ],
33
+ "import/resolver": {
34
+ "node": {
35
+ "extensions": [
36
+ ".js",
37
+ ".json"
38
+ ]
39
+ }
40
+ }
41
+ },
42
+ "rules": {
43
+ // http://eslint.org/docs/rules/
44
+ "array-callback-return": "warn",
45
+ "camelcase": "warn",
46
+ "curly": "warn",
47
+ "default-case": [
48
+ "warn",
49
+ {
50
+ "commentPattern": "^no default$"
51
+ }
52
+ ],
53
+ "dot-location": [
54
+ "warn",
55
+ "property"
56
+ ],
57
+ "eol-last": "warn",
58
+ "eqeqeq": [
59
+ "warn",
60
+ "always"
61
+ ],
62
+ "indent": [
63
+ "warn",
64
+ 4,
65
+ {
66
+ "SwitchCase": 1
67
+ }
68
+ ],
69
+ "guard-for-in": "warn",
70
+ "keyword-spacing": "warn",
71
+ "new-parens": "warn",
72
+ "no-array-constructor": "warn",
73
+ "no-caller": "warn",
74
+ "no-cond-assign": [
75
+ "warn",
76
+ "always"
77
+ ],
78
+ "no-const-assign": "warn",
79
+ "no-control-regex": "warn",
80
+ "no-delete-var": "warn",
81
+ "no-dupe-args": "warn",
82
+ "no-dupe-class-members": "warn",
83
+ "no-dupe-keys": "warn",
84
+ "no-duplicate-case": "warn",
85
+ "no-empty-character-class": "warn",
86
+ "no-empty-pattern": "warn",
87
+ "no-eval": "warn",
88
+ "no-ex-assign": "warn",
89
+ "no-extend-native": "warn",
90
+ "no-extra-bind": "warn",
91
+ "no-extra-label": "warn",
92
+ "no-fallthrough": "warn",
93
+ "no-func-assign": "warn",
94
+ "no-global-assign": "warn",
95
+ "no-implied-eval": "warn",
96
+ "no-invalid-regexp": "warn",
97
+ "no-iterator": "warn",
98
+ "no-label-var": "warn",
99
+ "no-labels": [
100
+ "warn",
101
+ {
102
+ "allowLoop": false,
103
+ "allowSwitch": false
104
+ }
105
+ ],
106
+ "no-lone-blocks": "warn",
107
+ "no-loop-func": "warn",
108
+ "no-mixed-operators": [
109
+ "warn",
110
+ {
111
+ "groups": [
112
+ [
113
+ "&",
114
+ "|",
115
+ "^",
116
+ "~",
117
+ "<<",
118
+ ">>",
119
+ ">>>"
120
+ ],
121
+ [
122
+ "==",
123
+ "!=",
124
+ "===",
125
+ "!==",
126
+ ">",
127
+ ">=",
128
+ "<",
129
+ "<="
130
+ ],
131
+ [
132
+ "&&",
133
+ "||"
134
+ ],
135
+ [
136
+ "in",
137
+ "instanceof"
138
+ ]
139
+ ],
140
+ "allowSamePrecedence": false
141
+ }
142
+ ],
143
+ "no-multi-str": "warn",
144
+ "no-new-func": "warn",
145
+ "no-new-object": "warn",
146
+ "no-new-symbol": "warn",
147
+ "no-new-wrappers": "warn",
148
+ "no-obj-calls": "warn",
149
+ "no-octal": "warn",
150
+ "no-octal-escape": "warn",
151
+ "no-redeclare": "warn",
152
+ "no-regex-spaces": "warn",
153
+ "no-restricted-syntax": [
154
+ "warn",
155
+ "LabeledStatement",
156
+ "WithStatement"
157
+ ],
158
+ "no-script-url": "warn",
159
+ "no-self-assign": "warn",
160
+ "no-self-compare": "warn",
161
+ "no-sequences": "warn",
162
+ "no-shadow-restricted-names": "warn",
163
+ "no-sparse-arrays": "warn",
164
+ "no-template-curly-in-string": "warn",
165
+ "no-this-before-super": "warn",
166
+ "no-throw-literal": "warn",
167
+ "no-undef": "warn",
168
+ "no-unexpected-multiline": "warn",
169
+ "no-unreachable": "warn",
170
+ "no-unsafe-negation": "warn",
171
+ "no-unused-expressions": "warn",
172
+ "no-unused-labels": "warn",
173
+ "no-unused-vars": [
174
+ "warn",
175
+ {
176
+ "vars": "local",
177
+ "args": "none"
178
+ }
179
+ ],
180
+ "no-use-before-define": [
181
+ "warn",
182
+ "nofunc"
183
+ ],
184
+ "no-useless-computed-key": "warn",
185
+ "no-useless-concat": "warn",
186
+ "no-useless-constructor": "warn",
187
+ "no-useless-escape": "warn",
188
+ "no-useless-rename": [
189
+ "warn",
190
+ {
191
+ "ignoreDestructuring": false,
192
+ "ignoreImport": false,
193
+ "ignoreExport": false
194
+ }
195
+ ],
196
+ "no-with": "warn",
197
+ "no-whitespace-before-property": "warn",
198
+ "object-curly-spacing": [
199
+ "warn",
200
+ "always"
201
+ ],
202
+ "operator-assignment": [
203
+ "warn",
204
+ "always"
205
+ ],
206
+ "radix": "warn",
207
+ "require-yield": "warn",
208
+ "rest-spread-spacing": [
209
+ "warn",
210
+ "never"
211
+ ],
212
+ "semi": "warn",
213
+ "strict": [
214
+ "warn",
215
+ "never"
216
+ ],
217
+ "unicode-bom": [
218
+ "warn",
219
+ "never"
220
+ ],
221
+ "use-isnan": "warn",
222
+ "valid-typeof": "warn",
223
+ "react/jsx-boolean-value": "warn",
224
+ "react/jsx-closing-bracket-location": "warn",
225
+ "react/jsx-curly-spacing": "warn",
226
+ "react/jsx-equals-spacing": [
227
+ "warn",
228
+ "never"
229
+ ],
230
+ "react/jsx-first-prop-new-line": [
231
+ "warn",
232
+ "multiline"
233
+ ],
234
+ "react/jsx-handler-names": "warn",
235
+ "react/jsx-indent": [
236
+ "warn",
237
+ 2
238
+ ],
239
+ "react/jsx-indent-props": [
240
+ "warn",
241
+ 2
242
+ ],
243
+ "react/jsx-key": "warn",
244
+ "react/jsx-max-props-per-line": "warn",
245
+ "react/jsx-no-bind": [
246
+ "warn",
247
+ {
248
+ "allowArrowFunctions": true
249
+ }
250
+ ],
251
+ "react/jsx-no-comment-textnodes": "warn",
252
+ "react/jsx-no-duplicate-props": [
253
+ "warn",
254
+ {
255
+ "ignoreCase": true
256
+ }
257
+ ],
258
+ "react/jsx-no-undef": "warn",
259
+ "react/jsx-pascal-case": [
260
+ "warn",
261
+ {
262
+ "allowAllCaps": true,
263
+ "ignore": []
264
+ }
265
+ ],
266
+ "react/jsx-sort-props": "warn",
267
+ "react/jsx-tag-spacing": "warn",
268
+ "react/jsx-uses-react": "warn",
269
+ "react/jsx-uses-vars": "warn",
270
+ "react/jsx-wrap-multilines": "warn",
271
+ "react/no-deprecated": "warn",
272
+ "react/no-did-mount-set-state": "warn",
273
+ "react/no-did-update-set-state": "warn",
274
+ "react/no-direct-mutation-state": "warn",
275
+ "react/no-is-mounted": "warn",
276
+ "react/no-unused-prop-types": "warn",
277
+ "react/prefer-es6-class": "warn",
278
+ "react/prefer-stateless-function": "warn",
279
+ "react/prop-types": "warn",
280
+ "react/react-in-jsx-scope": "warn",
281
+ "react/require-render-return": "warn",
282
+ "react/self-closing-comp": "warn",
283
+ "react/sort-comp": "warn",
284
+ "react/sort-prop-types": "warn",
285
+ "react/style-prop-object": "warn",
286
+ "react/void-dom-elements-no-children": "warn"
287
+ //https://github.com/evcohen/eslint-plugin-jsx-a11y/tree/master/docs/rules
288
+ // "jsx-a11y/aria-role": "warn",
289
+ // "jsx-a11y/img-has-alt": "warn",
290
+ // "jsx-a11y/img-redundant-alt": "warn",
291
+ // "jsx-a11y/no-access-key": "warn"
292
+ }
293
+ }
0 commit comments