@eslint-react/eslint-plugin 3.0.0-next.8 → 3.0.0-next.81
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/README.md +15 -19
- package/dist/index.d.ts +4 -4
- package/dist/index.js +71 -141
- package/package.json +12 -12
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](https://npmjs.com/package/@eslint-react/eslint-plugin)
|
|
6
6
|
[](https://npmjs.com/package/@eslint-react/eslint-plugin)
|
|
7
7
|
[](https://npmjs.com/package/@eslint-react/eslint-plugin)
|
|
8
|
-
[](https://tsdown.dev)
|
|
9
9
|
|
|
10
10
|
4-7x faster, composable ESLint rules for React and friends.
|
|
11
11
|
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
- [Table of Contents](#table-of-contents)
|
|
15
15
|
- [Features](#features)
|
|
16
16
|
- [Public Packages](#public-packages)
|
|
17
|
-
- [Unified ESLint Plugin](#unified-eslint-plugin)
|
|
18
17
|
- [Modular ESLint Plugins](#modular-eslint-plugins)
|
|
18
|
+
- [Unified ESLint Plugin](#unified-eslint-plugin)
|
|
19
19
|
- [Installation](#installation)
|
|
20
20
|
- [Install](#install)
|
|
21
21
|
- [Setup](#setup)
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
- [Rules](#rules)
|
|
29
29
|
- [Benchmark](#benchmark)
|
|
30
30
|
- [FAQ](#faq)
|
|
31
|
+
- [Changelog](#changelog)
|
|
31
32
|
- [Roadmap](#roadmap)
|
|
32
33
|
- [Disclaimer](#disclaimer)
|
|
33
34
|
- [Contributing](#contributing)
|
|
@@ -42,10 +43,6 @@
|
|
|
42
43
|
|
|
43
44
|
## Public Packages
|
|
44
45
|
|
|
45
|
-
### Unified ESLint Plugin
|
|
46
|
-
|
|
47
|
-
- [`@eslint-react/eslint-plugin`](https://npmx.dev/package/@eslint-react/eslint-plugin) - A unified plugin that combines all individual plugins into one.
|
|
48
|
-
|
|
49
46
|
### Modular ESLint Plugins
|
|
50
47
|
|
|
51
48
|
- [`eslint-plugin-react-x`](https://npmx.dev/package/eslint-plugin-react-x) - X rules (renderer-agnostic, compatible with x-platform).
|
|
@@ -54,6 +51,10 @@
|
|
|
54
51
|
- [`eslint-plugin-react-web-api`](https://npmx.dev/package/eslint-plugin-react-web-api) - Rules for interacting with Web APIs.
|
|
55
52
|
- [`eslint-plugin-react-naming-convention`](https://npmx.dev/package/eslint-plugin-react-naming-convention) - Naming convention rules.
|
|
56
53
|
|
|
54
|
+
### Unified ESLint Plugin
|
|
55
|
+
|
|
56
|
+
- [`@eslint-react/eslint-plugin`](https://npmx.dev/package/@eslint-react/eslint-plugin) - A unified plugin that combines all individual plugins into one.
|
|
57
|
+
|
|
57
58
|
> [!NOTE]\
|
|
58
59
|
> Don't know which one to use? See our [FAQ](https://eslint-react.xyz/docs/faq#which-one-should-i-use-unified-plugin-or-individual-plugins) for guidance.
|
|
59
60
|
|
|
@@ -62,8 +63,8 @@
|
|
|
62
63
|
> [!NOTE]\
|
|
63
64
|
> ESLint React requires the following minimum versions:
|
|
64
65
|
>
|
|
65
|
-
> - Node.js:
|
|
66
|
-
> - ESLint:
|
|
66
|
+
> - Node.js: 22.0.0
|
|
67
|
+
> - ESLint: 10.0.0
|
|
67
68
|
> - TypeScript: 5.0.0
|
|
68
69
|
|
|
69
70
|
### Install
|
|
@@ -153,17 +154,6 @@ export default defineConfig(
|
|
|
153
154
|
- `strict-type-checked`\
|
|
154
155
|
Same as the `strict-typescript` preset but enables additional rules that require type information.
|
|
155
156
|
|
|
156
|
-
### Category Based
|
|
157
|
-
|
|
158
|
-
<!-- TODO: Add hooks and performance presets later -->
|
|
159
|
-
<!-- - `hooks`\ -->
|
|
160
|
-
<!-- Enable all rules related to React Hooks. -->
|
|
161
|
-
<!-- - `performance`\ -->
|
|
162
|
-
<!-- Enable all rules related to React performance optimizations. -->
|
|
163
|
-
|
|
164
|
-
- `no-deprecated`\
|
|
165
|
-
Enable all rules that disallow deprecated React APIs with "error" severity.
|
|
166
|
-
|
|
167
157
|
### Other
|
|
168
158
|
|
|
169
159
|
- `disable-rsc`\
|
|
@@ -178,6 +168,8 @@ export default defineConfig(
|
|
|
178
168
|
Disable rules that require type information.
|
|
179
169
|
- `disable-conflict-eslint-plugin-react`\
|
|
180
170
|
Disable rules in `eslint-plugin-react` that conflict with rules in our plugins.
|
|
171
|
+
- `disable-conflict-eslint-plugin-react-hooks`\
|
|
172
|
+
Disable rules in `eslint-plugin-react-hooks` that conflict with rules in our plugins.
|
|
181
173
|
- `off`\
|
|
182
174
|
Disable all rules in this plugin except for debug rules.
|
|
183
175
|
|
|
@@ -195,6 +187,10 @@ export default defineConfig(
|
|
|
195
187
|
|
|
196
188
|
[Frequently Asked Questions ↗](https://eslint-react.xyz/docs/faq)
|
|
197
189
|
|
|
190
|
+
## Changelog
|
|
191
|
+
|
|
192
|
+
[Changelog ↗](https://www.eslint-react.xyz/docs/changelog)
|
|
193
|
+
|
|
198
194
|
## Roadmap
|
|
199
195
|
|
|
200
196
|
- [Milestone 3.0 ↗](https://eslint-react.xyz/docs/roadmap#milestone-30-tbd)
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ESLint, Linter } from "eslint";
|
|
2
2
|
|
|
3
3
|
//#region src/index.d.ts
|
|
4
|
-
type ConfigName = "all" | "disable-conflict-eslint-plugin-react" | "disable-dom" | "disable-rsc" | "disable-experimental" | "disable-type-checked" | "disable-web-api" | "dom" | "rsc" | "
|
|
5
|
-
declare const plugin:
|
|
4
|
+
type ConfigName = "all" | "disable-conflict-eslint-plugin-react" | "disable-conflict-eslint-plugin-react-hooks" | "disable-dom" | "disable-rsc" | "disable-experimental" | "disable-type-checked" | "disable-web-api" | "dom" | "rsc" | "off" | "recommended" | "recommended-type-checked" | "recommended-typescript" | "strict" | "strict-type-checked" | "strict-typescript" | "web-api" | "x";
|
|
5
|
+
declare const plugin: ESLint.Plugin & {
|
|
6
6
|
/**
|
|
7
7
|
* For more information about each preset, please refer to the documentation.
|
|
8
8
|
* @see https://eslint-react.xyz/docs/presets
|
|
9
9
|
*/
|
|
10
|
-
configs: Record<ConfigName,
|
|
10
|
+
configs: Record<ConfigName, Linter.Config>;
|
|
11
11
|
};
|
|
12
12
|
//#endregion
|
|
13
13
|
export { plugin as default };
|
package/dist/index.js
CHANGED
|
@@ -24,13 +24,13 @@ var __exportAll = (all, no_symbols) => {
|
|
|
24
24
|
//#endregion
|
|
25
25
|
//#region package.json
|
|
26
26
|
var name$19 = "@eslint-react/eslint-plugin";
|
|
27
|
-
var version = "3.0.0-next.
|
|
27
|
+
var version = "3.0.0-next.81";
|
|
28
28
|
|
|
29
29
|
//#endregion
|
|
30
30
|
//#region src/configs/dom.ts
|
|
31
31
|
var dom_exports = /* @__PURE__ */ __exportAll({
|
|
32
32
|
name: () => name$18,
|
|
33
|
-
plugins: () => plugins$
|
|
33
|
+
plugins: () => plugins$10,
|
|
34
34
|
rules: () => rules$19
|
|
35
35
|
});
|
|
36
36
|
const name$18 = "@eslint-react/dom";
|
|
@@ -48,24 +48,24 @@ const rules$19 = {
|
|
|
48
48
|
"@eslint-react/dom/no-use-form-state": "error",
|
|
49
49
|
"@eslint-react/dom/no-void-elements-with-children": "error"
|
|
50
50
|
};
|
|
51
|
-
const plugins$
|
|
51
|
+
const plugins$10 = { "@eslint-react/dom": reactDom };
|
|
52
52
|
|
|
53
53
|
//#endregion
|
|
54
54
|
//#region src/configs/rsc.ts
|
|
55
55
|
var rsc_exports = /* @__PURE__ */ __exportAll({
|
|
56
56
|
name: () => name$17,
|
|
57
|
-
plugins: () => plugins$
|
|
57
|
+
plugins: () => plugins$9,
|
|
58
58
|
rules: () => rules$18
|
|
59
59
|
});
|
|
60
60
|
const name$17 = "@eslint-react/rsc";
|
|
61
61
|
const rules$18 = { "@eslint-react/rsc/function-definition": "error" };
|
|
62
|
-
const plugins$
|
|
62
|
+
const plugins$9 = { "@eslint-react/rsc": reactRsc };
|
|
63
63
|
|
|
64
64
|
//#endregion
|
|
65
65
|
//#region src/configs/x.ts
|
|
66
66
|
var x_exports = /* @__PURE__ */ __exportAll({
|
|
67
67
|
name: () => name$16,
|
|
68
|
-
plugins: () => plugins$
|
|
68
|
+
plugins: () => plugins$8,
|
|
69
69
|
rules: () => rules$17,
|
|
70
70
|
settings: () => settings$8
|
|
71
71
|
});
|
|
@@ -76,9 +76,6 @@ const rules$17 = {
|
|
|
76
76
|
"@eslint-react/exhaustive-deps": "warn",
|
|
77
77
|
"@eslint-react/jsx-key-before-spread": "warn",
|
|
78
78
|
"@eslint-react/jsx-no-comment-textnodes": "warn",
|
|
79
|
-
"@eslint-react/jsx-no-duplicate-props": "warn",
|
|
80
|
-
"@eslint-react/jsx-uses-react": "warn",
|
|
81
|
-
"@eslint-react/jsx-uses-vars": "warn",
|
|
82
79
|
"@eslint-react/no-access-state-in-setstate": "error",
|
|
83
80
|
"@eslint-react/no-array-index-key": "warn",
|
|
84
81
|
"@eslint-react/no-children-count": "warn",
|
|
@@ -107,21 +104,22 @@ const rules$17 = {
|
|
|
107
104
|
"@eslint-react/no-unsafe-component-will-update": "warn",
|
|
108
105
|
"@eslint-react/no-unused-class-component-members": "warn",
|
|
109
106
|
"@eslint-react/no-use-context": "warn",
|
|
110
|
-
"@eslint-react/no-useless-forward-ref": "warn",
|
|
111
|
-
"@eslint-react/prefer-use-state-lazy-initialization": "warn",
|
|
112
107
|
"@eslint-react/purity": "warn",
|
|
113
108
|
"@eslint-react/rules-of-hooks": "error",
|
|
114
109
|
"@eslint-react/set-state-in-effect": "warn",
|
|
115
|
-
"@eslint-react/set-state-in-render": "error"
|
|
110
|
+
"@eslint-react/set-state-in-render": "error",
|
|
111
|
+
"@eslint-react/unsupported-syntax": "error",
|
|
112
|
+
"@eslint-react/use-memo": "error",
|
|
113
|
+
"@eslint-react/use-state": "warn"
|
|
116
114
|
};
|
|
117
|
-
const plugins$
|
|
115
|
+
const plugins$8 = { "@eslint-react": react };
|
|
118
116
|
const settings$8 = { "react-x": DEFAULT_ESLINT_REACT_SETTINGS };
|
|
119
117
|
|
|
120
118
|
//#endregion
|
|
121
119
|
//#region src/configs/all.ts
|
|
122
120
|
var all_exports = /* @__PURE__ */ __exportAll({
|
|
123
121
|
name: () => name$15,
|
|
124
|
-
plugins: () => plugins$
|
|
122
|
+
plugins: () => plugins$7,
|
|
125
123
|
rules: () => rules$16,
|
|
126
124
|
settings: () => settings$7
|
|
127
125
|
});
|
|
@@ -130,16 +128,12 @@ const rules$16 = {
|
|
|
130
128
|
"@eslint-react/component-hook-factories": "error",
|
|
131
129
|
"@eslint-react/error-boundaries": "error",
|
|
132
130
|
"@eslint-react/exhaustive-deps": "warn",
|
|
131
|
+
"@eslint-react/immutability": "error",
|
|
133
132
|
"@eslint-react/jsx-dollar": "warn",
|
|
134
133
|
"@eslint-react/jsx-key-before-spread": "warn",
|
|
135
134
|
"@eslint-react/jsx-no-comment-textnodes": "warn",
|
|
136
|
-
"@eslint-react/jsx-no-duplicate-props": "warn",
|
|
137
|
-
"@eslint-react/jsx-no-iife": "warn",
|
|
138
|
-
"@eslint-react/jsx-no-undef": "error",
|
|
139
135
|
"@eslint-react/jsx-shorthand-boolean": "warn",
|
|
140
136
|
"@eslint-react/jsx-shorthand-fragment": "warn",
|
|
141
|
-
"@eslint-react/jsx-uses-react": "warn",
|
|
142
|
-
"@eslint-react/jsx-uses-vars": "warn",
|
|
143
137
|
"@eslint-react/no-access-state-in-setstate": "error",
|
|
144
138
|
"@eslint-react/no-array-index-key": "warn",
|
|
145
139
|
"@eslint-react/no-children-count": "warn",
|
|
@@ -179,14 +173,17 @@ const rules$16 = {
|
|
|
179
173
|
"@eslint-react/no-unused-class-component-members": "warn",
|
|
180
174
|
"@eslint-react/no-unused-state": "warn",
|
|
181
175
|
"@eslint-react/no-use-context": "warn",
|
|
182
|
-
"@eslint-react/no-useless-forward-ref": "warn",
|
|
183
176
|
"@eslint-react/no-useless-fragment": "warn",
|
|
184
177
|
"@eslint-react/prefer-destructuring-assignment": "warn",
|
|
185
178
|
"@eslint-react/prefer-namespace-import": "warn",
|
|
186
|
-
"@eslint-react/prefer-use-state-lazy-initialization": "warn",
|
|
187
179
|
"@eslint-react/purity": "warn",
|
|
180
|
+
"@eslint-react/refs": "error",
|
|
188
181
|
"@eslint-react/rules-of-hooks": "error",
|
|
189
182
|
"@eslint-react/set-state-in-effect": "warn",
|
|
183
|
+
"@eslint-react/set-state-in-render": "error",
|
|
184
|
+
"@eslint-react/unsupported-syntax": "error",
|
|
185
|
+
"@eslint-react/use-memo": "error",
|
|
186
|
+
"@eslint-react/use-state": "warn",
|
|
190
187
|
"@eslint-react/dom/no-dangerously-set-innerhtml": "warn",
|
|
191
188
|
"@eslint-react/dom/no-dangerously-set-innerhtml-with-children": "error",
|
|
192
189
|
"@eslint-react/dom/no-find-dom-node": "error",
|
|
@@ -210,16 +207,14 @@ const rules$16 = {
|
|
|
210
207
|
"@eslint-react/web-api/no-leaked-interval": "warn",
|
|
211
208
|
"@eslint-react/web-api/no-leaked-resize-observer": "warn",
|
|
212
209
|
"@eslint-react/web-api/no-leaked-timeout": "warn",
|
|
213
|
-
"@eslint-react/naming-convention/component-name": "warn",
|
|
214
210
|
"@eslint-react/naming-convention/context-name": "warn",
|
|
215
211
|
"@eslint-react/naming-convention/id-name": "warn",
|
|
216
|
-
"@eslint-react/naming-convention/ref-name": "warn"
|
|
217
|
-
"@eslint-react/naming-convention/use-state": "warn"
|
|
212
|
+
"@eslint-react/naming-convention/ref-name": "warn"
|
|
218
213
|
};
|
|
219
|
-
const plugins$
|
|
214
|
+
const plugins$7 = {
|
|
215
|
+
...plugins$8,
|
|
220
216
|
...plugins$9,
|
|
221
217
|
...plugins$10,
|
|
222
|
-
...plugins$11,
|
|
223
218
|
"@eslint-react/naming-convention": reactNamingConvention,
|
|
224
219
|
"@eslint-react/web-api": reactWebApi
|
|
225
220
|
};
|
|
@@ -231,159 +226,101 @@ var disable_conflict_eslint_plugin_react_exports = /* @__PURE__ */ __exportAll({
|
|
|
231
226
|
name: () => name$14,
|
|
232
227
|
rules: () => rules$15
|
|
233
228
|
});
|
|
234
|
-
const conflictingRules = [
|
|
235
|
-
"react/button-has-type",
|
|
236
|
-
"react/destructuring-assignment",
|
|
237
|
-
"react/display-name",
|
|
238
|
-
"react/forbid-prop-types",
|
|
239
|
-
"react/forward-ref-uses-ref",
|
|
240
|
-
"react/hook-use-state",
|
|
241
|
-
"react/iframe-missing-sandbox",
|
|
242
|
-
"react/jsx-boolean-value",
|
|
243
|
-
"react/jsx-filename-extension",
|
|
244
|
-
"react/jsx-fragments",
|
|
245
|
-
"react/jsx-key",
|
|
246
|
-
"react/jsx-no-comment-textnodes",
|
|
247
|
-
"react/jsx-no-constructed-context-values",
|
|
248
|
-
"react/jsx-no-duplicate-props",
|
|
249
|
-
"react/jsx-no-leaked-render",
|
|
250
|
-
"react/jsx-no-script-url",
|
|
251
|
-
"react/jsx-no-target-blank",
|
|
252
|
-
"react/jsx-no-undef",
|
|
253
|
-
"react/jsx-no-useless-fragment",
|
|
254
|
-
"react/jsx-pascal-case",
|
|
255
|
-
"react/jsx-uses-react",
|
|
256
|
-
"react/jsx-uses-vars",
|
|
257
|
-
"react/no-access-state-in-setstate",
|
|
258
|
-
"react/no-array-index-key",
|
|
259
|
-
"react/no-children-prop",
|
|
260
|
-
"react/no-danger",
|
|
261
|
-
"react/no-danger-with-children",
|
|
262
|
-
"react/no-deprecated",
|
|
263
|
-
"react/no-did-mount-set-state",
|
|
264
|
-
"react/no-did-update-set-state",
|
|
265
|
-
"react/no-direct-mutation-state",
|
|
266
|
-
"react/no-find-dom-node",
|
|
267
|
-
"react/no-namespace",
|
|
268
|
-
"react/no-object-type-as-default-prop",
|
|
269
|
-
"react/no-redundant-should-component-update",
|
|
270
|
-
"react/no-render-return-value",
|
|
271
|
-
"react/no-string-refs",
|
|
272
|
-
"react/no-unknown-property",
|
|
273
|
-
"react/no-unsafe",
|
|
274
|
-
"react/no-unstable-nested-components",
|
|
275
|
-
"react/no-unused-class-component-members",
|
|
276
|
-
"react/no-unused-state",
|
|
277
|
-
"react/no-will-update-set-state",
|
|
278
|
-
"react/prefer-read-only-props",
|
|
279
|
-
"react/prop-types",
|
|
280
|
-
"react/void-dom-elements-no-children"
|
|
281
|
-
];
|
|
282
229
|
const name$14 = "@eslint-react/disable-conflict-eslint-plugin-react";
|
|
283
|
-
const rules$15 =
|
|
230
|
+
const rules$15 = react.configs["disable-conflict-eslint-plugin-react"].rules ?? {};
|
|
284
231
|
|
|
285
232
|
//#endregion
|
|
286
|
-
//#region src/configs/disable-
|
|
287
|
-
var
|
|
233
|
+
//#region src/configs/disable-conflict-eslint-plugin-react-hooks.ts
|
|
234
|
+
var disable_conflict_eslint_plugin_react_hooks_exports = /* @__PURE__ */ __exportAll({
|
|
288
235
|
name: () => name$13,
|
|
289
236
|
rules: () => rules$14
|
|
290
237
|
});
|
|
291
|
-
const name$13 = "@eslint-react/disable-
|
|
292
|
-
const rules$14 =
|
|
238
|
+
const name$13 = "@eslint-react/disable-conflict-eslint-plugin-react-hooks";
|
|
239
|
+
const rules$14 = react.configs["disable-conflict-eslint-plugin-react-hooks"].rules ?? {};
|
|
293
240
|
|
|
294
241
|
//#endregion
|
|
295
|
-
//#region src/configs/disable-
|
|
296
|
-
var
|
|
242
|
+
//#region src/configs/disable-dom.ts
|
|
243
|
+
var disable_dom_exports = /* @__PURE__ */ __exportAll({
|
|
297
244
|
name: () => name$12,
|
|
298
245
|
rules: () => rules$13
|
|
299
246
|
});
|
|
300
|
-
const name$12 = "@eslint-react/disable-
|
|
301
|
-
const rules$13 =
|
|
247
|
+
const name$12 = "@eslint-react/disable-dom";
|
|
248
|
+
const rules$13 = Object.fromEntries(Object.entries(rules$19).map(([key]) => [key, "off"]));
|
|
249
|
+
|
|
250
|
+
//#endregion
|
|
251
|
+
//#region src/configs/disable-experimental.ts
|
|
252
|
+
var disable_experimental_exports = /* @__PURE__ */ __exportAll({
|
|
253
|
+
name: () => name$11,
|
|
254
|
+
rules: () => rules$12
|
|
255
|
+
});
|
|
256
|
+
const name$11 = "@eslint-react/disable-experimental";
|
|
257
|
+
const rules$12 = {
|
|
258
|
+
"@eslint-react/immutability": "off",
|
|
302
259
|
"@eslint-react/jsx-key-before-spread": "off",
|
|
303
|
-
"@eslint-react/jsx-no-iife": "off",
|
|
304
260
|
"@eslint-react/no-duplicate-key": "off",
|
|
261
|
+
"@eslint-react/no-implicit-children": "off",
|
|
305
262
|
"@eslint-react/no-implicit-key": "off",
|
|
263
|
+
"@eslint-react/no-implicit-ref": "off",
|
|
306
264
|
"@eslint-react/no-misused-capture-owner-stack": "off",
|
|
307
265
|
"@eslint-react/no-unnecessary-use-callback": "off",
|
|
308
266
|
"@eslint-react/no-unnecessary-use-memo": "off",
|
|
309
267
|
"@eslint-react/no-unused-props": "off",
|
|
310
|
-
"@eslint-react/
|
|
268
|
+
"@eslint-react/refs": "off",
|
|
269
|
+
"@eslint-react/set-state-in-render": "off",
|
|
270
|
+
"@eslint-react/unstable-rules-of-props": "off",
|
|
311
271
|
"@eslint-react/rsc/function-definition": "off"
|
|
312
272
|
};
|
|
313
273
|
|
|
314
274
|
//#endregion
|
|
315
275
|
//#region src/configs/disable-rsc.ts
|
|
316
276
|
var disable_rsc_exports = /* @__PURE__ */ __exportAll({
|
|
317
|
-
name: () => name$
|
|
318
|
-
rules: () => rules$
|
|
277
|
+
name: () => name$10,
|
|
278
|
+
rules: () => rules$11
|
|
319
279
|
});
|
|
320
|
-
const name$
|
|
321
|
-
const rules$
|
|
280
|
+
const name$10 = "@eslint-react/disable-rsc";
|
|
281
|
+
const rules$11 = Object.fromEntries(Object.entries(rules$18).map(([key]) => [key, "off"]));
|
|
322
282
|
|
|
323
283
|
//#endregion
|
|
324
284
|
//#region src/configs/disable-type-checked.ts
|
|
325
285
|
var disable_type_checked_exports = /* @__PURE__ */ __exportAll({
|
|
326
|
-
name: () => name$
|
|
327
|
-
rules: () => rules$
|
|
286
|
+
name: () => name$9,
|
|
287
|
+
rules: () => rules$10
|
|
328
288
|
});
|
|
329
|
-
const name$
|
|
330
|
-
const rules$
|
|
289
|
+
const name$9 = "@eslint-react/disable-type-checked";
|
|
290
|
+
const rules$10 = {
|
|
291
|
+
"@eslint-react/no-implicit-children": "off",
|
|
331
292
|
"@eslint-react/no-implicit-key": "off",
|
|
293
|
+
"@eslint-react/no-implicit-ref": "off",
|
|
332
294
|
"@eslint-react/no-leaked-conditional-rendering": "off",
|
|
333
|
-
"@eslint-react/no-unused-props": "off"
|
|
334
|
-
"@eslint-react/prefer-read-only-props": "off"
|
|
295
|
+
"@eslint-react/no-unused-props": "off"
|
|
335
296
|
};
|
|
336
297
|
|
|
337
298
|
//#endregion
|
|
338
299
|
//#region src/configs/web-api.ts
|
|
339
300
|
var web_api_exports = /* @__PURE__ */ __exportAll({
|
|
340
|
-
name: () => name$
|
|
341
|
-
plugins: () => plugins$
|
|
342
|
-
rules: () => rules$
|
|
301
|
+
name: () => name$8,
|
|
302
|
+
plugins: () => plugins$6,
|
|
303
|
+
rules: () => rules$9,
|
|
343
304
|
settings: () => settings$6
|
|
344
305
|
});
|
|
345
|
-
const name$
|
|
346
|
-
const rules$
|
|
306
|
+
const name$8 = "@eslint-react/web-api";
|
|
307
|
+
const rules$9 = {
|
|
347
308
|
"@eslint-react/web-api/no-leaked-event-listener": "warn",
|
|
348
309
|
"@eslint-react/web-api/no-leaked-interval": "warn",
|
|
349
310
|
"@eslint-react/web-api/no-leaked-resize-observer": "warn",
|
|
350
311
|
"@eslint-react/web-api/no-leaked-timeout": "warn"
|
|
351
312
|
};
|
|
352
|
-
const plugins$
|
|
313
|
+
const plugins$6 = { "@eslint-react/web-api": reactWebApi };
|
|
353
314
|
const settings$6 = { ...settings$8 };
|
|
354
315
|
|
|
355
316
|
//#endregion
|
|
356
317
|
//#region src/configs/disable-web-api.ts
|
|
357
318
|
var disable_web_api_exports = /* @__PURE__ */ __exportAll({
|
|
358
|
-
name: () => name$8,
|
|
359
|
-
rules: () => rules$9
|
|
360
|
-
});
|
|
361
|
-
const name$8 = "@eslint-react/disable-web-api";
|
|
362
|
-
const rules$9 = Object.fromEntries(Object.entries(rules$10).map(([key]) => [key, "off"]));
|
|
363
|
-
|
|
364
|
-
//#endregion
|
|
365
|
-
//#region src/configs/no-deprecated.ts
|
|
366
|
-
var no_deprecated_exports = /* @__PURE__ */ __exportAll({
|
|
367
319
|
name: () => name$7,
|
|
368
|
-
plugins: () => plugins$6,
|
|
369
320
|
rules: () => rules$8
|
|
370
321
|
});
|
|
371
|
-
const name$7 = "@eslint-react/
|
|
372
|
-
const rules$8 =
|
|
373
|
-
"@eslint-react/no-component-will-mount": "error",
|
|
374
|
-
"@eslint-react/no-component-will-receive-props": "error",
|
|
375
|
-
"@eslint-react/no-component-will-update": "error",
|
|
376
|
-
"@eslint-react/no-create-ref": "error",
|
|
377
|
-
"@eslint-react/no-forward-ref": "error",
|
|
378
|
-
"@eslint-react/dom/no-find-dom-node": "error",
|
|
379
|
-
"@eslint-react/dom/no-hydrate": "error",
|
|
380
|
-
"@eslint-react/dom/no-render": "error",
|
|
381
|
-
"@eslint-react/dom/no-render-return-value": "error"
|
|
382
|
-
};
|
|
383
|
-
const plugins$6 = {
|
|
384
|
-
...plugins$9,
|
|
385
|
-
...plugins$11
|
|
386
|
-
};
|
|
322
|
+
const name$7 = "@eslint-react/disable-web-api";
|
|
323
|
+
const rules$8 = Object.fromEntries(Object.entries(rules$9).map(([key]) => [key, "off"]));
|
|
387
324
|
|
|
388
325
|
//#endregion
|
|
389
326
|
//#region src/configs/off.ts
|
|
@@ -394,7 +331,7 @@ var off_exports = /* @__PURE__ */ __exportAll({
|
|
|
394
331
|
const name$6 = "@eslint-react/off";
|
|
395
332
|
const rules$7 = {
|
|
396
333
|
...Object.fromEntries(Object.entries(rules$16).map(([key]) => [key, "off"])),
|
|
397
|
-
...rules$
|
|
334
|
+
...rules$10
|
|
398
335
|
};
|
|
399
336
|
|
|
400
337
|
//#endregion
|
|
@@ -410,17 +347,17 @@ const rules$6 = {
|
|
|
410
347
|
...rules$17,
|
|
411
348
|
...rules$18,
|
|
412
349
|
...rules$19,
|
|
413
|
-
...rules$
|
|
350
|
+
...rules$9,
|
|
414
351
|
"@eslint-react/naming-convention/context-name": "warn",
|
|
415
352
|
"@eslint-react/naming-convention/id-name": "warn",
|
|
416
353
|
"@eslint-react/naming-convention/ref-name": "warn",
|
|
417
|
-
"@eslint-react/
|
|
354
|
+
"@eslint-react/use-state": "warn"
|
|
418
355
|
};
|
|
419
356
|
const plugins$5 = {
|
|
357
|
+
...plugins$8,
|
|
420
358
|
...plugins$9,
|
|
421
359
|
...plugins$10,
|
|
422
|
-
...plugins$
|
|
423
|
-
...plugins$7,
|
|
360
|
+
...plugins$6,
|
|
424
361
|
"@eslint-react/naming-convention": reactNamingConvention
|
|
425
362
|
};
|
|
426
363
|
const settings$5 = { ...settings$8 };
|
|
@@ -432,11 +369,7 @@ const settings$5 = { ...settings$8 };
|
|
|
432
369
|
*/
|
|
433
370
|
const rules$5 = {
|
|
434
371
|
"@eslint-react/dom/no-string-style-prop": "off",
|
|
435
|
-
"@eslint-react/dom/no-unknown-property": "off"
|
|
436
|
-
"@eslint-react/jsx-no-duplicate-props": "off",
|
|
437
|
-
"@eslint-react/jsx-no-undef": "off",
|
|
438
|
-
"@eslint-react/jsx-uses-react": "off",
|
|
439
|
-
"@eslint-react/jsx-uses-vars": "off"
|
|
372
|
+
"@eslint-react/dom/no-unknown-property": "off"
|
|
440
373
|
};
|
|
441
374
|
|
|
442
375
|
//#endregion
|
|
@@ -466,7 +399,6 @@ var recommended_type_checked_exports = /* @__PURE__ */ __exportAll({
|
|
|
466
399
|
const name$3 = "@eslint-react/recommended-type-checked";
|
|
467
400
|
const rules$3 = {
|
|
468
401
|
...rules$4,
|
|
469
|
-
"@eslint-react/no-implicit-key": "error",
|
|
470
402
|
"@eslint-react/no-leaked-conditional-rendering": "error"
|
|
471
403
|
};
|
|
472
404
|
const plugins$3 = { ...plugins$4 };
|
|
@@ -483,7 +415,6 @@ var strict_exports = /* @__PURE__ */ __exportAll({
|
|
|
483
415
|
const name$2 = "@eslint-react/strict";
|
|
484
416
|
const rules$2 = {
|
|
485
417
|
...rules$6,
|
|
486
|
-
"@eslint-react/jsx-no-iife": "error",
|
|
487
418
|
"@eslint-react/no-children-prop": "error",
|
|
488
419
|
"@eslint-react/no-class-component": "error",
|
|
489
420
|
"@eslint-react/no-misused-capture-owner-stack": "error",
|
|
@@ -528,7 +459,6 @@ var strict_type_checked_exports = /* @__PURE__ */ __exportAll({
|
|
|
528
459
|
const name = "@eslint-react/strict-type-checked";
|
|
529
460
|
const rules = {
|
|
530
461
|
...rules$1,
|
|
531
|
-
"@eslint-react/no-implicit-key": "error",
|
|
532
462
|
"@eslint-react/no-leaked-conditional-rendering": "error",
|
|
533
463
|
"@eslint-react/no-unused-props": "warn"
|
|
534
464
|
};
|
|
@@ -545,13 +475,13 @@ const plugin = {
|
|
|
545
475
|
configs: {
|
|
546
476
|
["all"]: all_exports,
|
|
547
477
|
["disable-conflict-eslint-plugin-react"]: disable_conflict_eslint_plugin_react_exports,
|
|
478
|
+
["disable-conflict-eslint-plugin-react-hooks"]: disable_conflict_eslint_plugin_react_hooks_exports,
|
|
548
479
|
["disable-dom"]: disable_dom_exports,
|
|
549
480
|
["disable-experimental"]: disable_experimental_exports,
|
|
550
481
|
["disable-rsc"]: disable_rsc_exports,
|
|
551
482
|
["disable-type-checked"]: disable_type_checked_exports,
|
|
552
483
|
["disable-web-api"]: disable_web_api_exports,
|
|
553
484
|
["dom"]: dom_exports,
|
|
554
|
-
["no-deprecated"]: no_deprecated_exports,
|
|
555
485
|
["off"]: off_exports,
|
|
556
486
|
["recommended"]: recommended_exports,
|
|
557
487
|
["recommended-type-checked"]: recommended_type_checked_exports,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eslint-react/eslint-plugin",
|
|
3
|
-
"version": "3.0.0-next.
|
|
3
|
+
"version": "3.0.0-next.81",
|
|
4
4
|
"description": "A unified plugin that combines all individual plugins from the eslint-react monorepo into one.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -46,21 +46,21 @@
|
|
|
46
46
|
"@typescript-eslint/types": "canary",
|
|
47
47
|
"@typescript-eslint/utils": "canary",
|
|
48
48
|
"ts-api-utils": "^2.4.0",
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"eslint-
|
|
52
|
-
"eslint-plugin-react-rsc": "3.0.0-next.
|
|
53
|
-
"eslint-plugin-react-
|
|
54
|
-
"eslint-plugin-react-
|
|
55
|
-
"eslint-plugin-react-x": "3.0.0-next.8"
|
|
49
|
+
"eslint-plugin-react-dom": "3.0.0-next.81",
|
|
50
|
+
"eslint-plugin-react-naming-convention": "3.0.0-next.81",
|
|
51
|
+
"@eslint-react/shared": "3.0.0-next.81",
|
|
52
|
+
"eslint-plugin-react-rsc": "3.0.0-next.81",
|
|
53
|
+
"eslint-plugin-react-web-api": "3.0.0-next.81",
|
|
54
|
+
"eslint-plugin-react-x": "3.0.0-next.81"
|
|
56
55
|
},
|
|
57
56
|
"devDependencies": {
|
|
58
|
-
"tsdown": "^0.
|
|
57
|
+
"tsdown": "^0.21.0",
|
|
58
|
+
"@local/eff": "3.0.0-beta.72",
|
|
59
59
|
"@local/configs": "0.0.0"
|
|
60
60
|
},
|
|
61
61
|
"peerDependencies": {
|
|
62
|
-
"eslint": "^
|
|
63
|
-
"typescript": "
|
|
62
|
+
"eslint": "^10.0.0",
|
|
63
|
+
"typescript": "*"
|
|
64
64
|
},
|
|
65
65
|
"engines": {
|
|
66
66
|
"node": ">=22.0.0"
|
|
@@ -71,6 +71,6 @@
|
|
|
71
71
|
"scripts": {
|
|
72
72
|
"build": "tsdown",
|
|
73
73
|
"lint:publish": "pnpm publint",
|
|
74
|
-
"lint:ts": "
|
|
74
|
+
"lint:ts": "tsl"
|
|
75
75
|
}
|
|
76
76
|
}
|