refactor(ui): simplify table selection and clarify mobile label rendering

Addresses PR feedback:
- Removes over-abstracted useTableSelection hook, inlines selection logic
- Replaces triple-condition with explicit hideMobileLabel bool flag
- Removes unsafe Record<string, never> casting

Fixes #3602
This commit is contained in:
harsh-aghara committed 2026-05-05 17:06:48 +05:30
1 parent 657a35e948
commit 387cb35494
4 files changed
+41 -98

No files matched your search

@@ -36,6 +36,7 @@ export type Header<T> = {
id: number | string;
content: React.ReactNode;
mobileLabel?: React.ReactNode;
hideMobileLabel?: boolean;
align?: "left" | "center" | "right" | "justify" | "inherit";
onClick?: (event: React.MouseEvent<HTMLTableCellElement | null>, row: T) => void;
render: (row: T) => React.ReactNode;
@@ -111,7 +112,7 @@ export function DataTable<
key={key}
>
{headers.map((header) => {
if (header.mobileLabel === null) {
if (header.hideMobileLabel) {
return (
<Grid2
container
@@ -143,9 +144,7 @@ export function DataTable<
component="div"
color={theme.palette.text.primary}
>
{header.mobileLabel !== undefined
? header.mobileLabel
: header.content}
{header.mobileLabel ?? header.content}
</Typography>
</Grid2>
<Grid2