getActiveElement.js 729 B

1234567891011121314151617181920212223242526
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.getActiveElement = getActiveElement;
  6. var _isDisabled = require("../misc/isDisabled");
  7. function getActiveElement(document) {
  8. const activeElement = document.activeElement;
  9. if (activeElement != null && activeElement.shadowRoot) {
  10. return getActiveElement(activeElement.shadowRoot);
  11. } else {
  12. // Browser does not yield disabled elements as document.activeElement - jsdom does
  13. if ((0, _isDisabled.isDisabled)(activeElement)) {
  14. return document.ownerDocument ? // TODO: verify behavior in ShadowRoot
  15. /* istanbul ignore next */
  16. document.ownerDocument.body : document.body;
  17. }
  18. return activeElement;
  19. }
  20. }