UNPKG

@1771technologies/lytenyte-pro

Version:

Blazingly fast headless React data grid with 100s of features.

11 lines (10 loc) 539 B
export const makeColumnGroupToggle = (grid) => { return (group, state) => { const delimiter = grid.state.columnGroupJoinDelimiter.get(); const id = typeof group === "string" ? group : group.join(delimiter); const currentExpansions = grid.state.columnGroupExpansions.get(); const currentState = currentExpansions[id] ?? grid.state.columnGroupDefaultExpansion.get(); const next = state ?? !currentState; grid.state.columnGroupExpansions.set((prev) => ({ ...prev, [id]: next })); }; };