Skip to content

Commit ebb80fa

Browse files
authored
feat: add recommended-typescript preset (#848)
1 parent 70dc321 commit ebb80fa

File tree

4 files changed

+24
-5
lines changed

4 files changed

+24
-5
lines changed

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,12 @@ export default [
8282
- **recommended**\
8383
Enable rules that are recommended by ESLint React.\
8484
_This preset includes the `core`, `dom`, and `web-api` presets._
85+
- **recommended-typescript**\
86+
Enable rules that are recommended by ESLint React and disable rules that can be covered by TypeScript.\
87+
_This preset includes the `recommended` preset._
8588
- **recommended-type-checked**\
8689
Enable rules that are recommended by ESLint React with additional rules that require type information.\
87-
_This preset includes the `recommended` preset._
90+
_This preset includes the `recommended-typescript` preset._
8891

8992
[Full Presets List↗](https://eslint-react.xyz/docs/presets)
9093

packages/plugins/eslint-plugin/README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,12 @@ export default [
8282
- **recommended**\
8383
Enable rules that are recommended by ESLint React.\
8484
_This preset includes the `core`, `dom`, and `web-api` presets._
85+
- **recommended-typescript**\
86+
Enable rules that are recommended by ESLint React and disable rules that can be covered by TypeScript.\
87+
_This preset includes the `recommended` preset._
8588
- **recommended-type-checked**\
8689
Enable rules that are recommended by ESLint React with additional rules that require type information.\
87-
_This preset includes the `recommended` preset._
90+
_This preset includes the `recommended-typescript` preset._
8891

8992
[Full Presets List↗](https://eslint-react.xyz/docs/presets)
9093

packages/plugins/eslint-plugin/src/index.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,8 +180,13 @@ const recommendedPreset = {
180180
...hooksExtraPreset,
181181
} as const satisfies RulePreset;
182182

183-
const recommendedTypeCheckedPreset = {
183+
const recommendedTypeScriptPreset = {
184184
...recommendedPreset,
185+
"dom/no-unknown-property": "off",
186+
} as const satisfies RulePreset;
187+
188+
const recommendedTypeCheckedPreset = {
189+
...recommendedTypeScriptPreset,
185190
"no-leaked-conditional-rendering": "warn",
186191
} as const satisfies RulePreset;
187192

@@ -278,6 +283,8 @@ export default {
278283
["dom-legacy"]: createLegacyConfig(domPreset),
279284
["recommended"]: createFlatConfig(recommendedPreset),
280285
["recommended-legacy"]: createLegacyConfig(recommendedPreset),
286+
["recommended-typescript"]: createFlatConfig(recommendedTypeScriptPreset),
287+
["recommended-typescript-legacy"]: createLegacyConfig(recommendedTypeScriptPreset),
281288
["recommended-type-checked"]: createFlatConfig(recommendedTypeCheckedPreset),
282289
["recommended-type-checked-legacy"]: createLegacyConfig(recommendedTypeCheckedPreset),
283290
// Part: disable presets

website/pages/docs/presets.mdx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,12 @@ The following presets are available in this plugin:
2222
- **recommended**\
2323
Enable rules that are recommended by ESLint React.\
2424
_This preset includes the `core`, `dom`, and `web-api` presets._
25+
- **recommended-typescript**\
26+
Enable rules that are recommended by ESLint React and disable rules that can be covered by TypeScript.\
27+
_This preset includes the `recommended` preset._
2528
- **recommended-type-checked**\
2629
Enable rules that are recommended by ESLint React with additional rules that require type information.\
27-
_This preset includes the `recommended` preset._
30+
_This preset includes the `recommended-typescript` preset._
2831
- **disable-dom**\
2932
Disable rules that are specific to React DOM.
3033
- **disable-web-api**\
@@ -49,9 +52,12 @@ The following presets are available in this plugin:
4952
- **recommended-legacy**\
5053
Enable rules that are recommended by ESLint React.\
5154
_This preset includes the `core-legacy`, `dom-legacy`, and `web-api-legacy` presets._
55+
- **recommended-typescript-legacy**\
56+
Enable rules that are recommended by ESLint React and disable rules that can be covered by TypeScript.\
57+
_This preset includes the `recommended-legacy` preset._
5258
- **recommended-type-checked-legacy**\
5359
Enable rules that are recommended by ESLint React with additional rules that require type information.\
54-
_This preset includes the `recommended-legacy` preset._
60+
_This preset includes the `recommended-typescript-legacy` preset._
5561
- **disable-dom-legacy**\
5662
Disable rules that are specific to React DOM.
5763
- **disable-web-api-legacy**\

0 commit comments

Comments
 (0)