23 lines
847 B
JavaScript
23 lines
847 B
JavaScript
function resolveElements(elementOrSelector, scope, selectorCache) {
|
|
var _a;
|
|
if (elementOrSelector instanceof Element) {
|
|
return [elementOrSelector];
|
|
}
|
|
else if (typeof elementOrSelector === "string") {
|
|
let root = document;
|
|
if (scope) {
|
|
// TODO: Refactor to utils package
|
|
// invariant(
|
|
// Boolean(scope.current),
|
|
// "Scope provided, but no element detected."
|
|
// )
|
|
root = scope.current;
|
|
}
|
|
const elements = (_a = selectorCache === null || selectorCache === void 0 ? void 0 : selectorCache[elementOrSelector]) !== null && _a !== void 0 ? _a : root.querySelectorAll(elementOrSelector);
|
|
return elements ? Array.from(elements) : [];
|
|
}
|
|
return Array.from(elementOrSelector);
|
|
}
|
|
|
|
export { resolveElements };
|