|
1 | 1 | // @ts-check |
2 | | -const {aria, elementRoles, roles} = require('aria-query') |
| 2 | +const {aria, roles} = require('aria-query') |
3 | 3 | const {getPropValue, propName} = require('jsx-ast-utils') |
4 | 4 | const {getRole} = require('../utils/get-role') |
5 | | -const ObjectMap = require('../utils/object-map') |
6 | | - |
7 | | -// Clean-up `elementRoles` from `aria-query` |
8 | | -const elementRolesMap = new ObjectMap() |
9 | | -for (const [key, value] of elementRoles.entries()) { |
10 | | - // - Remove unused `constraints` key |
11 | | - delete key.constraints |
12 | | - // - Remove empty `attributes` key |
13 | | - if (!key.attributes || key.attributes?.length === 0) { |
14 | | - delete key.attributes |
15 | | - } |
16 | | - elementRolesMap.set(key, value) |
17 | | -} |
18 | | -// - Remove insufficiently-disambiguated `menuitem` entry |
19 | | -elementRolesMap.delete({name: 'menuitem'}) |
20 | | -// - Disambiguate `menuitem` and `menu` roles by `type` |
21 | | -elementRolesMap.set({name: 'menuitem', attributes: [{name: 'type', value: 'command'}]}, ['menuitem']) |
22 | | -elementRolesMap.set({name: 'menuitem', attributes: [{name: 'type', value: 'radio'}]}, ['menuitemradio']) |
23 | | -elementRolesMap.set({name: 'menuitem', attributes: [{name: 'type', value: 'toolbar'}]}, ['toolbar']) |
24 | | -elementRolesMap.set({name: 'menu', attributes: [{name: 'type', value: 'toolbar'}]}, ['toolbar']) |
25 | 5 |
|
26 | 6 | module.exports = { |
27 | 7 | meta: { |
|
0 commit comments