`aria-*` boolean attributes serialize as the empty string
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Ruby
- Sterne
- 1k
- Forks
- 67
- Ø Merge
- 3 T. 12 Std.
- Gemergte PRs (30 T.)
- 14
Beschreibung
- Where: every
aria: {hidden: true},aria_disabled: true,
aria_expanded: truein the catalog — breadcrumb separators and ellipsis,
CommandInput, and every decorative<svg aria-hidden>. Snapshots carry
aria-hidden="",aria-disabled="",aria-expanded="". - Effect: the ARIA value grammar accepts
true/false/undefined; an
empty string is invalid and browsers resolve it as not set. Decorative
icons are therefore exposed to assistive technology, "current" breadcrumb
items are not announced as disabled, and the command input's expanded
state is unset. This is Phlex's serialization oftrue(a bare
attribute), so it is library-wide, not one component. - Fix: pass
"true"(a String) foraria-*attributes, or add a
serialization rule inBasethat stringifies booleans under thearia
key; re-record (on the 2.0 line) everything that changes and review the diff. - 2.0 note: spec §4.3 currently preserves this behaviour for parity
(true→""). The right 2.0 behaviour isaria-x="true"; decide it
explicitly and let the re-record (on the 2.0 line) show the blast radius.
Surfaced by the golden HTML suite (PR #536), which pins what 1.6 renders today — this defect included. Per maintainer decision (2026-09-19) main stays as is: this is addressed on the 2.0 line, and the golden snapshot that pins it is re-recorded there with the diff reviewed.
Source: design/v2/follow-up-issues.md.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Lies design/v2/follow-up-issues.md und untersuche den Base-Serialisierungspfad für aria-Attribute im 2.0-Zweig. Führe die golden HTML suite aus und prüfe die betroffenen Katalog- und Komponenten-Snapshots, einschließlich Breadcrumb-Trennzeichen, Ellipse, CommandInput und dekorativer SVGs. Erledigt ist die Aufgabe, wenn aria-Boolesche Werte wie festgelegt als "true" oder "false" gerendert werden, die 2.0-Snapshots neu aufgezeichnet wurden und ihr Diff geprüft wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- ruby
- Bereich
- accessibility
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100