UNPKG

@onenexus/squery

Version:

Interact with Synergy modules/BEM DOM elements

14 lines (10 loc) 552 B
import getNamespace from '../utilities/getNamespace'; export default function parentModule(node, config) { config = Object.assign(this || {}, config || {}); if (node instanceof NodeList || node instanceof Array) { return [].slice.call(node).map(node => parentModule(node, config)); } const namespace = config.namespace || getNamespace(node, false, config); const target = node.closest(`.${namespace}, [class*='${namespace + config.modifierGlue}']`); return (typeof sQuery === 'function') ? sQuery(target) : target; }