forked from kapost/weeds
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.eslintrc
235 lines (218 loc) · 15 KB
/
.eslintrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
---
parser: babel-eslint
plugins:
- react
env:
browser: true
node: true
mocha: true
globals:
__CLIENT__: true
__SERVER__: true
__DEVELOPMENT__: true
__RELATIVE_ROOT__: true
__DEVTOOLS__: true
Promise: true
ga: true
expect: true
chai: true
parserOptions:
ecmaVersion: 6
sourceType: module
ecmaFeatures:
jsx: true
modules: true
# For legacy eslint, will remove after ensuring eslint 2 works everywhere.
# ecmaFeatures:
# arrowFunctions: true
# binaryLiterals: false
# blockBindings: true
# classes: true
# defaultParams: true
# destructuring: true
# forOf: true
# generators: false
# modules: true
# objectLiteralComputedProperties: true
# objectLiteralDuplicateProperties: false
# objectLiteralShorthandMethods: true
# objectLiteralShorthandProperties: true
# octalLiterals: false
# regexUFlag: false
# regexYFlag: false
# restParams: true
# spread: true
# superInFunctions: true
# templateStrings: true
# unicodeCodePointEscapes: false
# globalReturn: false
rules:
### Strict mode (babel inserts "use strict"; for us)
strict: [2, never] # http://eslint.org/docs/rules/strict
### ECMAScript 6
no-var: 2 # http://eslint.org/docs/rules/no-var
generator-star-spacing: [2, before] # http://eslint.org/docs/rules/generator-star-spacing
### React (see https://github.com/yannickcr/eslint-plugin-react/tree/master/docs/rules)
react/display-name: 0
react/jsx-boolean-value: [0, never]
react/jsx-closing-bracket-location: [1, { selfClosing: after-props, nonEmpty: after-props }]
react/jsx-curly-spacing: [1, never]
react/jsx-indent: [2, 2]
react/jsx-no-bind: 2
react/jsx-no-duplicate-props: [2, { ignoreCase: true }]
react/jsx-no-undef: 2
react/jsx-space-before-closing: [1, always]
react/jsx-sort-prop-types: 0
react/jsx-sort-props: 0
react/jsx-uses-react: 2
react/jsx-uses-vars: 2
react/no-danger: 0
react/no-did-mount-set-state: 1
react/no-did-update-set-state: 0
react/no-multi-comp: 2
react/no-unknown-property: 2
react/prop-types: [1, { ignore: [children, className] }]
react/react-in-jsx-scope: 2
react/require-extension: [1, { extensions: [.js, .jsx] }]
react/self-closing-comp: 2
react/sort-comp: 0
react/wrap-multilines: 2
jsx-quotes: [1, prefer-double]
### Node.js
handle-callback-err: [2, ^(err|error)$] # http://eslint.org/docs/rules/handle-callback-err
no-mixed-requires: [1, false] # http://eslint.org/docs/rules/no-mixed-requires
no-new-require: 2 # http://eslint.org/docs/rules/no-new-require
no-path-concat: 2 # http://eslint.org/docs/rules/no-path-concat
no-process-exit: 2 # http://eslint.org/docs/rules/no-process-exit
no-restricted-modules: 0 # http://eslint.org/docs/rules/no-restricted-modules
no-sync: 2 # http://eslint.org/docs/rules/no-sync
### Possible errors
comma-dangle: [2, never] # http://eslint.org/docs/rules/comma-dangle
no-cond-assign: [2, always] # http://eslint.org/docs/rules/no-cond-assign
no-console: 1 # http://eslint.org/docs/rules/no-console
no-constant-condition: 2 # http://eslint.org/docs/rules/no-constant-condition
no-control-regex: 2 # http://eslint.org/docs/rules/no-control-regex
no-debugger: 1 # http://eslint.org/docs/rules/no-debugger
no-dupe-args: 2 # http://eslint.org/docs/rules/no-dupe-args
no-dupe-keys: 2 # http://eslint.org/docs/rules/no-dupe-keys
no-duplicate-case: 2 # http://eslint.org/docs/rules/no-duplicate-case
no-empty: 2 # http://eslint.org/docs/rules/no-empty
no-empty-character-class: 2 # http://eslint.org/docs/rules/no-empty-character-class
no-ex-assign: 2 # http://eslint.org/docs/rules/no-ex-assign
no-extra-boolean-cast: 1 # http://eslint.org/docs/rules/no-extra-boolean-cast
no-extra-parens: 0 # http://eslint.org/docs/rules/no-extra-parens
no-extra-semi: 2 # http://eslint.org/docs/rules/no-extra-semi
no-func-assign: 2 # http://eslint.org/docs/rules/no-func-assign
no-inner-declarations: 2 # http://eslint.org/docs/rules/no-inner-declarations
no-invalid-regexp: 2 # http://eslint.org/docs/rules/no-invalid-regexp
no-irregular-whitespace: 2 # http://eslint.org/docs/rules/no-irregular-whitespace
no-negated-in-lhs: 2 # http://eslint.org/docs/rules/no-negated-in-lhs
no-obj-calls: 2 # http://eslint.org/docs/rules/no-obj-calls
no-regex-spaces: 2 # http://eslint.org/docs/rules/no-regex-spaces
no-sparse-arrays: 2 # http://eslint.org/docs/rules/no-sparse-arrays
no-unreachable: 2 # http://eslint.org/docs/rules/no-unreachable
use-isnan: 2 # http://eslint.org/docs/rules/use-isnan
valid-typeof: 2 # http://eslint.org/docs/rules/valid-typeof
### Best practices
block-scoped-var: 2 # http://eslint.org/docs/rules/block-scoped-var
complexity: 0 # http://eslint.org/docs/rules/complexity.html
consistent-return: 2 # http://eslint.org/docs/rules/consistent-return
curly: [2, multi-line] # http://eslint.org/docs/rules/curly#
default-case: 2 # http://eslint.org/docs/rules/default-case
dot-notation: [2, { allowKeywords: true } ] # http://eslint.org/docs/rules/dot-notation
eqeqeq: 2 # http://eslint.org/docs/rules/eqeqeq
guard-for-in: 2 # http://eslint.org/docs/rules/guard-for-in
no-alert: 2 # http://eslint.org/docs/rules/no-alert
no-caller: 2 # http://eslint.org/docs/rules/no-caller
no-div-regex: 1 # http://eslint.org/docs/rules/no-div-regex
no-else-return: 0 # http://eslint.org/docs/rules/no-else-return
no-eq-null: 2 # http://eslint.org/docs/rules/no-eq-null
no-eval: 2 # http://eslint.org/docs/rules/no-eval
no-extend-native: 2 # http://eslint.org/docs/rules/no-extend-native
no-extra-bind: 2 # http://eslint.org/docs/rules/no-extra-bind
no-fallthrough: 2 # http://eslint.org/docs/rules/no-fallthrough
no-floating-decimal: 2 # http://eslint.org/docs/rules/no-floating-decimal
no-implied-eval: 2 # http://eslint.org/docs/rules/no-implied-eval
no-iterator: 2 # http://eslint.org/docs/rules/no-iterator
no-labels: 2 # http://eslint.org/docs/rules/no-labels
no-lone-blocks: 2 # http://eslint.org/docs/rules/no-lone-blocks
no-loop-func: 2 # http://eslint.org/docs/rules/no-loop-func
no-multi-spaces: 1 # http://eslint.org/docs/rules/no-multi-spaces
no-multi-str: 2 # http://eslint.org/docs/rules/no-multi-str
no-native-reassign: 2 # http://eslint.org/docs/rules/no-native-reassign
no-new: 2 # http://eslint.org/docs/rules/no-new
no-new-func: 2 # http://eslint.org/docs/rules/no-new-func
no-new-wrappers: 2 # http://eslint.org/docs/rules/no-new-wrappers
no-octal: 2 # http://eslint.org/docs/rules/no-octal
no-octal-escape: 2 # http://eslint.org/docs/rules/no-octal-escape
no-process-env: 2 # http://eslint.org/docs/rules/no-process-env
no-proto: 2 # http://eslint.org/docs/rules/no-proto
no-redeclare: 2 # http://eslint.org/docs/rules/no-redeclare
no-return-assign: 2 # http://eslint.org/docs/rules/no-return-assign
no-script-url: 2 # http://eslint.org/docs/rules/no-script-url
no-self-compare: 2 # http://eslint.org/docs/rules/no-sequences
no-sequences: 2 # http://eslint.org/docs/rules/no-sequences
no-throw-literal: 2 # http://eslint.org/docs/rules/no-throw-literal
no-unused-expressions: 2 # http://eslint.org/docs/rules/no-unused-expressions
no-void: 2 # http://eslint.org/docs/rules/no-void
no-warning-comments: 1 # http://eslint.org/docs/rules/no-warning-comments
no-with: 2 # http://eslint.org/docs/rules/no-with
radix: 2 # http://eslint.org/docs/rules/radix
vars-on-top: 0 # http://eslint.org/docs/rules/vars-on-top
wrap-iife: [2, any] # http://eslint.org/docs/rules/wrap-iife
yoda: 2 # http://eslint.org/docs/rules/yoda
### Variables
no-catch-shadow: 1 # http://eslint.org/docs/rules/no-catch-shadow
no-delete-var: 2 # http://eslint.org/docs/rules/no-delete-var
no-label-var: 2 # http://eslint.org/docs/rules/no-label-var
no-shadow: 1 # http://eslint.org/docs/rules/no-shadow
no-shadow-restricted-names: 2 # http://eslint.org/docs/rules/no-shadow-restricted-names
no-undef: 2 # http://eslint.org/docs/rules/no-undef
no-undef-init: 2 # http://eslint.org/docs/rules/no-undef-init
no-undefined: 2 # http://eslint.org/docs/rules/no-undefined
no-unused-vars: [2, {vars: all, args: all, argsIgnorePattern: ^_}] # http://eslint.org/docs/rules/no-unused-vars
no-use-before-define: 2 # http://eslint.org/docs/rules/no-use-before-define
prefer-const: 2 # http://eslint.org/docs/rules/prefer-const
### Stylistic issues
indent: [2, 2, { SwitchCase: 1 }] # http://eslint.org/docs/rules/indent
brace-style: [2, 1tbs, { allowSingleLine: true }] # http://eslint.org/docs/rules/brace-style
camelcase: [2, { properties: never }] # http://eslint.org/docs/rules/camelcase
comma-spacing: [2, { before: false, after: true }] # http://eslint.org/docs/rules/comma-spacing
comma-style: [2, last] # http://eslint.org/docs/rules/comma-style
consistent-this: [1, self] # http://eslint.org/docs/rules/consistent-this
eol-last: 2 # http://eslint.org/docs/rules/eol-last
func-names: 0 # http://eslint.org/docs/rules/func-names
func-style: 0 # http://eslint.org/docs/rules/func-style
key-spacing: [2, { beforeColon: false, afterColon: true }] # http://eslint.org/docs/rules/key-spacing
max-nested-callbacks: [2, 3] # http://eslint.org/docs/rules/max-nested-callbacks
max-len: [2, 100]
new-cap: 1 # http://eslint.org/docs/rules/new-cap
new-parens: 2 # http://eslint.org/docs/rules/new-parens
no-array-constructor: 1 # http://eslint.org/docs/rules/no-array-constructor
no-inline-comments: 0 # http://eslint.org/docs/rules/no-inline-comments
no-lonely-if: 2 # http://eslint.org/docs/rules/no-lonely-if
no-mixed-spaces-and-tabs: 2 # http://eslint.org/docs/rules/no-mixed-spaces-and-tabs.html
no-multiple-empty-lines: [2, { max: 2 }] # http://eslint.org/docs/rules/no-multiple-empty-lines
no-nested-ternary: 2 # http://eslint.org/docs/rules/no-nested-ternary
no-new-object: 2 # http://eslint.org/docs/rules/no-new-object
no-spaced-func: 2 # http://eslint.org/docs/rules/no-spaced-func
no-ternary: 0 # http://eslint.org/docs/rules/no-ternary
no-trailing-spaces: 2 # http://eslint.org/docs/rules/no-trailing-spaces
no-underscore-dangle: 0 # http://eslint.org/docs/rules/no-underscore-dangle
object-curly-spacing: [1, always] # http://eslint.org/docs/rules/object-curly-spacing
one-var: 0 # http://eslint.org/docs/rules/one-var
operator-assignment: [2, always] # http://eslint.org/docs/rules/operator-assignment
padded-blocks: 0 # http://eslint.org/docs/rules/padded-blocks
quote-props: [1, as-needed] # http://eslint.org/docs/rules/quote-props
quotes: [1, double, avoid-escape] # http://eslint.org/docs/rules/quotes
semi: [2, always] # http://eslint.org/docs/rules/semi
semi-spacing: [2, { before: false, after: true }] # http://eslint.org/docs/rules/semi-spacing
sort-vars: 0 # http://eslint.org/docs/rules/sort-vars
keyword-spacing: 2 # http://eslint.org/docs/rules/keyword-spacing
space-before-blocks: [2, always] # http://eslint.org/docs/rules/space-before-blocks
space-before-function-paren: [2, never] # http://eslint.org/docs/rules/space-before-function-paren
space-in-parens: [1, never] # http://eslint.org/docs/rules/space-in-parens
space-infix-ops: 2 # http://eslint.org/docs/rules/space-infix-ops
space-unary-ops: [1, { words: true, nonwords: false }] # http://eslint.org/docs/rules/space-unary-ops
spaced-comment: [1, always] # http://eslint.org/docs/rules/spaced-comment
wrap-regex: 1 # http://eslint.org/docs/rules/wrap-regex