From 83240e18e09c46676657b10c9bc2adf5819a5221 Mon Sep 17 00:00:00 2001 From: Viraj-10 Date: Fri, 26 Aug 2022 09:05:34 +0530 Subject: [PATCH 01/34] feat: adding alias for aria-label button --- Libraries/Components/Button.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Libraries/Components/Button.js b/Libraries/Components/Button.js index 318e82773d1678..ed3f7e858f4acd 100644 --- a/Libraries/Components/Button.js +++ b/Libraries/Components/Button.js @@ -152,6 +152,12 @@ type ButtonProps = $ReadOnly<{| importantForAccessibility?: ?('auto' | 'yes' | 'no' | 'no-hide-descendants'), accessibilityHint?: ?string, accessibilityLanguage?: ?Stringish, + + /** + * Web to Native Accessibilty props + * https://github.com/facebook/react-native/issues/34424 + */ + 'aria-lable'?: ?string, |}>; /** @@ -269,6 +275,7 @@ class Button extends React.Component { render(): React.Node { const { accessibilityLabel, + 'aria-lable': ariaLable, importantForAccessibility, color, onPress, @@ -332,7 +339,7 @@ class Button extends React.Component { accessible={accessible} accessibilityActions={accessibilityActions} onAccessibilityAction={onAccessibilityAction} - accessibilityLabel={accessibilityLabel} + accessibilityLabel={accessibilityLabel || ariaLable} accessibilityHint={accessibilityHint} accessibilityLanguage={accessibilityLanguage} accessibilityRole="button" From b5746c521610394fc7b0b8c4cae09016e274c7d7 Mon Sep 17 00:00:00 2001 From: Viraj-10 Date: Mon, 29 Aug 2022 10:34:28 +0530 Subject: [PATCH 02/34] feat: added example in rn tester and requested changes --- Libraries/Components/Button.js | 6 ++--- .../js/examples/Button/ButtonExample.js | 22 +++++++++++++++++++ 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/Libraries/Components/Button.js b/Libraries/Components/Button.js index ed3f7e858f4acd..1bb268d6559a1e 100644 --- a/Libraries/Components/Button.js +++ b/Libraries/Components/Button.js @@ -154,10 +154,10 @@ type ButtonProps = $ReadOnly<{| accessibilityLanguage?: ?Stringish, /** - * Web to Native Accessibilty props + * Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel * https://github.com/facebook/react-native/issues/34424 */ - 'aria-lable'?: ?string, + 'aria-label'?: ?string, |}>; /** @@ -339,7 +339,7 @@ class Button extends React.Component { accessible={accessible} accessibilityActions={accessibilityActions} onAccessibilityAction={onAccessibilityAction} - accessibilityLabel={accessibilityLabel || ariaLable} + accessibilityLabel={ariaLable || accessibilityLabel} accessibilityHint={accessibilityHint} accessibilityLanguage={accessibilityLanguage} accessibilityRole="button" diff --git a/packages/rn-tester/js/examples/Button/ButtonExample.js b/packages/rn-tester/js/examples/Button/ButtonExample.js index cc04f1e0bea7cf..3f49b611966288 100644 --- a/packages/rn-tester/js/examples/Button/ButtonExample.js +++ b/packages/rn-tester/js/examples/Button/ButtonExample.js @@ -176,6 +176,28 @@ exports.examples = [ ); }, }, + { + title: 'Button with aria-label="label"', + description: ('Note: This prop changes the text that a screen ' + + 'reader announces (there are no visual differences).': string), + render: function (): React.Node { + return ( + + {theme => { + return ( +