You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

29 lines
788 B

  1. 'use strict';
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = getImplicitRole;
  6. var _ariaQuery = require('aria-query');
  7. var _implicitRoles = require('./implicitRoles');
  8. var _implicitRoles2 = _interopRequireDefault(_implicitRoles);
  9. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  10. /**
  11. * Returns an element's implicit role given its attributes and type.
  12. * Some elements only have an implicit role when certain props are defined.
  13. */
  14. function getImplicitRole(type, attributes) {
  15. var implicitRole = void 0;
  16. if (_implicitRoles2.default[type]) {
  17. implicitRole = _implicitRoles2.default[type](attributes);
  18. }
  19. if (_ariaQuery.roles.has(implicitRole)) {
  20. return implicitRole;
  21. }
  22. return null;
  23. }