@ou-imdt/utils
Version:
Utility library for interactive media development
12 lines (11 loc) • 545 B
JavaScript
import composedAncestors from './composedAncestors.js';
import firstFocusableNodeFrom from './firstFocusableNodeFrom.js';
/**
* Finds the closest focusable ancestor of a node.
* @param {Node} node - The node to start searching from.
* @param {string} focusDelegate - The property name used as a focus delegate.
* @returns {Node|null} The closest focusable ancestor or `null` if none found.
*/
export default function closestFocusableAncestor(node, focusDelegate) {
return firstFocusableNodeFrom(composedAncestors(node), focusDelegate);
}