155 lines
3.3 KiB
JavaScript
155 lines
3.3 KiB
JavaScript
|
/**
|
||
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||
|
*
|
||
|
* This source code is licensed under the MIT license found in the
|
||
|
* LICENSE file in the root directory of this source tree.
|
||
|
*
|
||
|
* @flow strict-local
|
||
|
* @format
|
||
|
*/
|
||
|
|
||
|
'use strict';
|
||
|
|
||
|
import type {
|
||
|
AccessibilityRole,
|
||
|
Role,
|
||
|
} from '../Components/View/ViewAccessibility';
|
||
|
|
||
|
// Map role values to AccessibilityRole values
|
||
|
export function getAccessibilityRoleFromRole(role: Role): ?AccessibilityRole {
|
||
|
switch (role) {
|
||
|
case 'alert':
|
||
|
return 'alert';
|
||
|
case 'alertdialog':
|
||
|
return undefined;
|
||
|
case 'application':
|
||
|
return undefined;
|
||
|
case 'article':
|
||
|
return undefined;
|
||
|
case 'banner':
|
||
|
return undefined;
|
||
|
case 'button':
|
||
|
return 'button';
|
||
|
case 'cell':
|
||
|
return undefined;
|
||
|
case 'checkbox':
|
||
|
return 'checkbox';
|
||
|
case 'columnheader':
|
||
|
return undefined;
|
||
|
case 'combobox':
|
||
|
return 'combobox';
|
||
|
case 'complementary':
|
||
|
return undefined;
|
||
|
case 'contentinfo':
|
||
|
return undefined;
|
||
|
case 'definition':
|
||
|
return undefined;
|
||
|
case 'dialog':
|
||
|
return undefined;
|
||
|
case 'directory':
|
||
|
return undefined;
|
||
|
case 'document':
|
||
|
return undefined;
|
||
|
case 'feed':
|
||
|
return undefined;
|
||
|
case 'figure':
|
||
|
return undefined;
|
||
|
case 'form':
|
||
|
return undefined;
|
||
|
case 'grid':
|
||
|
return 'grid';
|
||
|
case 'group':
|
||
|
return undefined;
|
||
|
case 'heading':
|
||
|
return 'header';
|
||
|
case 'img':
|
||
|
return 'image';
|
||
|
case 'link':
|
||
|
return 'link';
|
||
|
case 'list':
|
||
|
return 'list';
|
||
|
case 'listitem':
|
||
|
return undefined;
|
||
|
case 'log':
|
||
|
return undefined;
|
||
|
case 'main':
|
||
|
return undefined;
|
||
|
case 'marquee':
|
||
|
return undefined;
|
||
|
case 'math':
|
||
|
return undefined;
|
||
|
case 'menu':
|
||
|
return 'menu';
|
||
|
case 'menubar':
|
||
|
return 'menubar';
|
||
|
case 'menuitem':
|
||
|
return 'menuitem';
|
||
|
case 'meter':
|
||
|
return undefined;
|
||
|
case 'navigation':
|
||
|
return undefined;
|
||
|
case 'none':
|
||
|
return 'none';
|
||
|
case 'note':
|
||
|
return undefined;
|
||
|
case 'option':
|
||
|
return undefined;
|
||
|
case 'presentation':
|
||
|
return 'none';
|
||
|
case 'progressbar':
|
||
|
return 'progressbar';
|
||
|
case 'radio':
|
||
|
return 'radio';
|
||
|
case 'radiogroup':
|
||
|
return 'radiogroup';
|
||
|
case 'region':
|
||
|
return undefined;
|
||
|
case 'row':
|
||
|
return undefined;
|
||
|
case 'rowgroup':
|
||
|
return undefined;
|
||
|
case 'rowheader':
|
||
|
return undefined;
|
||
|
case 'scrollbar':
|
||
|
return 'scrollbar';
|
||
|
case 'searchbox':
|
||
|
return 'search';
|
||
|
case 'separator':
|
||
|
return undefined;
|
||
|
case 'slider':
|
||
|
return 'adjustable';
|
||
|
case 'spinbutton':
|
||
|
return 'spinbutton';
|
||
|
case 'status':
|
||
|
return undefined;
|
||
|
case 'summary':
|
||
|
return 'summary';
|
||
|
case 'switch':
|
||
|
return 'switch';
|
||
|
case 'tab':
|
||
|
return 'tab';
|
||
|
case 'table':
|
||
|
return undefined;
|
||
|
case 'tablist':
|
||
|
return 'tablist';
|
||
|
case 'tabpanel':
|
||
|
return undefined;
|
||
|
case 'term':
|
||
|
return undefined;
|
||
|
case 'timer':
|
||
|
return 'timer';
|
||
|
case 'toolbar':
|
||
|
return 'toolbar';
|
||
|
case 'tooltip':
|
||
|
return undefined;
|
||
|
case 'tree':
|
||
|
return undefined;
|
||
|
case 'treegrid':
|
||
|
return undefined;
|
||
|
case 'treeitem':
|
||
|
return undefined;
|
||
|
}
|
||
|
|
||
|
return undefined;
|
||
|
}
|