-
Notifications
You must be signed in to change notification settings - Fork 537
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
ProgressBar: Adjust ProgressBar.Item
for accessibility
#4878
Conversation
🦋 Changeset detectedLatest commit: 8b67e67 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
size-limit report 📦
|
const ariaAttributes = { | ||
'aria-valuenow': progressAsNumber && progressAsNumber >= 0 ? Math.round(progressAsNumber) : undefined, | ||
'aria-valuemin': 0, | ||
'aria-valuemax': 100, | ||
} | ||
|
||
warning( | ||
children && | ||
!ariaAttributes['aria-valuenow'] && | ||
typeof (rest as React.AriaAttributes)['aria-valuenow'] === 'undefined' && | ||
typeof (rest as React.AriaAttributes)['aria-valuetext'] === 'undefined', | ||
'Expected `aria-valuenow` or `aria-valuetext` to be provided to <ProgressBar>. Provide one of these values so screen reader users can determine the current progress. This warning will become an error in the next major release.', | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm curious if there's a reason why we didn't include ariaAttributes['aria-valuenow']
as a value to include in the warning
conditional? Since we automatically create the aria-valuenow
based on progressAsNumber
being true and a number, is that sufficient enough if consumers don't provide an aria-valuenow
themselves? Also, I added progressAsNumber >= 0
so we can include aria-valuenow
values that start at 0.
Cc: @kendallgassner - would love your insight, but I realize that it's been a minute since we've introduced these changes 😅
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
huh, your right that is odd and if a user passed it in it would override the value, we are setting via ...rest
. 🤔 I think it's safe to remove the warning all together.
🟢 golden-jobs completed with status |
Co-authored-by: Josh Black <joshblack@github.com>
Co-authored-by: Josh Black <joshblack@github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! Just left a small suggestion in case it was helpful 👍
Co-authored-by: Josh Black <joshblack@github.com>
Gonna wait on https://github.com/github/github/pull/344354 before I merge this PR in so we don't get failing tests 😁 |
👋 Hi from github/github! Your integration PR is ready: https://github.com/github/github/pull/349794 |
Closes https://github.com/github/primer/issues/3359
Changelog
New
Changed
aria-*
attributes toProgressBar.Item
ProgressBar.Item
asrole="progressbar"
Removed
Rollout strategy
Testing & Reviewing
Merge checklist