UNPKG

@zohodesk/hooks

Version:

Unified Component Library - Hooks

23 lines (21 loc) 744 B
export default function defaultResolve(elRef, query, matchedQuery) { let addClassNames = []; let removeClassNames = []; Object.keys(matchedQuery).forEach(queryName => { let queryClassName = (query[queryName] ? query[queryName].className : null) || ""; if (!queryClassName) { return; } if (matchedQuery[queryName] === true) { if (!elRef.classList.contains(queryClassName)) { addClassNames.push(queryClassName); } } else { if (elRef.classList.contains(queryClassName)) { removeClassNames.push(queryClassName); } } }); removeClassNames.length > 0 && elRef.classList.remove(...removeClassNames); addClassNames.length > 0 && elRef.classList.add(...addClassNames); }