@1771technologies/lytenyte-pro
Version:
Blazingly fast headless React data grid with 100s of features.
19 lines (18 loc) • 571 B
JavaScript
import { useMemo } from "react";
export function useFilteredData(pivotMode, filter, leafs) {
// We now have our filtered
const filtered = useMemo(() => {
if (!pivotMode)
return [];
if (!filter)
return Array.from({ length: leafs.length }, (_, i) => i);
const filtered = [];
for (let i = 0; i < leafs.length; i++) {
const node = leafs[i];
if (filter(node))
filtered.push(i);
}
return filtered;
}, [filter, leafs, pivotMode]);
return filtered;
}