@1771technologies/lytenyte-pro
Version:
Blazingly fast headless React data grid with 100s of features.
19 lines (18 loc) • 577 B
JavaScript
import { useMemo } from "react";
export function resolveRowIndex(value, rowSource) {
if (typeof value === "number")
return value;
return rowSource.rowIdToRowIndex(value) ?? null;
}
export function resolveColumnIndex(value, colIdToIndex) {
if (typeof value === "number")
return value;
return colIdToIndex.get(value) ?? null;
}
export function useColumnIdToIndex(visibleColumns) {
return useMemo(() => {
const map = new Map();
visibleColumns.forEach((c, i) => map.set(c.id, i));
return map;
}, [visibleColumns]);
}