fix(a11y): label evaluator select and notes textarea in invitation dialog - #443
Open
anishkb-dev wants to merge 1 commit into
Open
fix(a11y): label evaluator select and notes textarea in invitation dialog#443anishkb-dev wants to merge 1 commit into
anishkb-dev wants to merge 1 commit into
Conversation
anishkb-dev
force-pushed
the
fix/select-elements-a11y-363
branch
from
August 8, 2026 07:46
60cf94a to
db9cc7e
Compare
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
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.
The evaluator dropdown and the notes textarea in the auditor invitation dialog are plain
<select>and<textarea>elements. Each has a<label>rendered above it, but nothing connects the two, so screen readers announce both controls without a name.Adds
htmlForto each label and a matchingidto each control.A note on scope: this started out much larger and covered the
<Select>components in the New Evaluation wizard too. Those turned out not to need it —opub-ui'sSelectalready callsuseId()and passes the same id to both the<label htmlFor>it renders and the native<select>, so those controls are labelled correctly already and passing an explicitidonly replaces the generated one. I dropped them rather than add lines that change nothing.While checking that, I did find two things that look wrong but are separate from this:
htmlFor="auditType"andhtmlFor="auditScope"inEvaluationConfiguration.tsxpoint at ids that don't exist anywhere, and the<Label htmlFor="evaluator-technical">inModelSelectionModal.tsxis a heading for a radio group but targets the first radio, which gives that one button two labels. Happy to open an issue for those if useful.