11 lines
357 B
TypeScript
11 lines
357 B
TypeScript
import { useState } from "react";
|
|
import type { TableConfig } from "./tableTypes";
|
|
|
|
// All columns visible by default.
|
|
export function useVisibleColumns<T>(config: TableConfig<T>) {
|
|
const [visibleKeys, setVisibleKeys] = useState<
|
|
Array<Extract<keyof T, string>>
|
|
>(() => config.columns.map((c) => c.key));
|
|
return { visibleKeys, setVisibleKeys };
|
|
}
|