bug: ensure Announce components work without pre-existing text node #5568
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 #5566, https://github.com/github/accessibility-audits/issues/10031, https://github.com/github/accessibility-audits/issues/10017
Right now, announcements are not being triggered when the announce components (
Announcement
,AriaStatus
,AriaAlert
) go from being empty, to having text. See linked issue for broken examples.The announcements do work in instances where these components have pre-existing text that gets updated.
Upon placing a debugger, I noticed we're not hitting the MutationObserver's callback in the failing scenario (where we go from empty to no text). This is because we need to set
childList: true
to detect when text nodes are added/removed. The current config,subtree: true
andcharacterData: true
, will only detect when existing text nodes are updated.Changelog
Changed
Announce
,AriaAlert
,AriaStatus
without pre-existing text.Rollout strategy
Testing & Reviewing
Merge checklist