[eslint-config-airbnb] `jsx-a11y/control-has-associated-label` config does not ignore `td` and `th` HTML elements
- Dominant language
- JavaScript
- Stars
- 148k
- Forks
- 26.6k
- PR merge metrics
- No merged PRs in 30d
Description
At Material UI, we use `eslint-config-airbnb`, which includes `jsx-a11y` pre-defined rules. We’re encountering this error for `td` and `th` elements:
```
A control must be associated with a text label jsx-a11y/control-has-associated-label
```
Since `td` and `th` are non-interactive, they should be added to the `ignoreElements` list [here](https://github.com/airbnb/javascript/blob/c25bce83be4db06e6a221d79686c485cd2ed5d5d/packages/eslint-config-airbnb/rules/react-a11y.js#L77-L85) and not parsed by jsx-a11y plugin.
This is preventing us from bumping `eslint-plugin-jsx-a11y`: https://github.com/mui/material-ui/pull/39752.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at packages/eslint-config-airbnb/rules/react-a11y.js, specifically the linked ignoreElements configuration, and review how the jsx-a11y rule is configured there. Verify that td and th are ignored by control-has-associated-label and that the configuration still works with the newer eslint-plugin-jsx-a11y version.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- eslint, javascript
- Domain
- accessibility, tooling
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100