- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 2.7k
 
          [Fix] require-default-props: report when required props have default param value
          #3785
        
          New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
          
     Merged
      
      
    
      
        
          +67
        
        
          −8
        
        
          
        
      
    
  
Conversation
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
    require-default-props: report when required props have default valuerequire-default-props: report when required props have default param value
      
          Codecov ReportAttention: Patch coverage is  
 
 Additional details and impacted files@@            Coverage Diff             @@
##           master    #3785      +/-   ##
==========================================
+ Coverage   97.62%   97.75%   +0.12%     
==========================================
  Files         132      135       +3     
  Lines        9697     9715      +18     
  Branches     3522     3527       +5     
==========================================
+ Hits         9467     9497      +30     
+ Misses        230      218      -12     ☔ View full report in Codecov by Sentry.  | 
    
              
                    ljharb
  
              
              approved these changes
              
                  
                    Jul 19, 2024 
                  
              
              
            
            
require-default-props: report when required props have default param valuerequire-default-props: report when required props have default param value
      
  This was referenced Aug 10, 2024 
      
  This was referenced Aug 10, 2024 
      
  This was referenced Aug 10, 2024 
      
    
  renovate bot
      added a commit
        to mmkal/eslint-plugin-mmkal
      that referenced
      this pull request
    
      Aug 21, 2024 
    
    
      
  
    
      
    
  
