[fix] Add missing accessibilityCurrent prop

Close #1938
This commit is contained in:
Nishan
2021-03-15 12:57:33 +05:30
committed by Nicolas Gallagher
parent dd79d87783
commit c56f402f90
5 changed files with 19 additions and 0 deletions
@@ -58,6 +58,10 @@ Equivalent to [aria-colspan](https://www.w3.org/TR/wai-aria-1.2/#aria-colspan).
Equivalent to [aria-controls](https://www.w3.org/TR/wai-aria-1.2/#aria-controls).
{% endcall %}
{% call macro.prop('accessibilityCurrent', '?(boolean | 'page' | 'step' | 'location' | 'date' | 'time')') %}
Equivalent to [aria-current](https://www.w3.org/TR/wai-aria-1.2/#aria-current).
{% endcall %}
{% call macro.prop('accessibilityDescribedBy', '?string') %}
Equivalent to [aria-describedby](https://www.w3.org/TR/wai-aria-1.2/#aria-describedby).
{% endcall %}
+1
View File
@@ -34,6 +34,7 @@ export type AccessibilityProps = {|
accessibilityColumnIndex?: ?number,
accessibilityColumnSpan?: ?number,
accessibilityControls?: ?idRefList,
accessibilityCurrent?: ?(boolean | 'page' | 'step' | 'location' | 'date' | 'time'),
accessibilityDescribedBy?: ?idRef,
accessibilityDetails?: ?idRef,
accessibilityDisabled?: ?boolean,
@@ -113,6 +113,15 @@ describe('exports/createElement', () => {
expect(getAttribute(hasValue, 'aria-controls')).toBe('abc');
});
test('accessibilityCurrent', () => {
const { container: isEmpty } = render(createElement('div', { accessibilityCurrent: null }));
expect(getAttribute(isEmpty, 'aria-current')).toBeNull();
const { container: hasValue } = render(
createElement('div', { accessibilityCurrent: 'page' })
);
expect(getAttribute(hasValue, 'aria-current')).toBe('page');
});
test('accessibilityDescribedBy', () => {
const { container: isEmpty } = render(
createElement('div', { accessibilityDescribedBy: null })
@@ -73,6 +73,7 @@ const createDOMProps = (elementType, props) => {
accessibilityColumnIndex,
accessibilityColumnSpan,
accessibilityControls,
accessibilityCurrent,
accessibilityDescribedBy,
accessibilityDetails,
accessibilityDisabled,
@@ -194,6 +195,9 @@ const createDOMProps = (elementType, props) => {
if (accessibilityControls != null) {
domProps['aria-controls'] = accessibilityControls;
}
if (accessibilityCurrent != null) {
domProps['aria-current'] = accessibilityCurrent;
}
if (accessibilityDescribedBy != null) {
domProps['aria-describedby'] = accessibilityDescribedBy;
}
@@ -26,6 +26,7 @@ export const accessibilityProps = {
accessibilityColumnIndex: true,
accessibilityColumnSpan: true,
accessibilityControls: true,
accessibilityCurrent: true,
accessibilityDescribedBy: true,
accessibilityDetails: true,
accessibilityDisabled: true,