|
- 'use strict';
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = getExplicitRole;
-
- var _ariaQuery = require('aria-query');
-
- var _jsxAstUtils = require('jsx-ast-utils');
-
- /**
- * Returns an element's computed role, which is
- *
- * 1. The valid value of its explicit role attribute; or
- * 2. The implicit value of its tag.
- */
- function getExplicitRole(tag, attributes) {
- var explicitRole = function toLowerCase(role) {
- if (typeof role === 'string') {
- return role.toLowerCase();
- }
- return null;
- }((0, _jsxAstUtils.getLiteralPropValue)((0, _jsxAstUtils.getProp)(attributes, 'role')));
-
- if (_ariaQuery.roles.has(explicitRole)) {
- return explicitRole;
- }
- return null;
- }
|