@samitouri / QOS-React / commits / 698bb4deb7

Add support for ARIA 1.3 attributes (#34264)

Co-authored-by: Abdulwahab Omira <abdulwahabomira@gmail.com> Co-authored-by: Sebastian Sebbie Silbermann <sebastian.silbermann@vercel.com>

Abdulwahab Omira committed Aug 22, 2025 at 09:22 UTC 698bb4deb7c77010c040ac49630c26db94e6e28c
2 files changed +26
packages/react-dom-bindings/src/shared/validAriaProperties.js
+5
@@ -59,6 +59,11 @@ const ariaProperties = {
59 'aria-rowindex': 0,
60 'aria-rowspan': 0,
61 'aria-setsize': 0,
62 + // ARIA 1.3 Attributes
63 + 'aria-braillelabel': 0,
64 + 'aria-brailleroledescription': 0,
65 + 'aria-colindextext': 0,
66 + 'aria-rowindextext': 0,
67 };
68
69 export default ariaProperties;
packages/react-dom/src/__tests__/ReactDOMInvalidARIAHook-test.js
+21
@@ -37,6 +37,27 @@ describe('ReactDOMInvalidARIAHook', () => {
37 it('should allow valid aria-* props', async () => {
38 await mountComponent({'aria-label': 'Bumble bees'});
39 });
40 +
41 + it('should allow new ARIA 1.3 attributes', async () => {
42 + // Test aria-braillelabel
43 + await mountComponent({'aria-braillelabel': 'Braille label text'});
44 +
45 + // Test aria-brailleroledescription
46 + await mountComponent({'aria-brailleroledescription': 'Navigation menu'});
47 +
48 + // Test aria-colindextext
49 + await mountComponent({'aria-colindextext': 'Column A'});
50 +
51 + // Test aria-rowindextext
52 + await mountComponent({'aria-rowindextext': 'Row 1'});
53 +
54 + // Test multiple ARIA 1.3 attributes together
55 + await mountComponent({
56 + 'aria-braillelabel': 'Braille text',
57 + 'aria-colindextext': 'First column',
58 + 'aria-rowindextext': 'First row',
59 + });
60 + });
61 it('should warn for one invalid aria-* prop', async () => {
62 await mountComponent({'aria-badprop': 'maybe'});
63 assertConsoleErrorDev([