@qualweb/util
Version:
Utilities module for qualweb
22 lines (21 loc) • 836 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function getAriaOwner(element) {
const id = element.getElementAttribute('id');
const ariaOwns = window.qwPage.getElements('[aria-owns]', element);
let index = 0;
let ariaOwner;
while (id && index < ariaOwns.length && !!ariaOwns) {
const ariaElement = ariaOwns[index];
const ariaOwnsAttribute = ariaElement.getElementAttribute('aria-owns');
if (ariaOwnsAttribute) {
const idArray = ariaOwnsAttribute.split(' ');
if (idArray.includes(id) && window.AccessibilityUtils.isElementInAT(ariaElement)) {
ariaOwner = ariaElement;
}
}
index++;
}
return ariaOwner !== null && ariaOwner !== void 0 ? ariaOwner : null;
}
exports.default = getAriaOwner;