"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;
}