box-overflow-core
Version:
Headless UI for automatically collapsing boxes when overflow.
28 lines (27 loc) • 624 B
JavaScript
function isElementNode(node) {
return node.nodeType === Node.ELEMENT_NODE;
}
function notNil(value) {
return value !== null && value !== void 0;
}
function memo(getDeps, fn) {
let deps = [];
let result;
let firstRun = true;
return () => {
const newDeps = getDeps();
const depsChanged = newDeps.length !== deps.length || newDeps.some((dep, index) => deps[index] !== dep);
if (!depsChanged && !firstRun)
return result;
firstRun = false;
deps = newDeps;
result = fn(...newDeps);
return result;
};
}
export {
isElementNode,
memo,
notNil
};
//# sourceMappingURL=utils.js.map