refactor(template-require-presentational-children): source role list from aria-query#2722
Merged
NullVoxPopuli merged 3 commits intoember-cli:masterfrom Apr 21, 2026
Conversation
…from aria-query Replaces a hand-maintained list of 14 roles with a derivation from aria-query's role.childrenPresentational flag. Coverage grows from 14 to 16 roles — aria-query also includes doc-pagebreak (DPUB-ARIA) and graphics-symbol (Graphics-ARIA), both of which spec-require presentational children. Previously those would have been silently accepted. Spec: WAI-ARIA 1.2 — Children Presentational https://www.w3.org/TR/wai-aria-1.2/#childrenArePresentational
NullVoxPopuli
approved these changes
Apr 21, 2026
This was referenced Apr 21, 2026
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.
This PR is part of a broader a11y parity audit comparing our rules against jsx-a11y, vue-a11y, angular-eslint-template, and lit-a11y.
Replaces the hand-maintained list of 14 roles that require presentational children with a derivation from
aria-query:Before/after
doc-pagebreak,graphics-symbol)aria-query'schildrenPresentationalflag is set on the 16 roles that the WAI-ARIA 1.2 §5.2.9 + DPUB-ARIA 1.1 + Graphics-ARIA 1.0 specs mark with the Children Presentational rule.Behavior expansion — DPUB / Graphics-ARIA
This PR adds two roles beyond WAI-ARIA core. Anyone using
role="doc-pagebreak"orrole="graphics-symbol"with semantic descendants will now see new warnings:These are correct per the specs — both roles are defined to have presentational children — but the expansion is worth flagging for projects that consume DPUB-ARIA or Graphics-ARIA.
Follow-up note
template-no-invalid-roleon master still carries a hand-maintained WAI-ARIA-only list — it will flagrole="doc-pagebreak"as invalid. #2729 (currently open) addresses that: once merged,template-no-invalid-rolewill source its role set from aria-query too, and the two rules will agree on DPUB/Graphics-ARIA recognition.Spec reference