@eslint-react/eslint-plugin 1.10.2-next.2 → 1.11.0-beta.7

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/dist/index.js CHANGED
@@ -6,6 +6,7 @@ var reactDebug = require('eslint-plugin-react-debug');
6
6
  var reactDom = require('eslint-plugin-react-dom');
7
7
  var reactHooksExtra = require('eslint-plugin-react-hooks-extra');
8
8
  var reactNamingConvention = require('eslint-plugin-react-naming-convention');
9
+ var reactWebApi = require('eslint-plugin-react-web-api');
9
10
  var react = require('eslint-plugin-react-x');
10
11
 
11
12
  function _interopNamespace(e) {
@@ -30,13 +31,14 @@ var reactDebug__namespace = /*#__PURE__*/_interopNamespace(reactDebug);
30
31
  var reactDom__namespace = /*#__PURE__*/_interopNamespace(reactDom);
31
32
  var reactHooksExtra__namespace = /*#__PURE__*/_interopNamespace(reactHooksExtra);
32
33
  var reactNamingConvention__namespace = /*#__PURE__*/_interopNamespace(reactNamingConvention);
34
+ var reactWebApi__namespace = /*#__PURE__*/_interopNamespace(reactWebApi);
33
35
  var react__namespace = /*#__PURE__*/_interopNamespace(react);
34
36
 
35
37
  // src/index.ts
36
38
 
37
39
  // package.json
38
40
  var name = "@eslint-react/eslint-plugin";
39
- var version = "1.10.2-next.2";
41
+ var version = "1.11.0-beta.7";
40
42
  function transformKeys(obj, transform) {
41
43
  if (tools.typeOf(obj) !== "object") return obj;
42
44
  const res = {};
@@ -53,6 +55,7 @@ function padKeysLeft(obj, left) {
53
55
 
54
56
  // src/index.ts
55
57
  var allPreset = {
58
+ // Part: Core
56
59
  "avoid-shorthand-boolean": "warn",
57
60
  "avoid-shorthand-fragment": "warn",
58
61
  "ensure-forward-ref-using-ref": "warn",
@@ -98,7 +101,7 @@ var allPreset = {
98
101
  // "prefer-read-only-props": "warn", // This rule requires type information
99
102
  "prefer-shorthand-boolean": "warn",
100
103
  "prefer-shorthand-fragment": "warn",
101
- // eslint-disable-next-line perfectionist/sort-objects
104
+ // Part: DOM
102
105
  "dom/no-children-in-void-dom-elements": "warn",
103
106
  "dom/no-dangerously-set-innerhtml": "warn",
104
107
  "dom/no-dangerously-set-innerhtml-with-children": "error",
@@ -110,6 +113,10 @@ var allPreset = {
110
113
  "dom/no-script-url": "warn",
111
114
  "dom/no-unsafe-iframe-sandbox": "warn",
112
115
  "dom/no-unsafe-target-blank": "warn",
116
+ // Part: Web API
117
+ "web-api/no-leaked-event-listener": "warn",
118
+ "web-api/no-leaked-timeout": "warn",
119
+ // Part: Hooks Extra
113
120
  "hooks-extra/ensure-custom-hooks-using-other-hooks": "warn",
114
121
  "hooks-extra/ensure-use-callback-has-non-empty-deps": "warn",
115
122
  "hooks-extra/ensure-use-memo-has-non-empty-deps": "warn",
@@ -181,9 +188,14 @@ var domPreset = {
181
188
  "dom/no-unsafe-iframe-sandbox": "warn",
182
189
  "dom/no-unsafe-target-blank": "warn"
183
190
  };
191
+ var webApiPreset = {
192
+ "web-api/no-leaked-event-listener": "warn",
193
+ "web-api/no-leaked-timeout": "warn"
194
+ };
184
195
  var recommendedPreset = {
185
196
  ...corePreset,
186
- ...domPreset
197
+ ...domPreset,
198
+ ...webApiPreset
187
199
  };
188
200
  var recommendedTypeCheckedPreset = {
189
201
  ...recommendedPreset,
@@ -198,9 +210,13 @@ var debugPreset = {
198
210
  "debug/function-component": "warn",
199
211
  "debug/react-hooks": "warn"
200
212
  };
213
+ var disableDomPreset = tools.fromEntries(tools.entries(domPreset).map(([key]) => [key, "off"]));
214
+ var disableWebApiPreset = tools.fromEntries(tools.entries(webApiPreset).map(([key]) => [key, "off"]));
201
215
  var allPresetEntries = tools.entries(allPreset);
202
- var offPreset = tools.fromEntries(allPresetEntries.map(([key]) => [key, "off"]));
203
- var offDomPreset = tools.fromEntries(tools.entries(domPreset).map(([key]) => [key, "off"]));
216
+ var offPreset = {
217
+ ...tools.fromEntries(allPresetEntries.map(([key]) => [key, "off"])),
218
+ ...disableTypeCheckedPreset
219
+ };
204
220
  var corePresetSettings = {
205
221
  ...shared.DEFAULT_ESLINT_REACT_SETTINGS
206
222
  };
@@ -225,21 +241,22 @@ var flatConfigPlugins = {
225
241
  "@eslint-react/debug": reactDebug__namespace,
226
242
  "@eslint-react/dom": reactDom__namespace,
227
243
  "@eslint-react/hooks-extra": reactHooksExtra__namespace,
228
- "@eslint-react/naming-convention": reactNamingConvention__namespace
244
+ "@eslint-react/naming-convention": reactNamingConvention__namespace,
245
+ "@eslint-react/web-api": reactWebApi__namespace
229
246
  };
230
- function createLegacyConfig(rules6, settings = shared.DEFAULT_ESLINT_REACT_SETTINGS) {
247
+ function createLegacyConfig(rules7, settings = shared.DEFAULT_ESLINT_REACT_SETTINGS) {
231
248
  return {
232
249
  plugins: legacyConfigPlugins,
233
- rules: padKeysLeft(rules6, "@eslint-react/"),
250
+ rules: padKeysLeft(rules7, "@eslint-react/"),
234
251
  settings: {
235
252
  "react-x": settings
236
253
  }
237
254
  };
238
255
  }
239
- function createFlatConfig(rules6, settings = shared.DEFAULT_ESLINT_REACT_SETTINGS) {
256
+ function createFlatConfig(rules7, settings = shared.DEFAULT_ESLINT_REACT_SETTINGS) {
240
257
  return {
241
258
  plugins: flatConfigPlugins,
242
- rules: padKeysLeft(rules6, "@eslint-react/"),
259
+ rules: padKeysLeft(rules7, "@eslint-react/"),
243
260
  settings: {
244
261
  "react-x": settings
245
262
  }
@@ -251,37 +268,40 @@ var src_default = {
251
268
  version
252
269
  },
253
270
  configs: {
254
- ["all"]: createFlatConfig(allPreset),
255
- ["all-legacy"]: createLegacyConfig(allPreset),
271
+ /* eslint-disable perfectionist/sort-objects */
256
272
  ["core"]: createFlatConfig(corePreset, corePresetSettings),
257
273
  ["core-legacy"]: createLegacyConfig(corePreset, corePresetSettings),
258
274
  ["debug"]: createFlatConfig(debugPreset),
259
275
  ["debug-legacy"]: createLegacyConfig(debugPreset),
260
276
  ["dom"]: createFlatConfig(domPreset, domPresetSettings),
261
277
  ["dom-legacy"]: createLegacyConfig(domPreset),
262
- ["off"]: createFlatConfig(offPreset),
263
- /**
264
- * @deprecated Use `disable-dom` instead
265
- */
266
- ["off-dom"]: createFlatConfig(offDomPreset),
267
- /**
268
- * @deprecated Use `disable-dom-legacy` instead
269
- */
270
- ["off-dom-legacy"]: createLegacyConfig(offDomPreset),
271
- ["off-legacy"]: createLegacyConfig(offPreset),
272
278
  ["recommended"]: createFlatConfig(recommendedPreset),
273
279
  ["recommended-legacy"]: createLegacyConfig(recommendedPreset),
274
280
  ["recommended-type-checked"]: createFlatConfig(recommendedTypeCheckedPreset),
275
281
  ["recommended-type-checked-legacy"]: createLegacyConfig(recommendedTypeCheckedPreset),
276
282
  // Part: disable presets
277
- ["disable-dom"]: createFlatConfig(offDomPreset),
278
- ["disable-dom-legacy"]: createLegacyConfig(offDomPreset),
283
+ ["disable-dom"]: createFlatConfig(disableDomPreset),
284
+ ["disable-dom-legacy"]: createLegacyConfig(disableDomPreset),
285
+ ["disable-web-api"]: createFlatConfig(disableWebApiPreset),
286
+ ["disable-web-api-legacy"]: createLegacyConfig(disableWebApiPreset),
279
287
  ["disable-type-checked"]: createFlatConfig(disableTypeCheckedPreset),
280
- ["disable-type-checked-legacy"]: createLegacyConfig(disableTypeCheckedPreset)
288
+ ["disable-type-checked-legacy"]: createLegacyConfig(disableTypeCheckedPreset),
289
+ // Part: all or off presets
290
+ ["all"]: createFlatConfig(allPreset),
291
+ ["all-legacy"]: createLegacyConfig(allPreset),
292
+ ["off"]: createFlatConfig(offPreset),
293
+ ["off-legacy"]: createLegacyConfig(offPreset),
294
+ // Part: deprecated presets
295
+ /** @deprecated Use `disable-dom` instead */
296
+ ["off-dom"]: createFlatConfig(disableDomPreset),
297
+ /** @deprecated Use `disable-dom-legacy` instead */
298
+ ["off-dom-legacy"]: createLegacyConfig(disableDomPreset)
299
+ /* eslint-enable perfectionist/sort-objects */
281
300
  },
282
301
  rules: {
283
302
  ...react__namespace.rules,
284
303
  ...padKeysLeft(reactDom__namespace.rules, "dom/"),
304
+ ...padKeysLeft(reactWebApi__namespace.rules, "web-api/"),
285
305
  ...padKeysLeft(reactHooksExtra__namespace.rules, "hooks-extra/"),
286
306
  ...padKeysLeft(reactNamingConvention__namespace.rules, "naming-convention/"),
287
307
  ...padKeysLeft(reactDebug__namespace.rules, "debug/")
package/dist/index.mjs CHANGED
@@ -1,16 +1,17 @@
1
1
  import { DEFAULT_ESLINT_REACT_SETTINGS } from '@eslint-react/shared';
2
- import { entries, fromEntries, typeOf } from '@eslint-react/tools';
2
+ import { fromEntries, entries, typeOf } from '@eslint-react/tools';
3
3
  import * as reactDebug from 'eslint-plugin-react-debug';
4
4
  import * as reactDom from 'eslint-plugin-react-dom';
5
5
  import * as reactHooksExtra from 'eslint-plugin-react-hooks-extra';
6
6
  import * as reactNamingConvention from 'eslint-plugin-react-naming-convention';
7
+ import * as reactWebApi from 'eslint-plugin-react-web-api';
7
8
  import * as react from 'eslint-plugin-react-x';
8
9
 
9
10
  // src/index.ts
10
11
 
11
12
  // package.json
12
13
  var name = "@eslint-react/eslint-plugin";
13
- var version = "1.10.2-next.2";
14
+ var version = "1.11.0-beta.7";
14
15
  function transformKeys(obj, transform) {
15
16
  if (typeOf(obj) !== "object") return obj;
16
17
  const res = {};
@@ -27,6 +28,7 @@ function padKeysLeft(obj, left) {
27
28
 
28
29
  // src/index.ts
29
30
  var allPreset = {
31
+ // Part: Core
30
32
  "avoid-shorthand-boolean": "warn",
31
33
  "avoid-shorthand-fragment": "warn",
32
34
  "ensure-forward-ref-using-ref": "warn",
@@ -72,7 +74,7 @@ var allPreset = {
72
74
  // "prefer-read-only-props": "warn", // This rule requires type information
73
75
  "prefer-shorthand-boolean": "warn",
74
76
  "prefer-shorthand-fragment": "warn",
75
- // eslint-disable-next-line perfectionist/sort-objects
77
+ // Part: DOM
76
78
  "dom/no-children-in-void-dom-elements": "warn",
77
79
  "dom/no-dangerously-set-innerhtml": "warn",
78
80
  "dom/no-dangerously-set-innerhtml-with-children": "error",
@@ -84,6 +86,10 @@ var allPreset = {
84
86
  "dom/no-script-url": "warn",
85
87
  "dom/no-unsafe-iframe-sandbox": "warn",
86
88
  "dom/no-unsafe-target-blank": "warn",
89
+ // Part: Web API
90
+ "web-api/no-leaked-event-listener": "warn",
91
+ "web-api/no-leaked-timeout": "warn",
92
+ // Part: Hooks Extra
87
93
  "hooks-extra/ensure-custom-hooks-using-other-hooks": "warn",
88
94
  "hooks-extra/ensure-use-callback-has-non-empty-deps": "warn",
89
95
  "hooks-extra/ensure-use-memo-has-non-empty-deps": "warn",
@@ -155,9 +161,14 @@ var domPreset = {
155
161
  "dom/no-unsafe-iframe-sandbox": "warn",
156
162
  "dom/no-unsafe-target-blank": "warn"
157
163
  };
164
+ var webApiPreset = {
165
+ "web-api/no-leaked-event-listener": "warn",
166
+ "web-api/no-leaked-timeout": "warn"
167
+ };
158
168
  var recommendedPreset = {
159
169
  ...corePreset,
160
- ...domPreset
170
+ ...domPreset,
171
+ ...webApiPreset
161
172
  };
162
173
  var recommendedTypeCheckedPreset = {
163
174
  ...recommendedPreset,
@@ -172,9 +183,13 @@ var debugPreset = {
172
183
  "debug/function-component": "warn",
173
184
  "debug/react-hooks": "warn"
174
185
  };
186
+ var disableDomPreset = fromEntries(entries(domPreset).map(([key]) => [key, "off"]));
187
+ var disableWebApiPreset = fromEntries(entries(webApiPreset).map(([key]) => [key, "off"]));
175
188
  var allPresetEntries = entries(allPreset);
176
- var offPreset = fromEntries(allPresetEntries.map(([key]) => [key, "off"]));
177
- var offDomPreset = fromEntries(entries(domPreset).map(([key]) => [key, "off"]));
189
+ var offPreset = {
190
+ ...fromEntries(allPresetEntries.map(([key]) => [key, "off"])),
191
+ ...disableTypeCheckedPreset
192
+ };
178
193
  var corePresetSettings = {
179
194
  ...DEFAULT_ESLINT_REACT_SETTINGS
180
195
  };
@@ -199,21 +214,22 @@ var flatConfigPlugins = {
199
214
  "@eslint-react/debug": reactDebug,
200
215
  "@eslint-react/dom": reactDom,
201
216
  "@eslint-react/hooks-extra": reactHooksExtra,
202
- "@eslint-react/naming-convention": reactNamingConvention
217
+ "@eslint-react/naming-convention": reactNamingConvention,
218
+ "@eslint-react/web-api": reactWebApi
203
219
  };
204
- function createLegacyConfig(rules6, settings = DEFAULT_ESLINT_REACT_SETTINGS) {
220
+ function createLegacyConfig(rules7, settings = DEFAULT_ESLINT_REACT_SETTINGS) {
205
221
  return {
206
222
  plugins: legacyConfigPlugins,
207
- rules: padKeysLeft(rules6, "@eslint-react/"),
223
+ rules: padKeysLeft(rules7, "@eslint-react/"),
208
224
  settings: {
209
225
  "react-x": settings
210
226
  }
211
227
  };
212
228
  }
213
- function createFlatConfig(rules6, settings = DEFAULT_ESLINT_REACT_SETTINGS) {
229
+ function createFlatConfig(rules7, settings = DEFAULT_ESLINT_REACT_SETTINGS) {
214
230
  return {
215
231
  plugins: flatConfigPlugins,
216
- rules: padKeysLeft(rules6, "@eslint-react/"),
232
+ rules: padKeysLeft(rules7, "@eslint-react/"),
217
233
  settings: {
218
234
  "react-x": settings
219
235
  }
@@ -225,37 +241,40 @@ var src_default = {
225
241
  version
226
242
  },
227
243
  configs: {
228
- ["all"]: createFlatConfig(allPreset),
229
- ["all-legacy"]: createLegacyConfig(allPreset),
244
+ /* eslint-disable perfectionist/sort-objects */
230
245
  ["core"]: createFlatConfig(corePreset, corePresetSettings),
231
246
  ["core-legacy"]: createLegacyConfig(corePreset, corePresetSettings),
232
247
  ["debug"]: createFlatConfig(debugPreset),
233
248
  ["debug-legacy"]: createLegacyConfig(debugPreset),
234
249
  ["dom"]: createFlatConfig(domPreset, domPresetSettings),
235
250
  ["dom-legacy"]: createLegacyConfig(domPreset),
236
- ["off"]: createFlatConfig(offPreset),
237
- /**
238
- * @deprecated Use `disable-dom` instead
239
- */
240
- ["off-dom"]: createFlatConfig(offDomPreset),
241
- /**
242
- * @deprecated Use `disable-dom-legacy` instead
243
- */
244
- ["off-dom-legacy"]: createLegacyConfig(offDomPreset),
245
- ["off-legacy"]: createLegacyConfig(offPreset),
246
251
  ["recommended"]: createFlatConfig(recommendedPreset),
247
252
  ["recommended-legacy"]: createLegacyConfig(recommendedPreset),
248
253
  ["recommended-type-checked"]: createFlatConfig(recommendedTypeCheckedPreset),
249
254
  ["recommended-type-checked-legacy"]: createLegacyConfig(recommendedTypeCheckedPreset),
250
255
  // Part: disable presets
251
- ["disable-dom"]: createFlatConfig(offDomPreset),
252
- ["disable-dom-legacy"]: createLegacyConfig(offDomPreset),
256
+ ["disable-dom"]: createFlatConfig(disableDomPreset),
257
+ ["disable-dom-legacy"]: createLegacyConfig(disableDomPreset),
258
+ ["disable-web-api"]: createFlatConfig(disableWebApiPreset),
259
+ ["disable-web-api-legacy"]: createLegacyConfig(disableWebApiPreset),
253
260
  ["disable-type-checked"]: createFlatConfig(disableTypeCheckedPreset),
254
- ["disable-type-checked-legacy"]: createLegacyConfig(disableTypeCheckedPreset)
261
+ ["disable-type-checked-legacy"]: createLegacyConfig(disableTypeCheckedPreset),
262
+ // Part: all or off presets
263
+ ["all"]: createFlatConfig(allPreset),
264
+ ["all-legacy"]: createLegacyConfig(allPreset),
265
+ ["off"]: createFlatConfig(offPreset),
266
+ ["off-legacy"]: createLegacyConfig(offPreset),
267
+ // Part: deprecated presets
268
+ /** @deprecated Use `disable-dom` instead */
269
+ ["off-dom"]: createFlatConfig(disableDomPreset),
270
+ /** @deprecated Use `disable-dom-legacy` instead */
271
+ ["off-dom-legacy"]: createLegacyConfig(disableDomPreset)
272
+ /* eslint-enable perfectionist/sort-objects */
255
273
  },
256
274
  rules: {
257
275
  ...react.rules,
258
276
  ...padKeysLeft(reactDom.rules, "dom/"),
277
+ ...padKeysLeft(reactWebApi.rules, "web-api/"),
259
278
  ...padKeysLeft(reactHooksExtra.rules, "hooks-extra/"),
260
279
  ...padKeysLeft(reactNamingConvention.rules, "naming-convention/"),
261
280
  ...padKeysLeft(reactDebug.rules, "debug/")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eslint-react/eslint-plugin",
3
- "version": "1.10.2-next.2",
3
+ "version": "1.11.0-beta.7",
4
4
  "description": "The main ESLint plugin of ESLint React. Contains all the rules and presets of ESLint React.",
5
5
  "keywords": [
6
6
  "eslint",
@@ -43,18 +43,19 @@
43
43
  "./package.json"
44
44
  ],
45
45
  "dependencies": {
46
- "@typescript-eslint/scope-manager": "^8.1.0",
47
- "@typescript-eslint/type-utils": "^8.1.0",
48
- "@typescript-eslint/types": "^8.1.0",
49
- "@typescript-eslint/utils": "^8.1.0",
50
- "@eslint-react/shared": "1.10.2-next.2",
51
- "@eslint-react/tools": "1.10.2-next.2",
52
- "@eslint-react/types": "1.10.2-next.2",
53
- "eslint-plugin-react-dom": "1.10.2-next.2",
54
- "eslint-plugin-react-hooks-extra": "1.10.2-next.2",
55
- "eslint-plugin-react-naming-convention": "1.10.2-next.2",
56
- "eslint-plugin-react-x": "1.10.2-next.2",
57
- "eslint-plugin-react-debug": "1.10.2-next.2"
46
+ "@typescript-eslint/scope-manager": "^8.2.0",
47
+ "@typescript-eslint/type-utils": "^8.2.0",
48
+ "@typescript-eslint/types": "^8.2.0",
49
+ "@typescript-eslint/utils": "^8.2.0",
50
+ "@eslint-react/shared": "1.11.0-beta.7",
51
+ "@eslint-react/tools": "1.11.0-beta.7",
52
+ "eslint-plugin-react-debug": "1.11.0-beta.7",
53
+ "eslint-plugin-react-dom": "1.11.0-beta.7",
54
+ "@eslint-react/types": "1.11.0-beta.7",
55
+ "eslint-plugin-react-hooks-extra": "1.11.0-beta.7",
56
+ "eslint-plugin-react-naming-convention": "1.11.0-beta.7",
57
+ "eslint-plugin-react-x": "1.11.0-beta.7",
58
+ "eslint-plugin-react-web-api": "1.11.0-beta.7"
58
59
  },
59
60
  "devDependencies": {
60
61
  "tsup": "^8.2.4"