##### [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]: https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.4...v7.35.0
[#3785]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3785
[#3784]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3784
[#3782]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3782
[#3777]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3777
[#3774]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3774
[#3772]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3772
[#3771]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3771
[#3759]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3759
[#3748]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3748
[#3724]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3724
[#3694]: https://github.com/jsx-eslint/eslint-plugin-react/pull/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]: https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.3...v7.34.4
[#3779]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3779
[#3749]: https://github.com/jsx-eslint/eslint-plugin-react/pull/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]: https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.2...v7.34.3
[#3769]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3769
[#3768]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3768
[#3762]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3762
[#3757]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3757
[#3733]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3733
##### [v7.34.2](https://github.com/jsx-eslint/eslint-plugin-react/releases/tag/v7.34.2)
##### Fixed
-   [`boolean-prop-naming`][boolean-prop-naming]: avoid a crash with a non-TSTypeReference type ([#3718][] [@developer-bandi](https://github.com/developer-bandi))
-   [`jsx-no-leaked-render`][jsx-no-leaked-render]: invalid report if left side is boolean ([#3746][] [@akulsr0](https://github.com/akulsr0))
-   [`jsx-closing-bracket-location`][jsx-closing-bracket-location]: message shows `{{details}}` when there are no details ([#3759][] [@mdjermanovic](https://github.com/mdjermanovic))
-   [`no-invalid-html-attribute`][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]: https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.1...v7.34.2
[#3759]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3759
[#3746]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3746
[#3718]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3718
[`boolean-prop-naming`]: docs/rules/boolean-prop-naming.md
[`jsx-no-leaked-render`]: docs/rules/jsx-no-leaked-render.md
[`jsx-closing-bracket-location`]: docs/rules/jsx-closing-bracket-location.md
[`no-invalid-html-attribute`]: docs/rules/no-invalid-html-attribute.md
##### [v7.34.1](https://github.com/jsx-eslint/eslint-plugin-react/releases/tag/v7.34.1)
##### Fixed
-   [`jsx-no-leaked-render`][jsx-no-leaked-render]: prevent wrongly adding parens ([#3700][] [@developer-bandi](https://github.com/developer-bandi))
-   [`boolean-prop-naming`][boolean-prop-naming]: detect TS interfaces ([#3701][] [@developer-bandi](https://github.com/developer-bandi))
-   [`boolean-prop-naming`][boolean-prop-naming]: literalType error fix ([#3704][] [@developer-bandi](https://github.com/developer-bandi))
-   [`boolean-prop-naming`][boolean-prop-naming]: allow TSIntersectionType ([#3705][] [@developer-bandi](https://github.com/developer-bandi))
-   [`no-unknown-property`][no-unknown-property]: support `popover`, `popovertarget`, `popovertargetaction` attributes ([#3707][] [@ljharb](https://github.com/ljharb))
-   [`no-unknown-property`][no-unknown-property]: only match `data-*` attributes containing `-` ([#3713][] [@silverwind](https://github.com/silverwind))
-   [`checked-requires-onchange-or-readonly`][checked-requires-onchange-or-readonly]: correct options that were behaving opposite ([#3715][] [@jaesoekjjang](https://github.com/jaesoekjjang))
##### Changed
-   [`boolean-prop-naming`][boolean-prop-naming]: improve error message ([@ljharb](https://github.com/ljharb))
[#1000]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1000
[#1002]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1002
[#1005]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1005
[#100]: https://github.com/jsx-eslint/eslint-plugin-react/issues/100
[#1010]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1010
[#1013]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1013
[#1022]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1022
[#1029]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1029
[#102]: https://github.com/jsx-eslint/eslint-plugin-react/issues/102
[#1034]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1034
[#1038]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1038
[#1041]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1041
[#1043]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1043
[#1046]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1046
[#1047]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1047
[#1050]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1050
[#1053]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1053
[#1057]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1057
[#105]: https://github.com/jsx-eslint/eslint-plugin-react/issues/105
[#1061]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1061
[#1062]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1062
[#1070]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1070
[#1071]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1071
[#1073]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1073
[#1076]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1076
[#1079]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1079
[#1088]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1088
[#1098]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1098
[#1101]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1101
[#1103]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1103
[#110]: https://github.com/jsx-eslint/eslint-plugin-react/issues/110
[#1116]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1116
[#1117]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1117
[#1119]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1119
[#1121]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1121
[#1122]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1122
[#1123]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1123
[#1130]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1130
[#1131]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1131
[#1132]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1132
[#1134]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1134
[#1135]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1135
[#1139]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1139
[#1148]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1148
[#1149]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1149
[#114]: https://github.com/jsx-eslint/eslint-plugin-react/pull/114
[#1151]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1151
[#1155]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1155
[#1161]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1161
[#1167]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1167
[#1173]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1173
[#1174]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1174
[#1175]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1175
[#1178]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1178
[#1179]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1179
[#117]: https://github.com/jsx-eslint/eslint-plugin-react/pull/117
[#1180]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1180
[#1183]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1183
[#1189]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1189
[#118]: https://github.com/jsx-eslint/eslint-plugin-react/issues/118
[#1192]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1192
[#1195]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1195
[#1199]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1199
[#119]: https://github.com/jsx-eslint/eslint-plugin-react/pull/119
[#11]: https://github.com/jsx-eslint/eslint-plugin-react/issues/11
[#1201]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1201
[#1202]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1202
[#1206]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1206
[#1213]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1213
[#1216]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1216
[#1222]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1222
[#1226]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1226
[#1227]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1227
[#122]: https://github.com/jsx-eslint/eslint-plugin-react/issues/122
[#1231]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1231
[#1236]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1236
[#1239]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1239
[#123]: https://github.com/jsx-eslint/eslint-plugin-react/pull/123
[#1241]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1241
[#1242]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1242
[#1246]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1246
[#1249]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1249
[#1253]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1253
[#1257]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1257
[#125]: https://github.com/jsx-eslint/eslint-plugin-react/issues/125
[#1260]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1260
[#1261]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1261
[#1262]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1262
[#1264]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1264
[#1266]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1266
[#1269]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1269
[#1273]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1273
[#1274]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1274
[#1277]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1277
[#127]: https://github.com/jsx-eslint/eslint-plugin-react/pull/127
[#1281]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1281
[#1287]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1287
[#1288]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1288
[#1289]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1289
[#128]: https://github.com/jsx-eslint/eslint-plugin-react/issues/128
[#1290]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1290
[#1294]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1294
[#1296]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1296
[#129]: https://github.com/jsx-eslint/eslint-plugin-react/issues/129
[#12]: https://github.com/jsx-eslint/eslint-plugin-react/issues/12
[#1301]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1301
[#1303]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1303
[#1306]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1306
[#1308]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1308
[#1309]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1309
[#130]: https://github.com/jsx-eslint/eslint-plugin-react/issues/130
[#1310]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1310
[#1323]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1323
[#1329]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1329
[#132]: https://github.com/jsx-eslint/eslint-plugin-react/issues/132
[#1335]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1335
[#1337]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1337
[#133]: https://github.com/jsx-eslint/eslint-plugin-react/issues/133
[#1344]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1344
[#1352]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1352
[#1353]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1353
[#1354]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1354
[#135]: https://github.com/jsx-eslint/eslint-plugin-react/issues/135
[#1361]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1361
[#1363]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1363
[#1364]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1364
[#1366]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1366
[#1369]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1369
[#136]: https://github.com/jsx-eslint/eslint-plugin-react/issues/136
[#1374]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1374
[#1376]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1376
[#137]: https://github.com/jsx-eslint/eslint-plugin-react/issues/137
[#1380]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1380
[#1381]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1381
[#1382]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1382
[#1383]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1383
[#1384]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1384
[#1386]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1386
[#1388]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1388
[#1389]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1389
[#138]: https://github.com/jsx-eslint/eslint-plugin-react/pull/138
[#1392]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1392
[#1395]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1395
[#1396]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1396
[#1398]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1398
[#139]: https://github.com/jsx-eslint/eslint-plugin-react/issues/139
[#13]: https://github.com/jsx-eslint/eslint-plugin-react/issues/13
[#1400]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1400
[#1403]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1403
[#1406]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1406
[#1409]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1409
[#1412]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1412
[#1413]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1413
[#1414]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1414
[#1417]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1417
[#1422]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1422
[#1423]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1423
[#142]: https://github.com/jsx-eslint/eslint-plugin-react/issues/142
[#1432]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1432
[#1435]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1435
[#1438]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1438
[#1444]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1444
[#1449]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1449
[#144]: https://github.com/jsx-eslint/eslint-plugin-react/issues/144
[#1450]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1450
[#145]: https://github.com/jsx-eslint/eslint-plugin-react/issues/145
[#1462]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1462
[#1464]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1464
[#1467]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1467
[#1468]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1468
[#146]: https://github.com/jsx-eslint/eslint-plugin-react/issues/146
[#1471]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1471
[#1475]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1475
[#1476]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1476
[#1478]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1478
[#1479]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1479
[#147]: https://github.com/jsx-eslint/eslint-plugin-react/pull/147
[#1485]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1485
[#148]: https://github.com/jsx-eslint/eslint-plugin-react/issues/148
[#1493]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1493
[#1494]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1494
[#1496]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1496
[#1497]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1497
[#1499]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1499
[#14]: https://github.com/jsx-eslint/eslint-plugin-react/issues/14
[#1500]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1500
[#1502]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1502
[#1507]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1507
[#1508]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1508
[#1511]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1511
[#1512]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1512
[#1514]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1514
[#1515]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1515
[#1517]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1517
[#1518]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1518
[#1521]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1521
[#1524]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1524
[#1525]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1525
[#1526]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1526
[#1530]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1530
[#1533]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1533
[#1538]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1538
[#1542]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1542
[#1543]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1543
[#1546]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1546
[#1547]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1547
[#154]: https://github.com/jsx-eslint/eslint-plugin-react/issues/154
[#1552]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1552
[#1559]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1559
[#1562]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1562
[#1566]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1566
[#156]: https://github.com/jsx-eslint/eslint-plugin-react/pull/156
[#1571]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1571
[#1572]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1572
[#1576]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1576
[#1578]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1578
[#1581]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1581
[#1588]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1588
[#1591]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1591
[#1595]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1595
[#1597]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1597
[#159]: https://github.com/jsx-eslint/eslint-plugin-react/issues/159
[#15]: https://github.com/jsx-eslint/eslint-plugin-react/issues/15
[#1607]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1607
[#1610]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1610
[#1611]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1611
[#1617]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1617
[#161]: https://github.com/jsx-eslint/eslint-plugin-react/pull/161
[#1621]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1621
[#1624]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1624
[#1635]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1635
[#1636]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1636
[#163]: https://github.com/jsx-eslint/eslint-plugin-react/issues/163
[#1642]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1642
[#1644]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1644
[#164]: https://github.com/jsx-eslint/eslint-plugin-react/pull/164
[#1650]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1650
[#1653]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1653
[#1655]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1655
[#1657]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1657
[#1659]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1659
[#165]: https://github.com/jsx-eslint/eslint-plugin-react/issues/165
[#1665]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1665
[#1666]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1666
[#1669]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1669
[#1670]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1670
[#1675]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1675
[#1677]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1677
[#167]: https://github.com/jsx-eslint/eslint-plugin-react/pull/167
[#1681]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1681
[#1689]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1689
[#1690]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1690
[#1699]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1699
[#16]: https://github.com/jsx-eslint/eslint-plugin-react/issues/16
[#1703]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1703
[#1717]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1717
[#1722]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1722
[#1724]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1724
[#1728]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1728
[#172]: https://github.com/jsx-eslint/eslint-plugin-react/issues/172
[#1732]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1732
[#1737]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1737
[#1742]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1742
[#1743]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1743
[#1749]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1749
[#1750]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1750
[#1753]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1753
[#1754]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1754
[#1755]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1755
[#1758]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1758
[#1759]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1759
[#1764]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1764
[#1767]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1767
[#176]: https://github.com/jsx-eslint/eslint-plugin-react/pull/176
[#1779]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1779
[#1783]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1783
[#1785]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1785
[#178]: https://github.com/jsx-eslint/eslint-plugin-react/issues/178
[#1791]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1791
[#1793]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1793
[#1794]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1794
[#1796]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1796
[#1804]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1804
[#1805]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1805
[#1806]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1806
[#1815]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1815
[#1817]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1817
[#1819]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1819
[#181]: https://github.com/jsx-eslint/eslint-plugin-react/issues/181
[#1824]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1824
[#1825]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1825
[#1827]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1827
[#1828]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1828
[#1829]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1829
[#182]: https://github.com/jsx-eslint/eslint-plugin-react/issues/182
[#1830]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1830
[#1831]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1831
[#183]: https://github.com/jsx-eslint/eslint-plugin-react/pull/183
[#1843]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1843
[#1844]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1844
[#1845]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1845
[#1849]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1849
[#184]: https://github.com/jsx-eslint/eslint-plugin-react/issues/184
[#1851]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1851
[#1854]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1854
[#1857]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1857
[#1858]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1858
[#1860]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1860
[#1861]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1861
[#1863]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1863
[#1867]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1867
[#1868]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1868
[#1873]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1873
[#1874]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1874
[#187]: https://github.com/jsx-eslint/eslint-plugin-react/pull/187
[#1880]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1880
[#1883]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1883
[#1890]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1890
[#1891]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1891
[#1892]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1892
[#1898]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1898
[#189]: https://github.com/jsx-eslint/eslint-plugin-react/pull/189
[#1903]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1903
[#1905]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1905
[#1907]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1907
[#1909]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1909
[#1911]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1911
[#1914]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1914
[#1918]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1918
[#1924]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1924
[#1926]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1926
[#1929]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1929
[#192]: https://github.com/jsx-eslint/eslint-plugin-react/issues/192
[#1932]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1932
[#1939]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1939
[#193]: https://github.com/jsx-eslint/eslint-plugin-react/pull/193
[#1941]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1941
[#1942]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1942
[#1945]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1945
[#1946]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1946
[#1949]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1949
[#1953]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1953
[#1956]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1956
[#1957]: https://github.com/jsx-eslint/eslint-plugin-react/issues/1957
[#1977]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1977
[#1978]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1978
[#197]: https://github.com/jsx-eslint/eslint-plugin-react/pull/197
[#1980]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1980
[#1983]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1983
[#1984]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1984
[#1988]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1988
[#1989]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1989
[#198]: https://github.com/jsx-eslint/eslint-plugin-react/pull/198
[#1994]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1994
[#1995]: https://github.com/jsx-eslint/eslint-plugin-react/pull/1995
[#199]: https://github.com/jsx-eslint/eslint-plugin-react/issues/199
[#2001]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2001
[#2002]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2002
[#2004]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2004
[#2006]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2006
[#2008]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2008
[#2012]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2012
[#2015]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2015
[#2016]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2016
[#201]: https://github.com/jsx-eslint/eslint-plugin-react/issues/201
[#2026]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2026
[#2029]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2029
[#2032]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2032
[#2040]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2040
[#2043]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2043
[#2044]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2044
[#2051]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2051
[#2056]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2056
[#2061]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2061
[#2064]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2064
[#2065]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2065
[#2067]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2067
[#2069]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2069
[#206]: https://github.com/jsx-eslint/eslint-plugin-react/pull/206
[#2075]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2075
[#2082]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2082
[#2084]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2084
[#2085]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2085
[#2086]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2086
[#2089]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2089
[#208]: https://github.com/jsx-eslint/eslint-plugin-react/pull/208
[#2090]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2090
[#2095]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2095
[#2097]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2097
[#2098]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2098
[#2099]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2099
[#2100]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2100
[#2102]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2102
[#2103]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2103
[#2104]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2104
[#2109]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2109
[#210]: https://github.com/jsx-eslint/eslint-plugin-react/issues/210
[#2110]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2110
[#2111]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2111
[#2113]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2113
[#2114]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2114
[#2115]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2115
[#2116]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2116
[#2117]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2117
[#2118]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2118
[#211]: https://github.com/jsx-eslint/eslint-plugin-react/issues/211
[#2120]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2120
[#2123]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2123
[#2125]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2125
[#2127]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2127
[#2128]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2128
[#2131]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2131
[#2134]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2134
[#2136]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2136
[#2137]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2137
[#213]: https://github.com/jsx-eslint/eslint-plugin-react/issues/213
[#2143]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2143
[#2145]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2145
[#2146]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2146
[#2147]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2147
[#214]: https://github.com/jsx-eslint/eslint-plugin-react/issues/214
[#215]: https://github.com/jsx-eslint/eslint-plugin-react/issues/215
[#2166]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2166
[#2167]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2167
[#217]: https://github.com/jsx-eslint/eslint-plugin-react/issues/217
[#2180]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2180
[#2182]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2182
[#2183]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2183
[#2184]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2184
[#2191]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2191
[#2193]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2193
[#2198]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2198
[#219]: https://github.com/jsx-eslint/eslint-plugin-react/pull/219
[#2200]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2200
[#2202]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2202
[#2203]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2203
[#2206]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2206
[#2207]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2207
[#220]: https://github.com/jsx-eslint/eslint-plugin-react/issues/220
[#2210]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2210
[#221]: https://github.com/jsx-eslint/eslint-plugin-react/issues/221
[#2225]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2225
[#2227]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2227
[#2229]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2229
[#222]: https://github.com/jsx-eslint/eslint-plugin-react/pull/222
[#2230]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2230
[#2232]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2232
[#2233]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2233
[#2234]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2234
[#2238]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2238
[#2246]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2246
[#2250]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2250
[#2256]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2256
[#2259]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2259
[#2261]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2261
[#2262]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2262
[#2263]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2263
[#2265]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2265
[#2267]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2267
[#226]: https://github.com/jsx-eslint/eslint-plugin-react/issues/226
[#2273]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2273
[#2274]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2274
[#2276]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2276
[#2283]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2283
[#2286]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2286
[#2288]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2288
[#228]: https://github.com/jsx-eslint/eslint-plugin-react/issues/228
[#2292]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2292
[#2294]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2294
[#2295]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2295
[#2298]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2298
[#229]: https://github.com/jsx-eslint/eslint-plugin-react/issues/229
[#22]: https://github.com/jsx-eslint/eslint-plugin-react/pull/22
[#2302]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2302
[#2303]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2303
[#2304]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2304
[#230]: https://github.com/jsx-eslint/eslint-plugin-react/issues/230
[#2312]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2312
[#2316]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2316
[#2319]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2319
[#2326]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2326
[#232]: https://github.com/jsx-eslint/eslint-plugin-react/pull/232
[#2330]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2330
[#2336]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2336
[#233]: https://github.com/jsx-eslint/eslint-plugin-react/issues/233
[#2349]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2349
[#2354]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2354
[#2359]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2359
[#235]: https://github.com/jsx-eslint/eslint-plugin-react/issues/235
[#2361]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2361
[#2364]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2364
[#2367]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2367
[#236]: https://github.com/jsx-eslint/eslint-plugin-react/issues/236
[#2375]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2375
[#2378]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2378
[#237]: https://github.com/jsx-eslint/eslint-plugin-react/issues/237
[#2380]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2380
[#2383]: https://github.com/jsx-eslint/eslint-plugin-react/issue/2383
[#2385]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2385
[#2391]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2391
[#2392]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2392
[#2395]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2395
[#2399]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2399
[#23]: https://github.com/jsx-eslint/eslint-plugin-react/issues/23
[#2402]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2402
[#2408]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2408
[#2409]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2409
[#240]: https://github.com/jsx-eslint/eslint-plugin-react/issues/240
[#2410]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2410
[#2414]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2414
[#2419]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2419
[#2422]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2422
[#2425]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2425
[#2426]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2426
[#2428]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2428
[#2429]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2429
[#242]: https://github.com/jsx-eslint/eslint-plugin-react/pull/242
[#2431]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2431
[#2436]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2436
[#2437]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2437
[#2438]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2438
[#243]: https://github.com/jsx-eslint/eslint-plugin-react/issues/243
[#2443]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2443
[#2446]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2446
[#2448]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2448
[#2449]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2449
[#244]: https://github.com/jsx-eslint/eslint-plugin-react/issues/244
[#2451]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2451
[#2453]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2453
[#2460]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2460
[#2463]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2463
[#2465]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2465
[#2468]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2468
[#2469]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2469
[#2470]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2470
[#2478]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2478
[#247]: https://github.com/jsx-eslint/eslint-plugin-react/issues/247
[#2483]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2483
[#2489]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2489
[#248]: https://github.com/jsx-eslint/eslint-plugin-react/pull/248
[#249]: https://github.com/jsx-eslint/eslint-plugin-react/issues/249
[#24]: https://github.com/jsx-eslint/eslint-plugin-react/issues/24
[#2500]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2500
[#2504]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2504
[#2505]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2505
[#2507]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2507
[#2510]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2510
[#2514]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2514
[#251]: https://github.com/jsx-eslint/eslint-plugin-react/issues/251
[#2521]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2521
[#2523]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2523
[#2532]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2532
[#2533]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2533
[#2534]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2534
[#2535]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2535
[#2536]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2536
[#2540]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2540
[#2542]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2542
[#2544]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2544
[#2546]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2546
[#2547]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2547
[#254]: https://github.com/jsx-eslint/eslint-plugin-react/issues/254
[#2556]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2556
[#2557]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2557
[#255]: https://github.com/jsx-eslint/eslint-plugin-react/issues/255
[#2560]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2560
[#2561]: https://github.com/jsx-eslint/eslint-plugin-react/issue/2561
[#2564]: https://github.com/jsx-eslint/eslint-plugin-react/issue/2564
[#2568]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2568
[#256]: https://github.com/jsx-eslint/eslint-plugin-react/issues/256
[#2570]: https://github.com/jsx-eslint/eslint-plugin-react/issue/2570
[#2572]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2572
[#2575]: https://github.com/jsx-eslint/eslint-plugin-react/issue/2575
[#2578]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2578
[#2581]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2581
[#2582]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2582
[#2583]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2583
[#2587]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2587
[#2588]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2588
[#2593]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2593
[#2595]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2595
[#2596]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2596
[#259]: https://github.com/jsx-eslint/eslint-plugin-react/issues/259
[#2601]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2601
[#2604]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2604
[#2606]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2606
[#2608]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2608
[#2610]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2610
[#2614]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2614
[#2615]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2615
[#2616]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2616
[#261]: https://github.com/jsx-eslint/eslint-plugin-react/pull/261
[#2621]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2621
[#2625]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2625
[#2633]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2633
[#2635]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2635
[#2636]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2636
[#2638]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2638
[#2640]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2640
[#2643]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2643
[#264]: https://github.com/jsx-eslint/eslint-plugin-react/issues/264
[#2661]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2661
[#2667]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2667
[#2673]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2673
[#2676]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2676
[#2679]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2679
[#267]: https://github.com/jsx-eslint/eslint-plugin-react/issues/267
[#2680]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2680
[#2682]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2682
[#2683]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2683
[#2687]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2687
[#268]: https://github.com/jsx-eslint/eslint-plugin-react/issues/268
[#2690]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2690
[#2693]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2693
[#2696]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2696
[#2697]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2697
[#2699]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2699
[#269]: https://github.com/jsx-eslint/eslint-plugin-react/issues/269
[#2704]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2704
[#2708]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2708
[#2710]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2710
[#2711]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2711
[#2712]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2712
[#2713]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2713
[#2716]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2716
[#2721]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2721
[#2724]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2724
[#2730]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2730
[#2731]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2731
[#2733]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2733
[#2736]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2736
[#2737]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2737
[#2740]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2740
[#2741]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2741
[#2744]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2744
[#2746]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2746
[#2748]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2748
[#2750]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2750
[#2753]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2753
[#2756]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2756
[#2757]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2757
[#2759]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2759
[#2761]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2761
[#2763]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2763
[#2767]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2767
[#276]: https://github.com/jsx-eslint/eslint-plugin-react/issues/276
[#2770]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2770
[#2771]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2771
[#2772]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2772
[#2775]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2775
[#2779]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2779
[#277]: https://github.com/jsx-eslint/eslint-plugin-react/issues/277
[#2780]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2780
[#2782]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2782
[#2789]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2789
[#2790]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2790
[#2791]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2791
[#2792]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2792
[#2796]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2796
[#2797]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2797
[#2799]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2799
[#27]: https://github.com/jsx-eslint/eslint-plugin-react/issues/27
[#2801]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2801
[#2802]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2802
[#2803]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2803
[#2805]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2805
[#2807]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2807
[#2808]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2808
[#280]: https://github.com/jsx-eslint/eslint-plugin-react/issues/280
[#2813]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2813
[#2815]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2815
[#2816]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2816
[#281]: https://github.com/jsx-eslint/eslint-plugin-react/issues/281
[#2820]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2820
[#2822]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2822
[#2823]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2823
[#2826]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2826
[#2833]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2833
[#2835]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2835
[#2840]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2840
[#2843]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2843
[#2846]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2846
[#2848]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2848
[#2851]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2851
[#2852]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2852
[#2855]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2855
[#285]: https://github.com/jsx-eslint/eslint-plugin-react/issues/285
[#2861]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2861
[#2862]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2862
[#2863]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2863
[#2869]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2869
[#286]: https://github.com/jsx-eslint/eslint-plugin-react/issues/286
[#2870]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2870
[#2871]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2871
[#2875]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2875
[#2877]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2877
[#2878]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2878
[#2879]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2879
[#287]: https://github.com/jsx-eslint/eslint-plugin-react/issues/287
[#2881]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2881
[#2882]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2882
[#2883]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2883
[#2891]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2891
[#2893]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2893
[#2894]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2894
[#2895]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2895
[#2897]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2897
[#2899]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2899
[#28]: https://github.com/jsx-eslint/eslint-plugin-react/issues/28
[#2900]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2900
[#2906]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2906
[#2908]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2908
[#290]: https://github.com/jsx-eslint/eslint-plugin-react/issues/290
[#2910]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2910
[#2917]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2917
[#291]: https://github.com/jsx-eslint/eslint-plugin-react/issues/291
[#2921]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2921
[#2923]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2923
[#2925]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2925
[#2929]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2929
[#2930]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2930
[#2933]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2933
[#2935]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2935
[#293]: https://github.com/jsx-eslint/eslint-plugin-react/pull/293
[#2943]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2943
[#2945]: https://github.com/jsx-eslint/eslint-plugin-react/issues/2945
[#2949]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2949
[#2950]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2950
[#2953]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2953
[#2957]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2957
[#2961]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2961
[#2963]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2963
[#2965]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2965
[#296]: https://github.com/jsx-eslint/eslint-plugin-react/issues/296
[#2972]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2972
[#2974]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2974
[#2975]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2975
[#2977]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2977
[#297]: https://github.com/jsx-eslint/eslint-plugin-react/issues/297
[#2980]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2980
[#2982]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2982
[#2985]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2985
[#2986]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2986
[#2989]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2989
[#298]: https://github.com/jsx-eslint/eslint-plugin-react/issues/298
[#2990]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2990
[#2992]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2992
[#2994]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2994
[#2998]: https://github.com/jsx-eslint/eslint-plugin-react/pull/2998
[#29]: https://github.com/jsx-eslint/eslint-plugin-react/issues/29
[#3001]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3001
[#3002]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3002
[#3006]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3006
[#300]: https://github.com/jsx-eslint/eslint-plugin-react/issues/300
[#3016]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3016
[#3018]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3018
[#301]: https://github.com/jsx-eslint/eslint-plugin-react/pull/301
[#3025]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3025
[#3026]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3026
[#3036]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3036
[#3038]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3038
[#3039]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3039
[#303]: https://github.com/jsx-eslint/eslint-plugin-react/issues/303
[#3043]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3043
[#3048]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3048
[#3049]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3049
[#3051]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3051
[#3052]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3052
[#3053]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3053
[#3056]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3056
[#3059]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3059
[#3061]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3061
[#3064]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3064
[#3065]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3065
[#3066]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3066
[#306]: https://github.com/jsx-eslint/eslint-plugin-react/pull/306
[#3070]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3070
[#3071]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3071
[#3076]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3076
[#3078]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3078
[#307]: https://github.com/jsx-eslint/eslint-plugin-react/issues/307
[#3082]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3082
[#3083]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3083
[#3085]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3085
[#3088]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3088
[#308]: https://github.com/jsx-eslint/eslint-plugin-react/pull/308
[#3092]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3092
[#30]: https://github.com/jsx-eslint/eslint-plugin-react/issues/30
[#3102]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3102
[#3110]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3110
[#3111]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3111
[#3112]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3112
[#3113]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3113
[#3122]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3122
[#3124]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3124
[#3126]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3126
[#3129]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3129
[#3132]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3132
[#3133]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3133
[#3136]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3136
[#3141]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3141
[#3142]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3142
[#3144]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3144
[#3145]: https://github.com/jsx-eslint/eslint-plugin-react/issue/3145
[#3146]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3146
[#3149]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3149
[#314]: https://github.com/jsx-eslint/eslint-plugin-react/pull/314
[#3156]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3156
[#315]: https://github.com/jsx-eslint/eslint-plugin-react/pull/315
[#3160]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3160
[#3163]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3163
[#3167]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3167
[#3169]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3169
[#3174]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3174
[#317]: https://github.com/jsx-eslint/eslint-plugin-react/issues/317
[#3182]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3182
[#3186]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3186
[#3189]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3189
[#318]: https://github.com/jsx-eslint/eslint-plugin-react/issues/318
[#3190]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3190
[#3191]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3191
[#3195]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3195
[#3198]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3198
[#3199]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3199
[#319]: https://github.com/jsx-eslint/eslint-plugin-react/issues/319
[#3202]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3202
[#3203]: https://github.com/jsx-eslint/eslint-plugin-react/pull/3203
[#3207]: https://github.com/jsx-eslint/eslint-plugin-react/issues/3207
[#320]: https:…
    
    
  renovate bot
      added a commit
        to andrei-picus-tink/auto-renovate
      that referenced
      this pull request
    
      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 pull request
    
      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
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment
  
      
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
Closes #3720