eslint-config-seekingalpha-react 10.28.2 → 10.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/oxlint-config.js +7 -0
- package/package.json +1 -1
- package/rules/eslint-plugin-jsx-a11y/oxlint-config.js +100 -0
- package/rules/eslint-plugin-react/oxlint-config.js +160 -0
- package/rules/eslint-plugin-react-hooks/oxlint-config.js +7 -0
- package/oxlint-config.json +0 -8
- package/rules/eslint-plugin-jsx-a11y/oxlint-config.json +0 -101
- package/rules/eslint-plugin-react/oxlint-config.json +0 -161
- package/rules/eslint-plugin-react-hooks/oxlint-config.json +0 -8
package/CHANGELOG.md
CHANGED
package/oxlint-config.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import reactConfig from './rules/eslint-plugin-react/oxlint-config.js';
|
|
2
|
+
import jsxA11yConfig from './rules/eslint-plugin-jsx-a11y/oxlint-config.js';
|
|
3
|
+
import reactHooksConfig from './rules/eslint-plugin-react-hooks/oxlint-config.js';
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
extends: [reactConfig, jsxA11yConfig, reactHooksConfig],
|
|
7
|
+
};
|
package/package.json
CHANGED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
plugins: ['jsx-a11y'],
|
|
3
|
+
rules: {
|
|
4
|
+
'jsx-a11y/alt-text': [
|
|
5
|
+
'error',
|
|
6
|
+
{
|
|
7
|
+
elements: ['img', 'object', 'area', "input[type='image']"],
|
|
8
|
+
img: [],
|
|
9
|
+
object: [],
|
|
10
|
+
area: [],
|
|
11
|
+
"input[type='image']": [],
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
'anchor-ambiguous-text': 'off',
|
|
15
|
+
'jsx-a11y/anchor-has-content': 'off',
|
|
16
|
+
'jsx-a11y/anchor-is-valid': [
|
|
17
|
+
'error',
|
|
18
|
+
{
|
|
19
|
+
components: ['Anchor', 'Link'],
|
|
20
|
+
specialLink: ['to'],
|
|
21
|
+
aspects: ['noHref', 'invalidHref', 'preferButton'],
|
|
22
|
+
},
|
|
23
|
+
],
|
|
24
|
+
'jsx-a11y/aria-activedescendant-has-tabindex': 'error',
|
|
25
|
+
'jsx-a11y/aria-props': 'error',
|
|
26
|
+
'jsx-a11y/aria-proptypes': 'error',
|
|
27
|
+
'jsx-a11y/aria-role': [
|
|
28
|
+
'error',
|
|
29
|
+
{
|
|
30
|
+
ignoreNonDOM: false,
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
'jsx-a11y/aria-unsupported-elements': 'error',
|
|
34
|
+
'jsx-a11y/autocomplete-valid': 'error',
|
|
35
|
+
'jsx-a11y/click-events-have-key-events': 'error',
|
|
36
|
+
'jsx-a11y/heading-has-content': [
|
|
37
|
+
'error',
|
|
38
|
+
{
|
|
39
|
+
components: [''],
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
'jsx-a11y/html-has-lang': 'error',
|
|
43
|
+
'jsx-a11y/iframe-has-title': 'error',
|
|
44
|
+
'jsx-a11y/img-redundant-alt': 'error',
|
|
45
|
+
'jsx-a11y/lang': 'error',
|
|
46
|
+
'jsx-a11y/media-has-caption': [
|
|
47
|
+
'error',
|
|
48
|
+
{
|
|
49
|
+
audio: [],
|
|
50
|
+
video: [],
|
|
51
|
+
track: [],
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
'jsx-a11y/mouse-events-have-key-events': 'error',
|
|
55
|
+
'jsx-a11y/no-access-key': 'error',
|
|
56
|
+
'jsx-a11y/no-aria-hidden-on-focusable': 'off',
|
|
57
|
+
'jsx-a11y/no-autofocus': [
|
|
58
|
+
'error',
|
|
59
|
+
{
|
|
60
|
+
ignoreNonDOM: true,
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
'jsx-a11y/no-distracting-elements': 'error',
|
|
64
|
+
'jsx-a11y/no-noninteractive-tabindex': [
|
|
65
|
+
'error',
|
|
66
|
+
{
|
|
67
|
+
tags: [],
|
|
68
|
+
roles: ['tabpanel'],
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
'jsx-a11y/no-redundant-roles': 'error',
|
|
72
|
+
'jsx-a11y/no-static-element-interactions': [
|
|
73
|
+
'error',
|
|
74
|
+
{
|
|
75
|
+
handlers: [
|
|
76
|
+
'onClick',
|
|
77
|
+
'onMouseDown',
|
|
78
|
+
'onKeyPress',
|
|
79
|
+
'onKeyDown',
|
|
80
|
+
'onKeyUp',
|
|
81
|
+
],
|
|
82
|
+
},
|
|
83
|
+
],
|
|
84
|
+
'jsx-a11y/role-has-required-aria-props': 'error',
|
|
85
|
+
'jsx-a11y/role-supports-aria-props': 'error',
|
|
86
|
+
'jsx-a11y/scope': 'error',
|
|
87
|
+
'jsx-a11y/tabindex-no-positive': 'error',
|
|
88
|
+
'jsx-a11y/label-has-associated-control': [
|
|
89
|
+
'error',
|
|
90
|
+
{
|
|
91
|
+
labelComponents: [],
|
|
92
|
+
labelAttributes: [],
|
|
93
|
+
controlComponents: [],
|
|
94
|
+
assert: 'both',
|
|
95
|
+
depth: 10,
|
|
96
|
+
},
|
|
97
|
+
],
|
|
98
|
+
'jsx-a11y/prefer-tag-over-role': 'error',
|
|
99
|
+
},
|
|
100
|
+
};
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
plugins: ['react'],
|
|
3
|
+
rules: {
|
|
4
|
+
'react/jsx-boolean-value': [
|
|
5
|
+
'error',
|
|
6
|
+
'never',
|
|
7
|
+
{
|
|
8
|
+
always: [],
|
|
9
|
+
},
|
|
10
|
+
],
|
|
11
|
+
'react/jsx-filename-extension': [
|
|
12
|
+
'error',
|
|
13
|
+
{
|
|
14
|
+
extensions: ['.tsx'],
|
|
15
|
+
},
|
|
16
|
+
],
|
|
17
|
+
'react/jsx-fragments': ['error', 'syntax'],
|
|
18
|
+
'react/jsx-handler-names': 'off',
|
|
19
|
+
'react/jsx-key': [
|
|
20
|
+
'error',
|
|
21
|
+
{
|
|
22
|
+
checkFragmentShorthand: true,
|
|
23
|
+
checkKeyMustBeforeSpread: true,
|
|
24
|
+
warnOnDuplicates: true,
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
'react/jsx-max-depth': [
|
|
28
|
+
'error',
|
|
29
|
+
{
|
|
30
|
+
max: 10,
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
'react/jsx-no-comment-textnodes': 'error',
|
|
34
|
+
'react/jsx-no-duplicate-props': 'error',
|
|
35
|
+
'react/jsx-props-no-spread-multi': 'error',
|
|
36
|
+
'react/no-multi-comp': 'off',
|
|
37
|
+
'react/jsx-no-target-blank': [
|
|
38
|
+
'error',
|
|
39
|
+
{
|
|
40
|
+
enforceDynamicLinks: 'always',
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
'react/jsx-no-undef': 'error',
|
|
44
|
+
'react/jsx-curly-brace-presence': [
|
|
45
|
+
'error',
|
|
46
|
+
{
|
|
47
|
+
props: 'never',
|
|
48
|
+
children: 'never',
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
'react/jsx-pascal-case': [
|
|
52
|
+
'error',
|
|
53
|
+
{
|
|
54
|
+
allowAllCaps: false,
|
|
55
|
+
ignore: [],
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
'react/no-danger': 'error',
|
|
59
|
+
'react/jsx-props-no-spreading': 'off',
|
|
60
|
+
'react/jsx-no-useless-fragment': [
|
|
61
|
+
'error',
|
|
62
|
+
{
|
|
63
|
+
allowExpressions: true,
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
'react/jsx-no-script-url': 'error',
|
|
67
|
+
'react/button-has-type': [
|
|
68
|
+
'error',
|
|
69
|
+
{
|
|
70
|
+
button: true,
|
|
71
|
+
submit: true,
|
|
72
|
+
reset: true,
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
'react/checked-requires-onchange-or-readonly': 'error',
|
|
76
|
+
'react/display-name': 'off',
|
|
77
|
+
'react/forbid-dom-props': [
|
|
78
|
+
'error',
|
|
79
|
+
{
|
|
80
|
+
forbid: [
|
|
81
|
+
'abbr',
|
|
82
|
+
'align',
|
|
83
|
+
'axis',
|
|
84
|
+
'bgcolor',
|
|
85
|
+
'border',
|
|
86
|
+
'cellpadding',
|
|
87
|
+
'cellspacing',
|
|
88
|
+
'char',
|
|
89
|
+
'charoff',
|
|
90
|
+
'charset',
|
|
91
|
+
'clear',
|
|
92
|
+
'coords',
|
|
93
|
+
'frame',
|
|
94
|
+
'frameborder',
|
|
95
|
+
'hspace',
|
|
96
|
+
'longdesc',
|
|
97
|
+
'marginheight',
|
|
98
|
+
'marginwidth',
|
|
99
|
+
'rev',
|
|
100
|
+
'scope',
|
|
101
|
+
'scrolling',
|
|
102
|
+
'shape',
|
|
103
|
+
'size',
|
|
104
|
+
'valign',
|
|
105
|
+
'vspace',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
],
|
|
109
|
+
'react/forbid-elements': [
|
|
110
|
+
'error',
|
|
111
|
+
{
|
|
112
|
+
forbid: [
|
|
113
|
+
'acronym',
|
|
114
|
+
'applet',
|
|
115
|
+
'basefont',
|
|
116
|
+
'big',
|
|
117
|
+
'center',
|
|
118
|
+
'dir',
|
|
119
|
+
'font',
|
|
120
|
+
'frame',
|
|
121
|
+
'frameset',
|
|
122
|
+
'noframes',
|
|
123
|
+
'isindex',
|
|
124
|
+
'noframes',
|
|
125
|
+
's',
|
|
126
|
+
'strike',
|
|
127
|
+
'tt',
|
|
128
|
+
'u',
|
|
129
|
+
],
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
'react/forward-ref-uses-ref': 'error',
|
|
133
|
+
'react/iframe-missing-sandbox': 'error',
|
|
134
|
+
'react/no-array-index-key': 'error',
|
|
135
|
+
'react/no-children-prop': 'error',
|
|
136
|
+
'react/no-danger-with-children': 'error',
|
|
137
|
+
'react/no-did-mount-set-state': 'off',
|
|
138
|
+
'react/no-direct-mutation-state': 'error',
|
|
139
|
+
'react/no-find-dom-node': 'error',
|
|
140
|
+
'react/no-is-mounted': 'error',
|
|
141
|
+
'react/no-namespace': 'error',
|
|
142
|
+
'react/no-redundant-should-component-update': 'error',
|
|
143
|
+
'react/no-render-return-value': 'error',
|
|
144
|
+
'react/no-set-state': 'off',
|
|
145
|
+
'react/only-export-components': 'off',
|
|
146
|
+
'react/no-string-refs': 'error',
|
|
147
|
+
'react/no-this-in-sfc': 'error',
|
|
148
|
+
'react/no-unescaped-entities': 'error',
|
|
149
|
+
'react/no-unknown-property': 'error',
|
|
150
|
+
'react/no-unsafe': 'error',
|
|
151
|
+
'react/no-will-update-set-state': 'error',
|
|
152
|
+
'react/prefer-es6-class': ['error', 'always'],
|
|
153
|
+
'react/react-in-jsx-scope': 'off',
|
|
154
|
+
'require-render-return': 'error',
|
|
155
|
+
'react/self-closing-comp': 'error',
|
|
156
|
+
'react/style-prop-object': 'error',
|
|
157
|
+
'react/void-dom-elements-no-children': 'error',
|
|
158
|
+
'react/state-in-constructor': ['error', 'always'],
|
|
159
|
+
},
|
|
160
|
+
};
|
package/oxlint-config.json
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "./node_modules/oxlint/configuration_schema.json",
|
|
3
|
-
"plugins": ["jsx-a11y"],
|
|
4
|
-
"rules": {
|
|
5
|
-
"jsx-a11y/alt-text": [
|
|
6
|
-
"error",
|
|
7
|
-
{
|
|
8
|
-
"elements": ["img", "object", "area", "input[type='image']"],
|
|
9
|
-
"img": [],
|
|
10
|
-
"object": [],
|
|
11
|
-
"area": [],
|
|
12
|
-
"input[type='image']": []
|
|
13
|
-
}
|
|
14
|
-
],
|
|
15
|
-
"anchor-ambiguous-text": "off",
|
|
16
|
-
"jsx-a11y/anchor-has-content": "off",
|
|
17
|
-
"jsx-a11y/anchor-is-valid": [
|
|
18
|
-
"error",
|
|
19
|
-
{
|
|
20
|
-
"components": ["Anchor", "Link"],
|
|
21
|
-
"specialLink": ["to"],
|
|
22
|
-
"aspects": ["noHref", "invalidHref", "preferButton"]
|
|
23
|
-
}
|
|
24
|
-
],
|
|
25
|
-
"jsx-a11y/aria-activedescendant-has-tabindex": "error",
|
|
26
|
-
"jsx-a11y/aria-props": "error",
|
|
27
|
-
"jsx-a11y/aria-proptypes": "error",
|
|
28
|
-
"jsx-a11y/aria-role": [
|
|
29
|
-
"error",
|
|
30
|
-
{
|
|
31
|
-
"ignoreNonDOM": false
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
"jsx-a11y/aria-unsupported-elements": "error",
|
|
35
|
-
"jsx-a11y/autocomplete-valid": "error",
|
|
36
|
-
"jsx-a11y/click-events-have-key-events": "error",
|
|
37
|
-
"jsx-a11y/heading-has-content": [
|
|
38
|
-
"error",
|
|
39
|
-
{
|
|
40
|
-
"components": [""]
|
|
41
|
-
}
|
|
42
|
-
],
|
|
43
|
-
"jsx-a11y/html-has-lang": "error",
|
|
44
|
-
"jsx-a11y/iframe-has-title": "error",
|
|
45
|
-
"jsx-a11y/img-redundant-alt": "error",
|
|
46
|
-
"jsx-a11y/lang": "error",
|
|
47
|
-
"jsx-a11y/media-has-caption": [
|
|
48
|
-
"error",
|
|
49
|
-
{
|
|
50
|
-
"audio": [],
|
|
51
|
-
"video": [],
|
|
52
|
-
"track": []
|
|
53
|
-
}
|
|
54
|
-
],
|
|
55
|
-
"jsx-a11y/mouse-events-have-key-events": "error",
|
|
56
|
-
"jsx-a11y/no-access-key": "error",
|
|
57
|
-
"jsx-a11y/no-aria-hidden-on-focusable": "off",
|
|
58
|
-
"jsx-a11y/no-autofocus": [
|
|
59
|
-
"error",
|
|
60
|
-
{
|
|
61
|
-
"ignoreNonDOM": true
|
|
62
|
-
}
|
|
63
|
-
],
|
|
64
|
-
"jsx-a11y/no-distracting-elements": "error",
|
|
65
|
-
"jsx-a11y/no-noninteractive-tabindex": [
|
|
66
|
-
"error",
|
|
67
|
-
{
|
|
68
|
-
"tags": [],
|
|
69
|
-
"roles": ["tabpanel"]
|
|
70
|
-
}
|
|
71
|
-
],
|
|
72
|
-
"jsx-a11y/no-redundant-roles": "error",
|
|
73
|
-
"jsx-a11y/no-static-element-interactions": [
|
|
74
|
-
"error",
|
|
75
|
-
{
|
|
76
|
-
"handlers": [
|
|
77
|
-
"onClick",
|
|
78
|
-
"onMouseDown",
|
|
79
|
-
"onKeyPress",
|
|
80
|
-
"onKeyDown",
|
|
81
|
-
"onKeyUp"
|
|
82
|
-
]
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"jsx-a11y/role-has-required-aria-props": "error",
|
|
86
|
-
"jsx-a11y/role-supports-aria-props": "error",
|
|
87
|
-
"jsx-a11y/scope": "error",
|
|
88
|
-
"jsx-a11y/tabindex-no-positive": "error",
|
|
89
|
-
"jsx-a11y/label-has-associated-control": [
|
|
90
|
-
"error",
|
|
91
|
-
{
|
|
92
|
-
"labelComponents": [],
|
|
93
|
-
"labelAttributes": [],
|
|
94
|
-
"controlComponents": [],
|
|
95
|
-
"assert": "both",
|
|
96
|
-
"depth": 10
|
|
97
|
-
}
|
|
98
|
-
],
|
|
99
|
-
"jsx-a11y/prefer-tag-over-role": "error"
|
|
100
|
-
}
|
|
101
|
-
}
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "./node_modules/oxlint/configuration_schema.json",
|
|
3
|
-
"plugins": ["react"],
|
|
4
|
-
"rules": {
|
|
5
|
-
"react/jsx-boolean-value": [
|
|
6
|
-
"error",
|
|
7
|
-
"never",
|
|
8
|
-
{
|
|
9
|
-
"always": []
|
|
10
|
-
}
|
|
11
|
-
],
|
|
12
|
-
"react/jsx-filename-extension": [
|
|
13
|
-
"error",
|
|
14
|
-
{
|
|
15
|
-
"extensions": [".tsx"]
|
|
16
|
-
}
|
|
17
|
-
],
|
|
18
|
-
"react/jsx-fragments": ["error", "syntax"],
|
|
19
|
-
"react/jsx-handler-names": "off",
|
|
20
|
-
"react/jsx-key": [
|
|
21
|
-
"error",
|
|
22
|
-
{
|
|
23
|
-
"checkFragmentShorthand": true,
|
|
24
|
-
"checkKeyMustBeforeSpread": true,
|
|
25
|
-
"warnOnDuplicates": true
|
|
26
|
-
}
|
|
27
|
-
],
|
|
28
|
-
"react/jsx-max-depth": [
|
|
29
|
-
"error",
|
|
30
|
-
{
|
|
31
|
-
"max": 10
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
"react/jsx-no-comment-textnodes": "error",
|
|
35
|
-
"react/jsx-no-duplicate-props": "error",
|
|
36
|
-
"react/jsx-props-no-spread-multi": "error",
|
|
37
|
-
"react/no-multi-comp": "off",
|
|
38
|
-
"react/jsx-no-target-blank": [
|
|
39
|
-
"error",
|
|
40
|
-
{
|
|
41
|
-
"enforceDynamicLinks": "always"
|
|
42
|
-
}
|
|
43
|
-
],
|
|
44
|
-
"react/jsx-no-undef": "error",
|
|
45
|
-
"react/jsx-curly-brace-presence": [
|
|
46
|
-
"error",
|
|
47
|
-
{
|
|
48
|
-
"props": "never",
|
|
49
|
-
"children": "never"
|
|
50
|
-
}
|
|
51
|
-
],
|
|
52
|
-
"react/jsx-pascal-case": [
|
|
53
|
-
"error",
|
|
54
|
-
{
|
|
55
|
-
"allowAllCaps": false,
|
|
56
|
-
"ignore": []
|
|
57
|
-
}
|
|
58
|
-
],
|
|
59
|
-
"react/no-danger": "error",
|
|
60
|
-
"react/jsx-props-no-spreading": "off",
|
|
61
|
-
"react/jsx-no-useless-fragment": [
|
|
62
|
-
"error",
|
|
63
|
-
{
|
|
64
|
-
"allowExpressions": true
|
|
65
|
-
}
|
|
66
|
-
],
|
|
67
|
-
"react/jsx-no-script-url": "error",
|
|
68
|
-
"react/button-has-type": [
|
|
69
|
-
"error",
|
|
70
|
-
{
|
|
71
|
-
"button": true,
|
|
72
|
-
"submit": true,
|
|
73
|
-
"reset": true
|
|
74
|
-
}
|
|
75
|
-
],
|
|
76
|
-
"react/checked-requires-onchange-or-readonly": "error",
|
|
77
|
-
"react/display-name": "off",
|
|
78
|
-
"react/forbid-dom-props": [
|
|
79
|
-
"error",
|
|
80
|
-
{
|
|
81
|
-
"forbid": [
|
|
82
|
-
"abbr",
|
|
83
|
-
"align",
|
|
84
|
-
"axis",
|
|
85
|
-
"bgcolor",
|
|
86
|
-
"border",
|
|
87
|
-
"cellpadding",
|
|
88
|
-
"cellspacing",
|
|
89
|
-
"char",
|
|
90
|
-
"charoff",
|
|
91
|
-
"charset",
|
|
92
|
-
"clear",
|
|
93
|
-
"coords",
|
|
94
|
-
"frame",
|
|
95
|
-
"frameborder",
|
|
96
|
-
"hspace",
|
|
97
|
-
"longdesc",
|
|
98
|
-
"marginheight",
|
|
99
|
-
"marginwidth",
|
|
100
|
-
"rev",
|
|
101
|
-
"scope",
|
|
102
|
-
"scrolling",
|
|
103
|
-
"shape",
|
|
104
|
-
"size",
|
|
105
|
-
"valign",
|
|
106
|
-
"vspace"
|
|
107
|
-
]
|
|
108
|
-
}
|
|
109
|
-
],
|
|
110
|
-
"react/forbid-elements": [
|
|
111
|
-
"error",
|
|
112
|
-
{
|
|
113
|
-
"forbid": [
|
|
114
|
-
"acronym",
|
|
115
|
-
"applet",
|
|
116
|
-
"basefont",
|
|
117
|
-
"big",
|
|
118
|
-
"center",
|
|
119
|
-
"dir",
|
|
120
|
-
"font",
|
|
121
|
-
"frame",
|
|
122
|
-
"frameset",
|
|
123
|
-
"noframes",
|
|
124
|
-
"isindex",
|
|
125
|
-
"noframes",
|
|
126
|
-
"s",
|
|
127
|
-
"strike",
|
|
128
|
-
"tt",
|
|
129
|
-
"u"
|
|
130
|
-
]
|
|
131
|
-
}
|
|
132
|
-
],
|
|
133
|
-
"react/forward-ref-uses-ref": "error",
|
|
134
|
-
"react/iframe-missing-sandbox": "error",
|
|
135
|
-
"react/no-array-index-key": "error",
|
|
136
|
-
"react/no-children-prop": "error",
|
|
137
|
-
"react/no-danger-with-children": "error",
|
|
138
|
-
"react/no-did-mount-set-state": "off",
|
|
139
|
-
"react/no-direct-mutation-state": "error",
|
|
140
|
-
"react/no-find-dom-node": "error",
|
|
141
|
-
"react/no-is-mounted": "error",
|
|
142
|
-
"react/no-namespace": "error",
|
|
143
|
-
"react/no-redundant-should-component-update": "error",
|
|
144
|
-
"react/no-render-return-value": "error",
|
|
145
|
-
"react/no-set-state": "off",
|
|
146
|
-
"react/only-export-components": "off",
|
|
147
|
-
"react/no-string-refs": "error",
|
|
148
|
-
"react/no-this-in-sfc": "error",
|
|
149
|
-
"react/no-unescaped-entities": "error",
|
|
150
|
-
"react/no-unknown-property": "error",
|
|
151
|
-
"react/no-unsafe": "error",
|
|
152
|
-
"react/no-will-update-set-state": "error",
|
|
153
|
-
"react/prefer-es6-class": ["error", "always"],
|
|
154
|
-
"react/react-in-jsx-scope": "off",
|
|
155
|
-
"require-render-return": "error",
|
|
156
|
-
"react/self-closing-comp": "error",
|
|
157
|
-
"react/style-prop-object": "error",
|
|
158
|
-
"react/void-dom-elements-no-children": "error",
|
|
159
|
-
"react/state-in-constructor": ["error", "always"]
|
|
160
|
-
}
|
|
161
|
-
}
|