-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[Bug]: flat configs are possibly undefined #3874
Labels
Comments
I assume this is an artifact of the recursion? |
2 tasks
renovate bot
added a commit
to mmkal/eslint-plugin-mmkal
that referenced
this issue
Jan 13, 2025
##### [v7.37.4](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7374---20250112) ##### Fixed - \[`no-unknown-property`]: support `onBeforeToggle`, `popoverTarget`, `popoverTargetAction` attributes ([#3865][] [@acusti](https://github.com/acusti)) - \[types] fix types of flat configs ([#3874][] [@ljharb](https://github.com/ljharb)) [7.37.4]: jsx-eslint/eslint-plugin-react@v7.37.3...v7.37.4 [#3874]: jsx-eslint/eslint-plugin-react#3874 [#3865]: jsx-eslint/eslint-plugin-react#3865
2 tasks
cswimr
pushed a commit
to cswimr/gauntlet-cswimr-plugins
that referenced
this issue
Jan 20, 2025
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) | devDependencies | patch | [`7.37.3` -> `7.37.4`](https://renovatebot.com/diffs/npm/eslint-plugin-react/7.37.3/7.37.4) | --- ### Release Notes <details> <summary>jsx-eslint/eslint-plugin-react (eslint-plugin-react)</summary> ### [`v7.37.4`](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7374---20250112) [Compare Source](jsx-eslint/eslint-plugin-react@v7.37.3...v7.37.4) ##### Fixed - \[`no-unknown-property`]: support `onBeforeToggle`, `popoverTarget`, `popoverTargetAction` attributes ([#​3865][] [@​acusti](https://github.com/acusti)) - \[types] fix types of flat configs ([#​3874][] [@​ljharb](https://github.com/ljharb)) [7.37.4]: jsx-eslint/eslint-plugin-react@v7.37.3...v7.37.4 [#​3874]: jsx-eslint/eslint-plugin-react#3874 [#​3865]: jsx-eslint/eslint-plugin-react#3865 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDQuMyIsInVwZGF0ZWRJblZlciI6IjM5LjExOC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Reviewed-on: https://www.coastalcommits.com/cswimr/gauntlet-cswimr-plugins/pulls/24 Co-authored-by: Renovate <renovate@coastalcommits.com> Co-committed-by: Renovate <renovate@coastalcommits.com>
renovate bot
added a commit
to andrei-picus-tink/auto-renovate
that referenced
this issue
Feb 26, 2025
| datasource | package | from | to | | ---------- | ------------------- | ------- | ------ | | npm | eslint-plugin-react | 7.31.10 | 7.37.4 | ## [v7.37.4](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7374---20250112) ##### Fixed - \[`no-unknown-property`]: support `onBeforeToggle`, `popoverTarget`, `popoverTargetAction` attributes ([#3865][] [@acusti](https://github.com/acusti)) - \[types] fix types of flat configs ([#3874][] [@ljharb](https://github.com/ljharb)) [7.37.4]: jsx-eslint/eslint-plugin-react@v7.37.3...v7.37.4 [#3874]: jsx-eslint/eslint-plugin-react#3874 [#3865]: jsx-eslint/eslint-plugin-react#3865 ## [v7.37.3](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7373---20241223) ##### Fixed - \[`no-danger`]: avoid a crash on a nested component name ([#3833][] [@ljharb](https://github.com/ljharb)) - \[Fix] types: correct generated type declaration ([#3840][] [@ocavue](https://github.com/ocavue)) - \[`no-unknown-property`]: support `precedence` prop in react 19 ([#3829][] [@acusti](https://github.com/acusti)) - \[`prop-types`]: props missing in validation when using generic types from a namespace import ([#3859][] [@rbondoc96](https://github.com/rbondoc96)) ##### Changed - \[Tests] \[`jsx-no-script-url`]: Improve tests ([#3849][] [@radu2147](https://github.com/radu2147)) - \[Docs] fix broken links: \[`default-props-match-prop-types`], \[`jsx-boolean-value`], \[`jsx-curly-brace-presence`], \[`jsx-no-bind`], \[`no-array-index-key`], \[`no-is-mounted`], \[`no-render-return-value`], \[`require-default-props`] ([#3841][] [@bastiendmt](https://github.com/bastiendmt)) [7.37.3]: jsx-eslint/eslint-plugin-react@v7.37.2...v7.37.3 [#3859]: jsx-eslint/eslint-plugin-react#3859 [#3849]: jsx-eslint/eslint-plugin-react#3849 [#3841]: jsx-eslint/eslint-plugin-react#3841 [#3840]: jsx-eslint/eslint-plugin-react#3840 [#3833]: jsx-eslint/eslint-plugin-react#3833 [#3829]: jsx-eslint/eslint-plugin-react#3829 ## [v7.37.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7372---20241022) ##### Fixed - \[`destructuring-assignment`]: fix false negative when using `typeof props.a` ([#3835][] [@golopot](https://github.com/golopot)) ##### Changed - \[Refactor] \[`destructuring-assignment`]: use `getParentStatelessComponent` ([#3835][] [@golopot](https://github.com/golopot)) [7.37.2]: jsx-eslint/eslint-plugin-react@v7.37.1...v7.37.2 [#3835]: jsx-eslint/eslint-plugin-react#3835 ## [v7.37.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7371---20241001) ##### Fixed - \[meta] do not npmignore `d.ts` files ([#3836][] [@ljharb](https://github.com/ljharb)) ##### Changed - \[readme] Fix shared settings link ([#3834][] [@MgenGlder](https://github.com/MgenGlder)) [7.37.1]: jsx-eslint/eslint-plugin-react@v7.37.0...v7.37.1 [#3836]: jsx-eslint/eslint-plugin-react#3836 [#3834]: jsx-eslint/eslint-plugin-react#3834 ## [v7.37.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7370---20240926) ##### Added - add type generation ([#3830][] [@voxpelli](https://github.com/voxpelli)) - \[`no-unescaped-entities`]: add suggestions ([#3831][] [@StyleShit](https://github.com/StyleShit)) - \[`forbid-component-props`]: add `allowedForPatterns`/`disallowedForPatterns` options ([#3805][] [@Efimenko](https://github.com/Efimenko)) - \[`no-unstable-nested-components`]: add `propNamePattern` to support custom render prop naming conventions ([#3826][] [@danreeves](https://github.com/danreeves)) ##### Changed - \[readme] flat config example for react 17+ ([#3824][] [@GabenGar](https://github.com/GabenGar)) [7.37.0]: jsx-eslint/eslint-plugin-react@v7.36.1...v7.37.0 [#3831]: jsx-eslint/eslint-plugin-react#3831 [#3830]: jsx-eslint/eslint-plugin-react#3830 [#3826]: jsx-eslint/eslint-plugin-react#3826 [#3824]: jsx-eslint/eslint-plugin-react#3824 [#3805]: jsx-eslint/eslint-plugin-react#3805 ## [v7.36.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7361---20240912) ##### Fixed - \[`no-is-mounted`]: fix logic in method name check ([#3821][] [@Mathias-S](https://github.com/Mathias-S)) - \[`jsx-no-literals`]: Avoid crashing on valueless boolean props ([#3823][] [@reosarevok](https://github.com/reosarevok)) [7.36.1]: jsx-eslint/eslint-plugin-react@v7.36.0...v7.36.1 [#3823]: jsx-eslint/eslint-plugin-react#3823 [#3821]: jsx-eslint/eslint-plugin-react#3821 ## [v7.36.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7360---20240912) ##### Added - \[`no-string-refs`]: allow this.refs in > 18.3.0 ([#3807][] [@henryqdineen](https://github.com/henryqdineen)) - \[`jsx-no-literals`] Add `elementOverrides` option and the ability to ignore this rule on specific elements ([#3812][] [@Pearce-Ropion](https://github.com/Pearce-Ropion)) - \[`forward-ref-uses-ref`]: add rule for checking ref parameter is added (\[[#3667](https://github.com/jsx-eslint/eslint-plugin-react/issues/3667)]\[] [@NotWoods](https://github.com/NotWoods)) ##### Fixed - \[`function-component-definition`], \[`boolean-prop-naming`], \[`jsx-first-prop-new-line`], \[`jsx-props-no-multi-spaces`], `propTypes`: use type args ([#3629][] [@HenryBrown0](https://github.com/HenryBrown0)) - JSX pragma: fail gracefully ([#3632][] [@ljharb](https://github.com/ljharb)) - \[`jsx-props-no-spreading`]: add `explicitSpread` option to schema ([#3799][] [@ljharb](https://github.com/ljharb)) ##### Changed - \[Tests] add [@typescript-eslint/parser](https://github.com/typescript-eslint/parser) v6 ([#3629][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Tests] add [@typescript-eslint/parser](https://github.com/typescript-eslint/parser) v7 and v8 ([#3629][] [@hampustagerud](https://github.com/hampustagerud)) - \[Docs] \[`no-danger`]: update broken link ([#3817][] [@lucasrmendonca](https://github.com/lucasrmendonca)) - \[types] add jsdoc type annotations ([#3731][] [@y-hsgw](https://github.com/y-hsgw)) - \[Tests] `button-has-type`: add test case with spread ([#3731][] [@y-hsgw](https://github.com/y-hsgw)) [7.36.0]: jsx-eslint/eslint-plugin-react@v7.35.2...v7.36.0 [#3799]: jsx-eslint/eslint-plugin-react#3799 [#3632]: jsx-eslint/eslint-plugin-react#3632 [#3812]: jsx-eslint/eslint-plugin-react#3812 [#3731]: jsx-eslint/eslint-plugin-react#3731 [#3694]: jsx-eslint/eslint-plugin-react#3667 [#3629]: jsx-eslint/eslint-plugin-react#3629 [#3817]: jsx-eslint/eslint-plugin-react#3817 [#3807]: jsx-eslint/eslint-plugin-react#3807 ## [v7.35.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7352---20240903) ##### Fixed - \[`jsx-curly-brace-presence`]: avoid autofixing attributes with double quotes to a double quoted attribute ([#3814][] [@ljharb](https://github.com/ljharb)) [7.35.2]: jsx-eslint/eslint-plugin-react@v7.35.1...v7.35.2 [#3814]: jsx-eslint/eslint-plugin-react#3814 ## [v7.35.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7351---20240902) ##### Fixed - \[`jsx-curly-brace-presence`]: do not trigger on strings containing a quote character ([#3798][] [@akulsr0](https://github.com/akulsr0)) [7.35.1]: jsx-eslint/eslint-plugin-react@v7.35.0...v7.35.1 [#3798]: jsx-eslint/eslint-plugin-react#3798 ## [v7.35.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7350---20240719) ##### Added - support eslint v9 ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic)) - export flat configs from plugin root and fix flat config crash ([#3694][] [@bradzacher](https://github.com/bradzacher) [@mdjermanovic](https://github.com/mdjermanovic)) - add \[`jsx-props-no-spread-multi`] ([#3724][] [@SimonSchick](https://github.com/SimonSchick)) - \[`forbid-component-props`]: add `propNamePattern` to allow / disallow prop name patterns ([#3774][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-handler-names`]: support ignoring component names ([#3772][] [@akulsr0](https://github.com/akulsr0)) - version settings: Allow react defaultVersion to be configurable ([#3771][] [@onlywei](https://github.com/onlywei)) - \[`jsx-closing-tag-location`]: add `line-aligned` option ([#3777] [@kimtaejin3](https://github.com/kimtaejin3)) - \[`no-danger`]: add `customComponentNames` option ([#3748][] [@akulsr0](https://github.com/akulsr0)) ##### Fixed - \[`no-invalid-html-attribute`]: substitute placeholders in suggestion messages ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic)) - \[`sort-prop-types`]: single line type ending without semicolon ([#3784][] [@akulsr0](https://github.com/akulsr0)) - \[`require-default-props`]: report when required props have default value ([#3785][] [@akulsr0](https://github.com/akulsr0)) ##### Changed - \[Refactor] `variableUtil`: Avoid creating a single flat variable scope for each lookup ([#3782][] [@DanielRosenwasser](https://github.com/DanielRosenwasser)) [7.35.0]: jsx-eslint/eslint-plugin-react@v7.34.4...v7.35.0 [#3785]: jsx-eslint/eslint-plugin-react#3785 [#3784]: jsx-eslint/eslint-plugin-react#3784 [#3782]: jsx-eslint/eslint-plugin-react#3782 [#3777]: jsx-eslint/eslint-plugin-react#3777 [#3774]: jsx-eslint/eslint-plugin-react#3774 [#3772]: jsx-eslint/eslint-plugin-react#3772 [#3771]: jsx-eslint/eslint-plugin-react#3771 [#3759]: jsx-eslint/eslint-plugin-react#3759 [#3748]: jsx-eslint/eslint-plugin-react#3748 [#3724]: jsx-eslint/eslint-plugin-react#3724 [#3694]: jsx-eslint/eslint-plugin-react#3694 ## [v7.34.4](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7344---20240713) ##### Fixed - \[`prop-types`]: fix `className` missing in prop validation false negative ([#3749][] [@akulsr0](https://github.com/akulsr0)) - \[`sort-prop-types`]: Check for undefined before accessing `node.typeAnnotation.typeAnnotation` ([#3779][] [@tylerlaprade](https://github.com/tylerlaprade)) [7.34.4]: jsx-eslint/eslint-plugin-react@v7.34.3...v7.34.4 [#3779]: jsx-eslint/eslint-plugin-react#3779 [#3749]: jsx-eslint/eslint-plugin-react#3749 ## [v7.34.3](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7343---20240618) ##### Fixed - \[`prop-types`]: null-check rootNode before calling getScope ([#3762][] [@crnhrv](https://github.com/crnhrv)) - \[`boolean-prop-naming`]: avoid a crash with a spread prop ([#3733][] [@ljharb](https://github.com/ljharb)) - \[`jsx-boolean-value`]: `assumeUndefinedIsFalse` with `never` must not allow explicit `true` value ([#3757][] [@6uliver](https://github.com/6uliver)) - \[`no-object-type-as-default-prop`]: enable rule for components with many parameters ([#3768][] [@JulienR1](https://github.com/JulienR1)) - \[`jsx-key`]: incorrect behavior for checkKeyMustBeforeSpread with map callbacks ([#3769][] [@akulsr0](https://github.com/akulsr0)) [7.34.3]: jsx-eslint/eslint-plugin-react@v7.34.2...v7.34.3 [#3769]: jsx-eslint/eslint-plugin-react#3769 [#3768]: jsx-eslint/eslint-plugin-react#3768 [#3762]: jsx-eslint/eslint-plugin-react#3762 [#3757]: jsx-eslint/eslint-plugin-react#3757 [#3733]: jsx-eslint/eslint-plugin-react#3733 ## [v7.34.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7342---20240524) ##### Fixed - \[`boolean-prop-naming`]: avoid a crash with a non-TSTypeReference type ([#3718][] [@developer-bandi](https://github.com/developer-bandi)) - \[`jsx-no-leaked-render`]: invalid report if left eside is boolean ([#3746][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-closing-bracket-location`]: message shows `{{details}}` when there are no details ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic)) - \[`no-invalid-html-attribute`]: ensure error messages are correct ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic), [@ljharb](https://github.com/ljharb)) ##### Changed - \[Refactor] create various eslint utils to fix eslint deprecations ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic), [@ljharb](https://github.com/ljharb)) [7.34.2]: jsx-eslint/eslint-plugin-react@v7.34.1...v7.34.2 [#3759]: jsx-eslint/eslint-plugin-react#3759 [#3746]: jsx-eslint/eslint-plugin-react#3746 [#3718]: jsx-eslint/eslint-plugin-react#3718 ## [v7.34.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7341---20240315) ##### Fixed - \[`jsx-no-leaked-render`]: prevent wrongly adding parens ([#3700][] [@developer-bandi](https://github.com/developer-bandi)) - \[`boolean-prop-naming`]: detect TS interfaces ([#3701][] [@developer-bandi](https://github.com/developer-bandi)) - \[`boolean-prop-naming`]: literalType error fix ([#3704][] [@developer-bandi](https://github.com/developer-bandi)) - \[`boolean-prop-naming`]: allow TSIntersectionType ([#3705][] [@developer-bandi](https://github.com/developer-bandi)) - \[`no-unknown-property`]: support `popover`, `popovertarget`, `popovertargetaction` attributes ([#3707][] [@ljharb](https://github.com/ljharb)) - \[`no-unknown-property`]: only match `data-*` attributes containing `-` ([#3713][] [@silverwind](https://github.com/silverwind)) - \[`checked-requires-onchange-or-readonly`]: correct options that were behaving opposite ([#3715][] [@jaesoekjjang](https://github.com/jaesoekjjang)) ##### Changed - \[`boolean-prop-naming`]: improve error message ([@ljharb](https://github.com/ljharb)) [7.34.1]: jsx-eslint/eslint-plugin-react@v7.34.0...v7.34.1 [#3715]: jsx-eslint/eslint-plugin-react#3715 [#3713]: jsx-eslint/eslint-plugin-react#3713 [#3707]: jsx-eslint/eslint-plugin-react#3707 [#3705]: jsx-eslint/eslint-plugin-react#3705 [#3704]: jsx-eslint/eslint-plugin-react#3704 [#3701]: jsx-eslint/eslint-plugin-react#3701 [#3700]: jsx-eslint/eslint-plugin-react#3700 ## [v7.34.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7340---20240303) ##### Added - \[`sort-prop-types`]: give errors on TS types ([#3615][] [@akulsr0](https://github.com/akulsr0)) - \[`no-invalid-html-attribute`]: add support for `apple-touch-startup-image` `rel` attributes in `link` tags ([#3638][] [@thomashockaday](https://github.com/thomashockaday)) - \[`no-unknown-property`]: add requireDataLowercase option ([#3645][] [@HermanBilous](https://github.com/HermanBilous)) - \[`no-unknown-property`]: add `displaystyle` on `<math>` ([#3652][] [@lounsbrough](https://github.com/lounsbrough)) - \[`prefer-read-only-props`], \[`prop-types`], component detection: allow components to be async functions ([#3654][] [@pnodet](https://github.com/pnodet)) - \[`no-unknown-property`]: support `onResize` on audio/video tags ([#3662][] [@caesar1030](https://github.com/caesar1030)) - \[`jsx-wrap-multilines`]: add `never` option to prohibit wrapping parens on multiline JSX ([#3668][] [@reedws](https://github.com/reedws)) - \[`jsx-filename-extension`]: add `ignoreFilesWithoutCode` option to allow empty files ([#3674][] [@burtek](https://github.com/burtek)) - \[`jsx-boolean-value`]: add `assumeUndefinedIsFalse` option ([#3675][] [@developer-bandi](https://github.com/developer-bandi)) - `linkAttribute` setting, \[`jsx-no-target-blank`]: support multiple properties ([#3673][] [@burtek](https://github.com/burtek)) - \[`jsx-no-script-url`]: add `includeFromSettings` option to support `linkAttributes` setting ([#3673][] [@burtek](https://github.com/burtek)) - \[`jsx-one-expression-per-line`]: add `non-jsx` option to allow non-JSX children in one line ([#3677][] [@burtek](https://github.com/burtek)) - add \[`checked-requires-onchange-or-readonly`] rule ([#3680][] [@jaesoekjjang](https://github.com/jaesoekjjang)) ##### Fixed - \[`jsx-no-leaked-render`]: preserve RHS parens for multiline jsx elements while fixing ([#3623][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-key`]: detect conditional returns ([#3630][] [@yialo](https://github.com/yialo)) - \[`jsx-newline`]: prevent a crash when `allowMultilines` ([#3633][] [@ljharb](https://github.com/ljharb)) - \[`no-unknown-property`]: use a better regex to avoid a crash ([#3666][] [@ljharb](https://github.com/ljharb) [@SCH227](https://github.com/SCH227)) - \[`prop-types`]: handle nested forwardRef + memo ([#3679][] [@developer-bandi](https://github.com/developer-bandi)) - \[`no-unknown-property`]: add `fetchPriority` ([#3697][] [@SevereCloud](https://github.com/SevereCloud)) - \[`forbid-elements`]: prevent a crash on `createElement()` ([#3632][] [@ljharb](https://github.com/ljharb)) ##### Changed - \[`jsx-boolean-value`]: make error messages clearer ([#3691][] [@developer-bandi](https://github.com/developer-bandi)) - \[Refactor] `propTypes`: extract type params to var ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Refactor] \[`boolean-prop-naming`]: invert if statement ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Refactor] \[`function-component-definition`]: exit early if no type params ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Refactor] \[`jsx-props-no-multi-spaces`]: extract type parameters to var ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Docs] \[`jsx-key`]: fix correct example ([#3656][] [@developer-bandi](https://github.com/developer-bandi)) - \[Tests] `jsx-wrap-multilines`: passing tests ([#3545][] [@burtek](https://github.com/burtek)) - \[Docs] \[`iframe-missing-sandbox`]: fix link to iframe attribute on mdn ([#3690][] [@nnmrts](https://github.com/nnmrts)) - \[Docs] \[`hook-use-state`]: fix an undefined variable ([#3626][] [@chentsulin](https://github.com/chentsulin)) [7.34.0]: jsx-eslint/eslint-plugin-react@v7.33.2...v7.34.0 [#3697]: jsx-eslint/eslint-plugin-react#3697 [#3691]: jsx-eslint/eslint-plugin-react#3691 [#3690]: jsx-eslint/eslint-plugin-react#3690 [#3680]: jsx-eslint/eslint-plugin-react#3680 [#3679]: jsx-eslint/eslint-plugin-react#3679 [#3677]: jsx-eslint/eslint-plugin-react#3677 [#3675]: jsx-eslint/eslint-plugin-react#3675 [#3674]: jsx-eslint/eslint-plugin-react#3674 [#3673]: jsx-eslint/eslint-plugin-react#3673 [#3668]: jsx-eslint/eslint-plugin-react#3668 [#3666]: jsx-eslint/eslint-plugin-react#3666 [#3662]: jsx-eslint/eslint-plugin-react#3662 [#3656]: jsx-eslint/eslint-plugin-react#3656 [#3654]: jsx-eslint/eslint-plugin-react#3654 [#3652]: jsx-eslint/eslint-plugin-react#3652 [#3645]: jsx-eslint/eslint-plugin-react#3645 [#3638]: jsx-eslint/eslint-plugin-react#3638 [#3634]: jsx-eslint/eslint-plugin-react#3634 [#3633]: jsx-eslint/eslint-plugin-react#3633 [#3632]: jsx-eslint/eslint-plugin-react#3632 [#3630]: jsx-eslint/eslint-plugin-react#3630 [#3626]: jsx-eslint/eslint-plugin-react#3626 [#3623]: jsx-eslint/eslint-plugin-react#3623 [#3615]: jsx-eslint/eslint-plugin-react#3615 [#3545]: jsx-eslint/eslint-plugin-react#3545 ## [v7.33.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7332---20230815) ##### Fixed - \[`no-deprecated`]: prevent false positive on commonjs import ([#3614][] [@akulsr0](https://github.com/akulsr0)) - \[`no-unsafe`]: report on the method instead of the entire component ([@ljharb](https://github.com/ljharb)) - \[`no-deprecated`]: report on the destructured property instead of the entire variable declarator ([@ljharb](https://github.com/ljharb)) - \[`no-deprecated`]: report on the imported specifier instead of the entire import statement ([@ljharb](https://github.com/ljharb)) - \[`no-invalid-html-attribute`]: report more granularly ([@ljharb](https://github.com/ljharb)) [7.33.2]: jsx-eslint/eslint-plugin-react@v7.33.1...v7.33.2 [#3614]: jsx-eslint/eslint-plugin-react#3614 ## [v7.33.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7331---20230729) ##### Fixed - \[`require-default-props`]: fix config schema ([#3605][] [@controversial](https://github.com/controversial)) - \[`jsx-curly-brace-presence`]: Revert \[[#3538](https://github.com/jsx-eslint/eslint-plugin-react/issues/3538)]\[] due to issues with intended string type casting usage ([#3611][] [@taozhou-glean](https://github.com/taozhou-glean)) - \[`sort-prop-types`]: ensure sort-prop-types respects noSortAlphabetically ([#3610][] [@caesar1030](https://github.com/caesar1030)) [7.33.1]: jsx-eslint/eslint-plugin-react@v7.33.0...v7.33.1 [#3611]: jsx-eslint/eslint-plugin-react#3611 [#3610]: jsx-eslint/eslint-plugin-react#3610 [#3605]: jsx-eslint/eslint-plugin-react#3605 ## [v7.33.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7330---20230719) ##### Added - \[`display-name`]: add `checkContextObjects` option ([#3529][] [@JulesBlm](https://github.com/JulesBlm)) - \[`jsx-first-prop-new-line`]: add `multiprop` option ([#3533][] [@haydncomley](https://github.com/haydncomley)) - \[`no-deprecated`]: add React 18 deprecations ([#3548][] [@sergei-startsev](https://github.com/sergei-startsev)) - \[`forbid-component-props`]: add `disallowedFor` option ([#3417][] [@jacketwpbb](https://github.com/jacketwpbb)) ##### Fixed - \[`no-array-index-key`]: consider flatMap ([#3530][] [@k-yle](https://github.com/k-yle)) - \[`jsx-curly-brace-presence`]: handle single and only expression template literals ([#3538][] [@taozhou-glean](https://github.com/taozhou-glean)) - \[`no-unknown-property`]: allow `onLoad` on `source` ([@ljharb](https://github.com/ljharb)) - \[`jsx-first-prop-new-line`]: ensure autofix preserves generics in component name ([#3546][] [@ljharb](https://github.com/ljharb)) - \[`no-unknown-property`]: allow `fill` prop on `<symbol>` ([#3555][] [@stefanprobst](https://github.com/stefanprobst)) - \[`display-name`], \[`prop-types`]: when checking for a capitalized name, ignore underscores entirely ([#3560][] [@ljharb](https://github.com/ljharb)) - \[`no-unused-state`]: avoid crashing on a class field function with destructured state ([#3568][] [@ljharb](https://github.com/ljharb)) - \[`no-unused-prop-types`]: allow using spread with object expression in jsx ([#3570][] [@akulsr0](https://github.com/akulsr0)) - Revert "\[`destructuring-assignment`]: Handle destructuring of useContext in SFC" ([#3583][] \[[#2797](https://github.com/jsx-eslint/eslint-plugin-react/issues/2797)]\[] [@102](https://github.com/102)) - \[`prefer-read-only-props`]: add TS support ([#3593][] [@HenryBrown0](https://github.com/HenryBrown0)) ##### Changed - \[Docs] \[`jsx-newline`], \[`no-unsafe`], \[`static-property-placement`]: Fix code syntax highlighting ([#3563][] [@nbsp1221](https://github.com/nbsp1221)) - \[readme] resore configuration URL ([#3582][] [@gokaygurcan](https://github.com/gokaygurcan)) - \[Docs] \[`jsx-no-bind`]: reword performance rationale ([#3581][] [@gpoole](https://github.com/gpoole)) <!----> - \[Docs] \[`jsx-first-prop-new-line`]: add missing `multiprop` value ([#3598][] [@dzek69](https://github.com/dzek69)) [7.33.0]: jsx-eslint/eslint-plugin-react@v7.32.2...v7.33.0 [#3598]: jsx-eslint/eslint-plugin-react#3598 [#3593]: jsx-eslint/eslint-plugin-react#3593 [#3583]: jsx-eslint/eslint-plugin-react#3583 [#3582]: jsx-eslint/eslint-plugin-react#3582 [#3581]: jsx-eslint/eslint-plugin-react#3581 [#3570]: jsx-eslint/eslint-plugin-react#3570 [#3568]: jsx-eslint/eslint-plugin-react#3568 [#3563]: jsx-eslint/eslint-plugin-react#3563 [#3560]: jsx-eslint/eslint-plugin-react#3560 [#3555]: jsx-eslint/eslint-plugin-react#3555 [#3548]: jsx-eslint/eslint-plugin-react#3548 [#3546]: jsx-eslint/eslint-plugin-react#3546 [#3538]: jsx-eslint/eslint-plugin-react#3538 [#3533]: jsx-eslint/eslint-plugin-react#3533 [#3530]: jsx-eslint/eslint-plugin-react#3530 [#3529]: jsx-eslint/eslint-plugin-react#3529 [#3417]: jsx-eslint/eslint-plugin-react#3417 ## [v7.32.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7322---20230128) ##### Fixed - configs: restore `parserOptions` in legacy configs (\[[#3523](https://github.com/jsx-eslint/eslint-plugin-react/issues/3523)]\[] [@ljharb](https://github.com/ljharb)) - \[`jsx-no-constructed-context-values`], \[`jsx-no-useless-fragment`]: add a rule schema ([@ljharb](https://github.com/ljharb)) ( \[`no-unknown-property`]: add `fill` for `<marker>` ([#3525][] [@alexey-koran](https://github.com/alexey-koran)) [7.32.2]: jsx-eslint/eslint-plugin-react@v7.32.1...v7.32.2 [#3525]: jsx-eslint/eslint-plugin-react#3525 [#3520]: jsx-eslint/eslint-plugin-react#3523 ## [v7.32.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7321---20230116) ##### Fixed - prevent circular dependency in index and "all" config ([#3519][] [@ljharb](https://github.com/ljharb)) - \[`destructuring-assignment`]: do not force destructuring of optionally chained properties ([#3520][] [@ljharb](https://github.com/ljharb)) [7.32.1]: jsx-eslint/eslint-plugin-react@v7.32.0...v7.32.1 [#3520]: jsx-eslint/eslint-plugin-react#3520 [#3519]: jsx-eslint/eslint-plugin-react#3519 ## [v7.32.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7320---20230110) ##### Added - support new config system ([#3429][] [@jjangga0214](https://github.com/jjangga0214)) - \[`hook-use-state`]: add `allowDestructuredState` option ([#3449][] [@ljharb](https://github.com/ljharb)) - add \[`sort-default-props`] and deprecate \[`jsx-sort-default-props`] ([#1861][] [@alexzherdev](https://github.com/alexzherdev)) - add \[`no-object-type-as-default-prop`] rule ([#2848][] [@cyan33](https://github.com/cyan33) [@fengkx](https://github.com/fengkx)) ##### Fixed - configs: avoid legacy config system error ([#3461][] [@ljharb](https://github.com/ljharb)) - \[`sort-prop-types`]: restore autofixing ([#3452][], [#3471][] [@ROSSROSALES](https://github.com/ROSSROSALES)) - \[`no-unknown-property`]: do not check `fbs` elements ([#3494][] [@brianogilvie](https://github.com/brianogilvie)) - \[`jsx-newline`]: No newline between comments and jsx elements ([#3493][] [@justmejulian](https://github.com/justmejulian)) - \[`jsx-no-leaked-render`]: Don't report errors on empty strings if React >= v18 ([#3488][] [@himanshu007-creator](https://github.com/himanshu007-creator)) - \[`no-invalid-html-attribute`]: convert autofix to suggestion ([#3474][] [@himanshu007-creator](https://github.com/himanshu007-creator) [@ljharb](https://github.com/ljharb)) - \[`jsx-no-leaked-render`]: fix removing parentheses for conditionals ([#3502][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-no-leaked-render`]: invalid fixes in coerce mode ([#3511][] [@akulsr0](https://github.com/akulsr0)) - \[`destructuring-assignment`]: Handle destructuring of useContext in SFC ([#2797][] [@Zinyon](https://github.com/Zinyon) [@ljharb](https://github.com/ljharb)) ##### Changed - \[Docs] \[`jsx-no-leaked-render`]: Remove mentions of empty strings for React 18 ([#3468][] [@karlhorky](https://github.com/karlhorky)) - \[Docs] update `eslint-doc-generator` to v1.0.0 ([#3499][] [@bmish](https://github.com/bmish)) - \[meta] add issue template ([#3483][] [@ROSSROSALES](https://github.com/ROSSROSALES)) - \[Docs] Use emoji for jsx-runtime config and config file for eslint-doc-generator ([#3504][] [@bmish](https://github.com/bmish)) - \[Docs] \[`prefer-exact-props`]: fix example flow syntax ([#3510][] [@smackfu](https://github.com/smackfu)) - \[Perf] use `anyOf` instead of `oneOf` ([@ljharb](https://github.com/ljharb) [@remcohaszing](https://github.com/remcohaszing)) [7.32.0]: jsx-eslint/eslint-plugin-react@v7.31.11...v7.32.0 [#3511]: jsx-eslint/eslint-plugin-react#3511 [#3510]: jsx-eslint/eslint-plugin-react#3510 [#3504]: jsx-eslint/eslint-plugin-react#3504 [#3502]: jsx-eslint/eslint-plugin-react#3502 [#3499]: jsx-eslint/eslint-plugin-react#3499 [#3494]: jsx-eslint/eslint-plugin-react#3494 [#3493]: jsx-eslint/eslint-plugin-react#3493 [#3488]: jsx-eslint/eslint-plugin-react#3488 [#3483]: jsx-eslint/eslint-plugin-react#3483 [#3474]: jsx-eslint/eslint-plugin-react#3474 [#3471]: jsx-eslint/eslint-plugin-react#3471 [#3468]: jsx-eslint/eslint-plugin-react#3468 [#3461]: jsx-eslint/eslint-plugin-react#3461 [#3452]: jsx-eslint/eslint-plugin-react#3452 [#3449]: jsx-eslint/eslint-plugin-react#3449 [#3429]: jsx-eslint/eslint-plugin-react#3429 [#2848]: jsx-eslint/eslint-plugin-react#2848 [#2797]: jsx-eslint/eslint-plugin-react#2797 [#1861]: jsx-eslint/eslint-plugin-react#1861 ## [v7.31.11](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#73111---20221117) ##### Fixed - \[`jsx-no-target-blank`]: allow ternaries with literals ([#3464][] [@akulsr0](https://github.com/akulsr0)) - \[`no-unknown-property`]: add `inert` attribute ([#3484][] [@ljharb](https://github.com/ljharb)) - \[`jsx-key`]: detect keys in logical expression and conditional expression ([#3490][] [@metreniuk](https://github.com/metreniuk)) ##### Changed - \[Perf] component detection: improve performance by avoiding traversing parents unnecessarily ([#3459][] [@golopot](https://github.com/golopot)) - \[Docs] `forbid-component-props`: inclusive language w/ allowlist ([#3473][] [@AndersDJohnson](https://github.com/AndersDJohnson)) - \[Docs] automate doc generation with `eslint-doc-generator` ([#3469][] [@bmish](https://github.com/bmish)) [7.31.11]: jsx-eslint/eslint-plugin-react@v7.31.10...v7.31.11 [#3490]: jsx-eslint/eslint-plugin-react#3490 [#3484]: jsx-eslint/eslint-plugin-react#3484 [#3473]: jsx-eslint/eslint-plugin-react#3473 [#3469]: jsx-eslint/eslint-plugin-react#3469 [#3464]: jsx-eslint/eslint-plugin-react#3464 [#3459]: jsx-eslint/eslint-plugin-react#3459
renovate bot
added a commit
to andrei-picus-tink/auto-renovate
that referenced
this issue
Feb 26, 2025
| datasource | package | from | to | | ---------- | ------------------- | ------- | ------ | | npm | eslint-plugin-react | 7.31.10 | 7.37.4 | ## [v7.37.4](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7374---20250112) ##### Fixed - \[`no-unknown-property`]: support `onBeforeToggle`, `popoverTarget`, `popoverTargetAction` attributes ([#3865][] [@acusti](https://github.com/acusti)) - \[types] fix types of flat configs ([#3874][] [@ljharb](https://github.com/ljharb)) [7.37.4]: jsx-eslint/eslint-plugin-react@v7.37.3...v7.37.4 [#3874]: jsx-eslint/eslint-plugin-react#3874 [#3865]: jsx-eslint/eslint-plugin-react#3865 ## [v7.37.3](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7373---20241223) ##### Fixed - \[`no-danger`]: avoid a crash on a nested component name ([#3833][] [@ljharb](https://github.com/ljharb)) - \[Fix] types: correct generated type declaration ([#3840][] [@ocavue](https://github.com/ocavue)) - \[`no-unknown-property`]: support `precedence` prop in react 19 ([#3829][] [@acusti](https://github.com/acusti)) - \[`prop-types`]: props missing in validation when using generic types from a namespace import ([#3859][] [@rbondoc96](https://github.com/rbondoc96)) ##### Changed - \[Tests] \[`jsx-no-script-url`]: Improve tests ([#3849][] [@radu2147](https://github.com/radu2147)) - \[Docs] fix broken links: \[`default-props-match-prop-types`], \[`jsx-boolean-value`], \[`jsx-curly-brace-presence`], \[`jsx-no-bind`], \[`no-array-index-key`], \[`no-is-mounted`], \[`no-render-return-value`], \[`require-default-props`] ([#3841][] [@bastiendmt](https://github.com/bastiendmt)) [7.37.3]: jsx-eslint/eslint-plugin-react@v7.37.2...v7.37.3 [#3859]: jsx-eslint/eslint-plugin-react#3859 [#3849]: jsx-eslint/eslint-plugin-react#3849 [#3841]: jsx-eslint/eslint-plugin-react#3841 [#3840]: jsx-eslint/eslint-plugin-react#3840 [#3833]: jsx-eslint/eslint-plugin-react#3833 [#3829]: jsx-eslint/eslint-plugin-react#3829 ## [v7.37.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7372---20241022) ##### Fixed - \[`destructuring-assignment`]: fix false negative when using `typeof props.a` ([#3835][] [@golopot](https://github.com/golopot)) ##### Changed - \[Refactor] \[`destructuring-assignment`]: use `getParentStatelessComponent` ([#3835][] [@golopot](https://github.com/golopot)) [7.37.2]: jsx-eslint/eslint-plugin-react@v7.37.1...v7.37.2 [#3835]: jsx-eslint/eslint-plugin-react#3835 ## [v7.37.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7371---20241001) ##### Fixed - \[meta] do not npmignore `d.ts` files ([#3836][] [@ljharb](https://github.com/ljharb)) ##### Changed - \[readme] Fix shared settings link ([#3834][] [@MgenGlder](https://github.com/MgenGlder)) [7.37.1]: jsx-eslint/eslint-plugin-react@v7.37.0...v7.37.1 [#3836]: jsx-eslint/eslint-plugin-react#3836 [#3834]: jsx-eslint/eslint-plugin-react#3834 ## [v7.37.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7370---20240926) ##### Added - add type generation ([#3830][] [@voxpelli](https://github.com/voxpelli)) - \[`no-unescaped-entities`]: add suggestions ([#3831][] [@StyleShit](https://github.com/StyleShit)) - \[`forbid-component-props`]: add `allowedForPatterns`/`disallowedForPatterns` options ([#3805][] [@Efimenko](https://github.com/Efimenko)) - \[`no-unstable-nested-components`]: add `propNamePattern` to support custom render prop naming conventions ([#3826][] [@danreeves](https://github.com/danreeves)) ##### Changed - \[readme] flat config example for react 17+ ([#3824][] [@GabenGar](https://github.com/GabenGar)) [7.37.0]: jsx-eslint/eslint-plugin-react@v7.36.1...v7.37.0 [#3831]: jsx-eslint/eslint-plugin-react#3831 [#3830]: jsx-eslint/eslint-plugin-react#3830 [#3826]: jsx-eslint/eslint-plugin-react#3826 [#3824]: jsx-eslint/eslint-plugin-react#3824 [#3805]: jsx-eslint/eslint-plugin-react#3805 ## [v7.36.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7361---20240912) ##### Fixed - \[`no-is-mounted`]: fix logic in method name check ([#3821][] [@Mathias-S](https://github.com/Mathias-S)) - \[`jsx-no-literals`]: Avoid crashing on valueless boolean props ([#3823][] [@reosarevok](https://github.com/reosarevok)) [7.36.1]: jsx-eslint/eslint-plugin-react@v7.36.0...v7.36.1 [#3823]: jsx-eslint/eslint-plugin-react#3823 [#3821]: jsx-eslint/eslint-plugin-react#3821 ## [v7.36.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7360---20240912) ##### Added - \[`no-string-refs`]: allow this.refs in > 18.3.0 ([#3807][] [@henryqdineen](https://github.com/henryqdineen)) - \[`jsx-no-literals`] Add `elementOverrides` option and the ability to ignore this rule on specific elements ([#3812][] [@Pearce-Ropion](https://github.com/Pearce-Ropion)) - \[`forward-ref-uses-ref`]: add rule for checking ref parameter is added (\[[#3667](https://github.com/jsx-eslint/eslint-plugin-react/issues/3667)]\[] [@NotWoods](https://github.com/NotWoods)) ##### Fixed - \[`function-component-definition`], \[`boolean-prop-naming`], \[`jsx-first-prop-new-line`], \[`jsx-props-no-multi-spaces`], `propTypes`: use type args ([#3629][] [@HenryBrown0](https://github.com/HenryBrown0)) - JSX pragma: fail gracefully ([#3632][] [@ljharb](https://github.com/ljharb)) - \[`jsx-props-no-spreading`]: add `explicitSpread` option to schema ([#3799][] [@ljharb](https://github.com/ljharb)) ##### Changed - \[Tests] add [@typescript-eslint/parser](https://github.com/typescript-eslint/parser) v6 ([#3629][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Tests] add [@typescript-eslint/parser](https://github.com/typescript-eslint/parser) v7 and v8 ([#3629][] [@hampustagerud](https://github.com/hampustagerud)) - \[Docs] \[`no-danger`]: update broken link ([#3817][] [@lucasrmendonca](https://github.com/lucasrmendonca)) - \[types] add jsdoc type annotations ([#3731][] [@y-hsgw](https://github.com/y-hsgw)) - \[Tests] `button-has-type`: add test case with spread ([#3731][] [@y-hsgw](https://github.com/y-hsgw)) [7.36.0]: jsx-eslint/eslint-plugin-react@v7.35.2...v7.36.0 [#3799]: jsx-eslint/eslint-plugin-react#3799 [#3632]: jsx-eslint/eslint-plugin-react#3632 [#3812]: jsx-eslint/eslint-plugin-react#3812 [#3731]: jsx-eslint/eslint-plugin-react#3731 [#3694]: jsx-eslint/eslint-plugin-react#3667 [#3629]: jsx-eslint/eslint-plugin-react#3629 [#3817]: jsx-eslint/eslint-plugin-react#3817 [#3807]: jsx-eslint/eslint-plugin-react#3807 ## [v7.35.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7352---20240903) ##### Fixed - \[`jsx-curly-brace-presence`]: avoid autofixing attributes with double quotes to a double quoted attribute ([#3814][] [@ljharb](https://github.com/ljharb)) [7.35.2]: jsx-eslint/eslint-plugin-react@v7.35.1...v7.35.2 [#3814]: jsx-eslint/eslint-plugin-react#3814 ## [v7.35.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7351---20240902) ##### Fixed - \[`jsx-curly-brace-presence`]: do not trigger on strings containing a quote character ([#3798][] [@akulsr0](https://github.com/akulsr0)) [7.35.1]: jsx-eslint/eslint-plugin-react@v7.35.0...v7.35.1 [#3798]: jsx-eslint/eslint-plugin-react#3798 ## [v7.35.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7350---20240719) ##### Added - support eslint v9 ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic)) - export flat configs from plugin root and fix flat config crash ([#3694][] [@bradzacher](https://github.com/bradzacher) [@mdjermanovic](https://github.com/mdjermanovic)) - add \[`jsx-props-no-spread-multi`] ([#3724][] [@SimonSchick](https://github.com/SimonSchick)) - \[`forbid-component-props`]: add `propNamePattern` to allow / disallow prop name patterns ([#3774][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-handler-names`]: support ignoring component names ([#3772][] [@akulsr0](https://github.com/akulsr0)) - version settings: Allow react defaultVersion to be configurable ([#3771][] [@onlywei](https://github.com/onlywei)) - \[`jsx-closing-tag-location`]: add `line-aligned` option ([#3777] [@kimtaejin3](https://github.com/kimtaejin3)) - \[`no-danger`]: add `customComponentNames` option ([#3748][] [@akulsr0](https://github.com/akulsr0)) ##### Fixed - \[`no-invalid-html-attribute`]: substitute placeholders in suggestion messages ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic)) - \[`sort-prop-types`]: single line type ending without semicolon ([#3784][] [@akulsr0](https://github.com/akulsr0)) - \[`require-default-props`]: report when required props have default value ([#3785][] [@akulsr0](https://github.com/akulsr0)) ##### Changed - \[Refactor] `variableUtil`: Avoid creating a single flat variable scope for each lookup ([#3782][] [@DanielRosenwasser](https://github.com/DanielRosenwasser)) [7.35.0]: jsx-eslint/eslint-plugin-react@v7.34.4...v7.35.0 [#3785]: jsx-eslint/eslint-plugin-react#3785 [#3784]: jsx-eslint/eslint-plugin-react#3784 [#3782]: jsx-eslint/eslint-plugin-react#3782 [#3777]: jsx-eslint/eslint-plugin-react#3777 [#3774]: jsx-eslint/eslint-plugin-react#3774 [#3772]: jsx-eslint/eslint-plugin-react#3772 [#3771]: jsx-eslint/eslint-plugin-react#3771 [#3759]: jsx-eslint/eslint-plugin-react#3759 [#3748]: jsx-eslint/eslint-plugin-react#3748 [#3724]: jsx-eslint/eslint-plugin-react#3724 [#3694]: jsx-eslint/eslint-plugin-react#3694 ## [v7.34.4](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7344---20240713) ##### Fixed - \[`prop-types`]: fix `className` missing in prop validation false negative ([#3749][] [@akulsr0](https://github.com/akulsr0)) - \[`sort-prop-types`]: Check for undefined before accessing `node.typeAnnotation.typeAnnotation` ([#3779][] [@tylerlaprade](https://github.com/tylerlaprade)) [7.34.4]: jsx-eslint/eslint-plugin-react@v7.34.3...v7.34.4 [#3779]: jsx-eslint/eslint-plugin-react#3779 [#3749]: jsx-eslint/eslint-plugin-react#3749 ## [v7.34.3](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7343---20240618) ##### Fixed - \[`prop-types`]: null-check rootNode before calling getScope ([#3762][] [@crnhrv](https://github.com/crnhrv)) - \[`boolean-prop-naming`]: avoid a crash with a spread prop ([#3733][] [@ljharb](https://github.com/ljharb)) - \[`jsx-boolean-value`]: `assumeUndefinedIsFalse` with `never` must not allow explicit `true` value ([#3757][] [@6uliver](https://github.com/6uliver)) - \[`no-object-type-as-default-prop`]: enable rule for components with many parameters ([#3768][] [@JulienR1](https://github.com/JulienR1)) - \[`jsx-key`]: incorrect behavior for checkKeyMustBeforeSpread with map callbacks ([#3769][] [@akulsr0](https://github.com/akulsr0)) [7.34.3]: jsx-eslint/eslint-plugin-react@v7.34.2...v7.34.3 [#3769]: jsx-eslint/eslint-plugin-react#3769 [#3768]: jsx-eslint/eslint-plugin-react#3768 [#3762]: jsx-eslint/eslint-plugin-react#3762 [#3757]: jsx-eslint/eslint-plugin-react#3757 [#3733]: jsx-eslint/eslint-plugin-react#3733 ## [v7.34.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7342---20240524) ##### Fixed - \[`boolean-prop-naming`]: avoid a crash with a non-TSTypeReference type ([#3718][] [@developer-bandi](https://github.com/developer-bandi)) - \[`jsx-no-leaked-render`]: invalid report if left eside is boolean ([#3746][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-closing-bracket-location`]: message shows `{{details}}` when there are no details ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic)) - \[`no-invalid-html-attribute`]: ensure error messages are correct ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic), [@ljharb](https://github.com/ljharb)) ##### Changed - \[Refactor] create various eslint utils to fix eslint deprecations ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic), [@ljharb](https://github.com/ljharb)) [7.34.2]: jsx-eslint/eslint-plugin-react@v7.34.1...v7.34.2 [#3759]: jsx-eslint/eslint-plugin-react#3759 [#3746]: jsx-eslint/eslint-plugin-react#3746 [#3718]: jsx-eslint/eslint-plugin-react#3718 ## [v7.34.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7341---20240315) ##### Fixed - \[`jsx-no-leaked-render`]: prevent wrongly adding parens ([#3700][] [@developer-bandi](https://github.com/developer-bandi)) - \[`boolean-prop-naming`]: detect TS interfaces ([#3701][] [@developer-bandi](https://github.com/developer-bandi)) - \[`boolean-prop-naming`]: literalType error fix ([#3704][] [@developer-bandi](https://github.com/developer-bandi)) - \[`boolean-prop-naming`]: allow TSIntersectionType ([#3705][] [@developer-bandi](https://github.com/developer-bandi)) - \[`no-unknown-property`]: support `popover`, `popovertarget`, `popovertargetaction` attributes ([#3707][] [@ljharb](https://github.com/ljharb)) - \[`no-unknown-property`]: only match `data-*` attributes containing `-` ([#3713][] [@silverwind](https://github.com/silverwind)) - \[`checked-requires-onchange-or-readonly`]: correct options that were behaving opposite ([#3715][] [@jaesoekjjang](https://github.com/jaesoekjjang)) ##### Changed - \[`boolean-prop-naming`]: improve error message ([@ljharb](https://github.com/ljharb)) [7.34.1]: jsx-eslint/eslint-plugin-react@v7.34.0...v7.34.1 [#3715]: jsx-eslint/eslint-plugin-react#3715 [#3713]: jsx-eslint/eslint-plugin-react#3713 [#3707]: jsx-eslint/eslint-plugin-react#3707 [#3705]: jsx-eslint/eslint-plugin-react#3705 [#3704]: jsx-eslint/eslint-plugin-react#3704 [#3701]: jsx-eslint/eslint-plugin-react#3701 [#3700]: jsx-eslint/eslint-plugin-react#3700 ## [v7.34.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7340---20240303) ##### Added - \[`sort-prop-types`]: give errors on TS types ([#3615][] [@akulsr0](https://github.com/akulsr0)) - \[`no-invalid-html-attribute`]: add support for `apple-touch-startup-image` `rel` attributes in `link` tags ([#3638][] [@thomashockaday](https://github.com/thomashockaday)) - \[`no-unknown-property`]: add requireDataLowercase option ([#3645][] [@HermanBilous](https://github.com/HermanBilous)) - \[`no-unknown-property`]: add `displaystyle` on `<math>` ([#3652][] [@lounsbrough](https://github.com/lounsbrough)) - \[`prefer-read-only-props`], \[`prop-types`], component detection: allow components to be async functions ([#3654][] [@pnodet](https://github.com/pnodet)) - \[`no-unknown-property`]: support `onResize` on audio/video tags ([#3662][] [@caesar1030](https://github.com/caesar1030)) - \[`jsx-wrap-multilines`]: add `never` option to prohibit wrapping parens on multiline JSX ([#3668][] [@reedws](https://github.com/reedws)) - \[`jsx-filename-extension`]: add `ignoreFilesWithoutCode` option to allow empty files ([#3674][] [@burtek](https://github.com/burtek)) - \[`jsx-boolean-value`]: add `assumeUndefinedIsFalse` option ([#3675][] [@developer-bandi](https://github.com/developer-bandi)) - `linkAttribute` setting, \[`jsx-no-target-blank`]: support multiple properties ([#3673][] [@burtek](https://github.com/burtek)) - \[`jsx-no-script-url`]: add `includeFromSettings` option to support `linkAttributes` setting ([#3673][] [@burtek](https://github.com/burtek)) - \[`jsx-one-expression-per-line`]: add `non-jsx` option to allow non-JSX children in one line ([#3677][] [@burtek](https://github.com/burtek)) - add \[`checked-requires-onchange-or-readonly`] rule ([#3680][] [@jaesoekjjang](https://github.com/jaesoekjjang)) ##### Fixed - \[`jsx-no-leaked-render`]: preserve RHS parens for multiline jsx elements while fixing ([#3623][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-key`]: detect conditional returns ([#3630][] [@yialo](https://github.com/yialo)) - \[`jsx-newline`]: prevent a crash when `allowMultilines` ([#3633][] [@ljharb](https://github.com/ljharb)) - \[`no-unknown-property`]: use a better regex to avoid a crash ([#3666][] [@ljharb](https://github.com/ljharb) [@SCH227](https://github.com/SCH227)) - \[`prop-types`]: handle nested forwardRef + memo ([#3679][] [@developer-bandi](https://github.com/developer-bandi)) - \[`no-unknown-property`]: add `fetchPriority` ([#3697][] [@SevereCloud](https://github.com/SevereCloud)) - \[`forbid-elements`]: prevent a crash on `createElement()` ([#3632][] [@ljharb](https://github.com/ljharb)) ##### Changed - \[`jsx-boolean-value`]: make error messages clearer ([#3691][] [@developer-bandi](https://github.com/developer-bandi)) - \[Refactor] `propTypes`: extract type params to var ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Refactor] \[`boolean-prop-naming`]: invert if statement ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Refactor] \[`function-component-definition`]: exit early if no type params ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Refactor] \[`jsx-props-no-multi-spaces`]: extract type parameters to var ([#3634][] [@HenryBrown0](https://github.com/HenryBrown0)) - \[Docs] \[`jsx-key`]: fix correct example ([#3656][] [@developer-bandi](https://github.com/developer-bandi)) - \[Tests] `jsx-wrap-multilines`: passing tests ([#3545][] [@burtek](https://github.com/burtek)) - \[Docs] \[`iframe-missing-sandbox`]: fix link to iframe attribute on mdn ([#3690][] [@nnmrts](https://github.com/nnmrts)) - \[Docs] \[`hook-use-state`]: fix an undefined variable ([#3626][] [@chentsulin](https://github.com/chentsulin)) [7.34.0]: jsx-eslint/eslint-plugin-react@v7.33.2...v7.34.0 [#3697]: jsx-eslint/eslint-plugin-react#3697 [#3691]: jsx-eslint/eslint-plugin-react#3691 [#3690]: jsx-eslint/eslint-plugin-react#3690 [#3680]: jsx-eslint/eslint-plugin-react#3680 [#3679]: jsx-eslint/eslint-plugin-react#3679 [#3677]: jsx-eslint/eslint-plugin-react#3677 [#3675]: jsx-eslint/eslint-plugin-react#3675 [#3674]: jsx-eslint/eslint-plugin-react#3674 [#3673]: jsx-eslint/eslint-plugin-react#3673 [#3668]: jsx-eslint/eslint-plugin-react#3668 [#3666]: jsx-eslint/eslint-plugin-react#3666 [#3662]: jsx-eslint/eslint-plugin-react#3662 [#3656]: jsx-eslint/eslint-plugin-react#3656 [#3654]: jsx-eslint/eslint-plugin-react#3654 [#3652]: jsx-eslint/eslint-plugin-react#3652 [#3645]: jsx-eslint/eslint-plugin-react#3645 [#3638]: jsx-eslint/eslint-plugin-react#3638 [#3634]: jsx-eslint/eslint-plugin-react#3634 [#3633]: jsx-eslint/eslint-plugin-react#3633 [#3632]: jsx-eslint/eslint-plugin-react#3632 [#3630]: jsx-eslint/eslint-plugin-react#3630 [#3626]: jsx-eslint/eslint-plugin-react#3626 [#3623]: jsx-eslint/eslint-plugin-react#3623 [#3615]: jsx-eslint/eslint-plugin-react#3615 [#3545]: jsx-eslint/eslint-plugin-react#3545 ## [v7.33.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7332---20230815) ##### Fixed - \[`no-deprecated`]: prevent false positive on commonjs import ([#3614][] [@akulsr0](https://github.com/akulsr0)) - \[`no-unsafe`]: report on the method instead of the entire component ([@ljharb](https://github.com/ljharb)) - \[`no-deprecated`]: report on the destructured property instead of the entire variable declarator ([@ljharb](https://github.com/ljharb)) - \[`no-deprecated`]: report on the imported specifier instead of the entire import statement ([@ljharb](https://github.com/ljharb)) - \[`no-invalid-html-attribute`]: report more granularly ([@ljharb](https://github.com/ljharb)) [7.33.2]: jsx-eslint/eslint-plugin-react@v7.33.1...v7.33.2 [#3614]: jsx-eslint/eslint-plugin-react#3614 ## [v7.33.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7331---20230729) ##### Fixed - \[`require-default-props`]: fix config schema ([#3605][] [@controversial](https://github.com/controversial)) - \[`jsx-curly-brace-presence`]: Revert \[[#3538](https://github.com/jsx-eslint/eslint-plugin-react/issues/3538)]\[] due to issues with intended string type casting usage ([#3611][] [@taozhou-glean](https://github.com/taozhou-glean)) - \[`sort-prop-types`]: ensure sort-prop-types respects noSortAlphabetically ([#3610][] [@caesar1030](https://github.com/caesar1030)) [7.33.1]: jsx-eslint/eslint-plugin-react@v7.33.0...v7.33.1 [#3611]: jsx-eslint/eslint-plugin-react#3611 [#3610]: jsx-eslint/eslint-plugin-react#3610 [#3605]: jsx-eslint/eslint-plugin-react#3605 ## [v7.33.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7330---20230719) ##### Added - \[`display-name`]: add `checkContextObjects` option ([#3529][] [@JulesBlm](https://github.com/JulesBlm)) - \[`jsx-first-prop-new-line`]: add `multiprop` option ([#3533][] [@haydncomley](https://github.com/haydncomley)) - \[`no-deprecated`]: add React 18 deprecations ([#3548][] [@sergei-startsev](https://github.com/sergei-startsev)) - \[`forbid-component-props`]: add `disallowedFor` option ([#3417][] [@jacketwpbb](https://github.com/jacketwpbb)) ##### Fixed - \[`no-array-index-key`]: consider flatMap ([#3530][] [@k-yle](https://github.com/k-yle)) - \[`jsx-curly-brace-presence`]: handle single and only expression template literals ([#3538][] [@taozhou-glean](https://github.com/taozhou-glean)) - \[`no-unknown-property`]: allow `onLoad` on `source` ([@ljharb](https://github.com/ljharb)) - \[`jsx-first-prop-new-line`]: ensure autofix preserves generics in component name ([#3546][] [@ljharb](https://github.com/ljharb)) - \[`no-unknown-property`]: allow `fill` prop on `<symbol>` ([#3555][] [@stefanprobst](https://github.com/stefanprobst)) - \[`display-name`], \[`prop-types`]: when checking for a capitalized name, ignore underscores entirely ([#3560][] [@ljharb](https://github.com/ljharb)) - \[`no-unused-state`]: avoid crashing on a class field function with destructured state ([#3568][] [@ljharb](https://github.com/ljharb)) - \[`no-unused-prop-types`]: allow using spread with object expression in jsx ([#3570][] [@akulsr0](https://github.com/akulsr0)) - Revert "\[`destructuring-assignment`]: Handle destructuring of useContext in SFC" ([#3583][] \[[#2797](https://github.com/jsx-eslint/eslint-plugin-react/issues/2797)]\[] [@102](https://github.com/102)) - \[`prefer-read-only-props`]: add TS support ([#3593][] [@HenryBrown0](https://github.com/HenryBrown0)) ##### Changed - \[Docs] \[`jsx-newline`], \[`no-unsafe`], \[`static-property-placement`]: Fix code syntax highlighting ([#3563][] [@nbsp1221](https://github.com/nbsp1221)) - \[readme] resore configuration URL ([#3582][] [@gokaygurcan](https://github.com/gokaygurcan)) - \[Docs] \[`jsx-no-bind`]: reword performance rationale ([#3581][] [@gpoole](https://github.com/gpoole)) <!----> - \[Docs] \[`jsx-first-prop-new-line`]: add missing `multiprop` value ([#3598][] [@dzek69](https://github.com/dzek69)) [7.33.0]: jsx-eslint/eslint-plugin-react@v7.32.2...v7.33.0 [#3598]: jsx-eslint/eslint-plugin-react#3598 [#3593]: jsx-eslint/eslint-plugin-react#3593 [#3583]: jsx-eslint/eslint-plugin-react#3583 [#3582]: jsx-eslint/eslint-plugin-react#3582 [#3581]: jsx-eslint/eslint-plugin-react#3581 [#3570]: jsx-eslint/eslint-plugin-react#3570 [#3568]: jsx-eslint/eslint-plugin-react#3568 [#3563]: jsx-eslint/eslint-plugin-react#3563 [#3560]: jsx-eslint/eslint-plugin-react#3560 [#3555]: jsx-eslint/eslint-plugin-react#3555 [#3548]: jsx-eslint/eslint-plugin-react#3548 [#3546]: jsx-eslint/eslint-plugin-react#3546 [#3538]: jsx-eslint/eslint-plugin-react#3538 [#3533]: jsx-eslint/eslint-plugin-react#3533 [#3530]: jsx-eslint/eslint-plugin-react#3530 [#3529]: jsx-eslint/eslint-plugin-react#3529 [#3417]: jsx-eslint/eslint-plugin-react#3417 ## [v7.32.2](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7322---20230128) ##### Fixed - configs: restore `parserOptions` in legacy configs (\[[#3523](https://github.com/jsx-eslint/eslint-plugin-react/issues/3523)]\[] [@ljharb](https://github.com/ljharb)) - \[`jsx-no-constructed-context-values`], \[`jsx-no-useless-fragment`]: add a rule schema ([@ljharb](https://github.com/ljharb)) ( \[`no-unknown-property`]: add `fill` for `<marker>` ([#3525][] [@alexey-koran](https://github.com/alexey-koran)) [7.32.2]: jsx-eslint/eslint-plugin-react@v7.32.1...v7.32.2 [#3525]: jsx-eslint/eslint-plugin-react#3525 [#3520]: jsx-eslint/eslint-plugin-react#3523 ## [v7.32.1](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7321---20230116) ##### Fixed - prevent circular dependency in index and "all" config ([#3519][] [@ljharb](https://github.com/ljharb)) - \[`destructuring-assignment`]: do not force destructuring of optionally chained properties ([#3520][] [@ljharb](https://github.com/ljharb)) [7.32.1]: jsx-eslint/eslint-plugin-react@v7.32.0...v7.32.1 [#3520]: jsx-eslint/eslint-plugin-react#3520 [#3519]: jsx-eslint/eslint-plugin-react#3519 ## [v7.32.0](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#7320---20230110) ##### Added - support new config system ([#3429][] [@jjangga0214](https://github.com/jjangga0214)) - \[`hook-use-state`]: add `allowDestructuredState` option ([#3449][] [@ljharb](https://github.com/ljharb)) - add \[`sort-default-props`] and deprecate \[`jsx-sort-default-props`] ([#1861][] [@alexzherdev](https://github.com/alexzherdev)) - add \[`no-object-type-as-default-prop`] rule ([#2848][] [@cyan33](https://github.com/cyan33) [@fengkx](https://github.com/fengkx)) ##### Fixed - configs: avoid legacy config system error ([#3461][] [@ljharb](https://github.com/ljharb)) - \[`sort-prop-types`]: restore autofixing ([#3452][], [#3471][] [@ROSSROSALES](https://github.com/ROSSROSALES)) - \[`no-unknown-property`]: do not check `fbs` elements ([#3494][] [@brianogilvie](https://github.com/brianogilvie)) - \[`jsx-newline`]: No newline between comments and jsx elements ([#3493][] [@justmejulian](https://github.com/justmejulian)) - \[`jsx-no-leaked-render`]: Don't report errors on empty strings if React >= v18 ([#3488][] [@himanshu007-creator](https://github.com/himanshu007-creator)) - \[`no-invalid-html-attribute`]: convert autofix to suggestion ([#3474][] [@himanshu007-creator](https://github.com/himanshu007-creator) [@ljharb](https://github.com/ljharb)) - \[`jsx-no-leaked-render`]: fix removing parentheses for conditionals ([#3502][] [@akulsr0](https://github.com/akulsr0)) - \[`jsx-no-leaked-render`]: invalid fixes in coerce mode ([#3511][] [@akulsr0](https://github.com/akulsr0)) - \[`destructuring-assignment`]: Handle destructuring of useContext in SFC ([#2797][] [@Zinyon](https://github.com/Zinyon) [@ljharb](https://github.com/ljharb)) ##### Changed - \[Docs] \[`jsx-no-leaked-render`]: Remove mentions of empty strings for React 18 ([#3468][] [@karlhorky](https://github.com/karlhorky)) - \[Docs] update `eslint-doc-generator` to v1.0.0 ([#3499][] [@bmish](https://github.com/bmish)) - \[meta] add issue template ([#3483][] [@ROSSROSALES](https://github.com/ROSSROSALES)) - \[Docs] Use emoji for jsx-runtime config and config file for eslint-doc-generator ([#3504][] [@bmish](https://github.com/bmish)) - \[Docs] \[`prefer-exact-props`]: fix example flow syntax ([#3510][] [@smackfu](https://github.com/smackfu)) - \[Perf] use `anyOf` instead of `oneOf` ([@ljharb](https://github.com/ljharb) [@remcohaszing](https://github.com/remcohaszing)) [7.32.0]: jsx-eslint/eslint-plugin-react@v7.31.11...v7.32.0 [#3511]: jsx-eslint/eslint-plugin-react#3511 [#3510]: jsx-eslint/eslint-plugin-react#3510 [#3504]: jsx-eslint/eslint-plugin-react#3504 [#3502]: jsx-eslint/eslint-plugin-react#3502 [#3499]: jsx-eslint/eslint-plugin-react#3499 [#3494]: jsx-eslint/eslint-plugin-react#3494 [#3493]: jsx-eslint/eslint-plugin-react#3493 [#3488]: jsx-eslint/eslint-plugin-react#3488 [#3483]: jsx-eslint/eslint-plugin-react#3483 [#3474]: jsx-eslint/eslint-plugin-react#3474 [#3471]: jsx-eslint/eslint-plugin-react#3471 [#3468]: jsx-eslint/eslint-plugin-react#3468 [#3461]: jsx-eslint/eslint-plugin-react#3461 [#3452]: jsx-eslint/eslint-plugin-react#3452 [#3449]: jsx-eslint/eslint-plugin-react#3449 [#3429]: jsx-eslint/eslint-plugin-react#3429 [#2848]: jsx-eslint/eslint-plugin-react#2848 [#2797]: jsx-eslint/eslint-plugin-react#2797 [#1861]: jsx-eslint/eslint-plugin-react#1861 ## [v7.31.11](https://github.com/jsx-eslint/eslint-plugin-react/blob/HEAD/CHANGELOG.md#73111---20221117) ##### Fixed - \[`jsx-no-target-blank`]: allow ternaries with literals ([#3464][] [@akulsr0](https://github.com/akulsr0)) - \[`no-unknown-property`]: add `inert` attribute ([#3484][] [@ljharb](https://github.com/ljharb)) - \[`jsx-key`]: detect keys in logical expression and conditional expression ([#3490][] [@metreniuk](https://github.com/metreniuk)) ##### Changed - \[Perf] component detection: improve performance by avoiding traversing parents unnecessarily ([#3459][] [@golopot](https://github.com/golopot)) - \[Docs] `forbid-component-props`: inclusive language w/ allowlist ([#3473][] [@AndersDJohnson](https://github.com/AndersDJohnson)) - \[Docs] automate doc generation with `eslint-doc-generator` ([#3469][] [@bmish](https://github.com/bmish)) [7.31.11]: jsx-eslint/eslint-plugin-react@v7.31.10...v7.31.11 [#3490]: jsx-eslint/eslint-plugin-react#3490 [#3484]: jsx-eslint/eslint-plugin-react#3484 [#3473]: jsx-eslint/eslint-plugin-react#3473 [#3469]: jsx-eslint/eslint-plugin-react#3469 [#3464]: jsx-eslint/eslint-plugin-react#3464 [#3459]: jsx-eslint/eslint-plugin-react#3459
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
Is there an existing issue for this?
Description Overview
Is there really a chanse for this object to be undefined or is it incorrect type?
Expected Behavior
No type error
eslint-plugin-react version
v7.37.3
eslint version
v9.17.0
node version
v20.0.0
The text was updated successfully, but these errors were encountered: