material-react-table 1.8.5 → 1.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/cjs/index.js +96 -60
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/_locales/sr-Cyrl-RS.d.ts +2 -0
  4. package/dist/cjs/types/_locales/sr-Latn-RS.d.ts +2 -0
  5. package/dist/cjs/types/body/MRT_TableBody.d.ts +1 -1
  6. package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +2 -3
  7. package/dist/cjs/types/column.utils.d.ts +1 -1
  8. package/dist/cjs/types/filterFns.d.ts +1 -1
  9. package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +1 -1
  10. package/dist/cjs/types/sortingFns.d.ts +2 -2
  11. package/dist/esm/material-react-table.esm.js +95 -60
  12. package/dist/esm/material-react-table.esm.js.map +1 -1
  13. package/dist/esm/types/_locales/sr-Cyrl-RS.d.ts +2 -0
  14. package/dist/esm/types/_locales/sr-Latn-RS.d.ts +2 -0
  15. package/dist/esm/types/body/MRT_TableBody.d.ts +1 -1
  16. package/dist/esm/types/body/MRT_TableBodyCell.d.ts +2 -3
  17. package/dist/esm/types/column.utils.d.ts +1 -1
  18. package/dist/esm/types/filterFns.d.ts +1 -1
  19. package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +1 -1
  20. package/dist/esm/types/sortingFns.d.ts +2 -2
  21. package/locales/sr-Cyrl-RS.d.ts +2 -0
  22. package/locales/sr-Cyrl-RS.esm.d.ts +2 -0
  23. package/locales/sr-Cyrl-RS.esm.js +94 -0
  24. package/locales/sr-Cyrl-RS.esm.js.map +1 -0
  25. package/locales/sr-Cyrl-RS.js +98 -0
  26. package/locales/sr-Cyrl-RS.js.map +1 -0
  27. package/locales/sr-Latn-RS.d.ts +2 -0
  28. package/locales/sr-Latn-RS.esm.d.ts +2 -0
  29. package/locales/sr-Latn-RS.esm.js +94 -0
  30. package/locales/sr-Latn-RS.esm.js.map +1 -0
  31. package/locales/sr-Latn-RS.js +98 -0
  32. package/locales/sr-Latn-RS.js.map +1 -0
  33. package/package.json +1 -1
  34. package/src/MaterialReactTable.tsx +1 -1
  35. package/src/_locales/sr-Cyrl-RS.ts +94 -0
  36. package/src/_locales/sr-Latn-RS.ts +94 -0
  37. package/src/body/MRT_TableBody.tsx +2 -2
  38. package/src/body/MRT_TableBodyCell.tsx +9 -14
  39. package/src/body/MRT_TableBodyRow.tsx +5 -6
  40. package/src/column.utils.ts +1 -1
  41. package/src/filterFns.ts +1 -1
  42. package/src/footer/MRT_TableFooterRow.tsx +1 -1
  43. package/src/head/MRT_TableHeadCell.tsx +4 -0
  44. package/src/head/MRT_TableHeadCellResizeHandle.tsx +1 -1
  45. package/src/head/MRT_TableHeadCellSortLabel.tsx +30 -22
  46. package/src/inputs/MRT_FilterTextField.tsx +1 -1
  47. package/src/menus/MRT_FilterOptionMenu.tsx +37 -15
  48. package/src/menus/MRT_RowActionMenu.tsx +1 -0
  49. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +2 -1
  50. package/src/sortingFns.ts +3 -3
  51. package/src/table/MRT_Table.tsx +2 -2
  52. package/src/table/MRT_TableRoot.tsx +1 -1
package/dist/cjs/index.js CHANGED
@@ -68,6 +68,7 @@ var Table = require('@mui/material/Table');
68
68
  var TableHead = require('@mui/material/TableHead');
69
69
  var TableRow = require('@mui/material/TableRow');
70
70
  var TableCell = require('@mui/material/TableCell');
71
+ var Badge = require('@mui/material/Badge');
71
72
  var TableSortLabel = require('@mui/material/TableSortLabel');
72
73
  var TableBody = require('@mui/material/TableBody');
73
74
  var Skeleton = require('@mui/material/Skeleton');
@@ -141,6 +142,7 @@ var Table__default = /*#__PURE__*/_interopDefaultLegacy(Table);
141
142
  var TableHead__default = /*#__PURE__*/_interopDefaultLegacy(TableHead);
142
143
  var TableRow__default = /*#__PURE__*/_interopDefaultLegacy(TableRow);
143
144
  var TableCell__default = /*#__PURE__*/_interopDefaultLegacy(TableCell);
145
+ var Badge__default = /*#__PURE__*/_interopDefaultLegacy(Badge);
144
146
  var TableSortLabel__default = /*#__PURE__*/_interopDefaultLegacy(TableSortLabel);
145
147
  var TableBody__default = /*#__PURE__*/_interopDefaultLegacy(TableBody);
146
148
  var Skeleton__default = /*#__PURE__*/_interopDefaultLegacy(Skeleton);
@@ -629,6 +631,9 @@ const mrtFilterOptions = (localization) => [
629
631
  divider: false,
630
632
  },
631
633
  ];
634
+ const rangeModes = ['between', 'betweenInclusive', 'inNumberRange'];
635
+ const emptyModes = ['empty', 'notEmpty'];
636
+ const arrModes = ['arrIncludesSome', 'arrIncludesAll', 'arrIncludes'];
632
637
  const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilterValue, table, }) => {
633
638
  var _a, _b, _c, _d;
634
639
  const { getState, options: { columnFilterModeOptions, globalFilterModeOptions, localization, renderColumnFilterModeMenuItems, renderGlobalFilterModeMenuItems, }, setColumnFilterFns, setGlobalFilterFn, } = table;
@@ -644,38 +649,62 @@ const MRT_FilterOptionMenu = ({ anchorEl, header, onSelect, setAnchorEl, setFilt
644
649
  globalFilterModeOptions.includes(filterOption.option)) &&
645
650
  ['fuzzy', 'contains', 'startsWith'].includes(filterOption.option)), []);
646
651
  const handleSelectFilterMode = (option) => {
647
- if (header && column) {
652
+ var _a;
653
+ const prevFilterMode = (_a = columnDef === null || columnDef === void 0 ? void 0 : columnDef._filterFn) !== null && _a !== void 0 ? _a : '';
654
+ if (!header || !column) {
655
+ // global filter mode
656
+ setGlobalFilterFn(option);
657
+ }
658
+ else if (option !== prevFilterMode) {
659
+ // column filter mode
648
660
  setColumnFilterFns((prev) => (Object.assign(Object.assign({}, prev), { [header.id]: option })));
649
- if (['empty', 'notEmpty'].includes(option)) {
650
- if (currentFilterValue !== ' ') {
661
+ // reset filter value and/or perform new filter render
662
+ if (emptyModes.includes(option)) {
663
+ // will now be empty/notEmpty filter mode
664
+ if (currentFilterValue !== ' ' &&
665
+ !emptyModes.includes(prevFilterMode)) {
651
666
  column.setFilterValue(' ');
652
667
  }
668
+ else if (currentFilterValue) {
669
+ column.setFilterValue(currentFilterValue); // perform new filter render
670
+ }
653
671
  }
654
672
  else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'multi-select' ||
655
- ['arrIncludesSome', 'arrIncludesAll', 'arrIncludes'].includes(option)) {
673
+ arrModes.includes(option)) {
674
+ // will now be array filter mode
656
675
  if (currentFilterValue instanceof String ||
657
676
  (currentFilterValue === null || currentFilterValue === void 0 ? void 0 : currentFilterValue.length)) {
658
677
  column.setFilterValue([]);
659
678
  setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue([]);
660
679
  }
680
+ else if (currentFilterValue) {
681
+ column.setFilterValue(currentFilterValue); // perform new filter render
682
+ }
661
683
  }
662
684
  else if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.filterVariant) === 'range' ||
663
- ['between', 'betweenInclusive', 'inNumberRange'].includes(option)) {
664
- if (!(currentFilterValue === null || currentFilterValue === void 0 ? void 0 : currentFilterValue.every((v) => v === ''))) {
685
+ rangeModes.includes(option)) {
686
+ // will now be range filter mode
687
+ if (!Array.isArray(currentFilterValue) ||
688
+ (!(currentFilterValue === null || currentFilterValue === void 0 ? void 0 : currentFilterValue.every((v) => v === '')) &&
689
+ !rangeModes.includes(prevFilterMode))) {
665
690
  column.setFilterValue(['', '']);
666
691
  setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue('');
667
692
  }
693
+ else {
694
+ column.setFilterValue(currentFilterValue); // perform new filter render
695
+ }
668
696
  }
669
697
  else {
670
- if (!['', undefined].includes(currentFilterValue)) {
698
+ // will now be single value filter mode
699
+ if (Array.isArray(currentFilterValue)) {
671
700
  column.setFilterValue('');
672
701
  setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue('');
673
702
  }
703
+ else {
704
+ column.setFilterValue(currentFilterValue); // perform new filter render
705
+ }
674
706
  }
675
707
  }
676
- else {
677
- setGlobalFilterFn(option);
678
- }
679
708
  setAnchorEl(null);
680
709
  onSelect === null || onSelect === void 0 ? void 0 : onSelect();
681
710
  };
@@ -792,8 +821,9 @@ const MRT_ShowHideColumnsMenuItems = ({ allColumns, hoveredColumn, setHoveredCol
792
821
  justifyContent: 'flex-start',
793
822
  my: 0,
794
823
  opacity: isDragging ? 0.5 : 1,
824
+ outlineOffset: '-2px',
795
825
  outline: isDragging
796
- ? `1px dashed ${theme.palette.divider}`
826
+ ? `2px dashed ${theme.palette.divider}`
797
827
  : (hoveredColumn === null || hoveredColumn === void 0 ? void 0 : hoveredColumn.id) === column.id
798
828
  ? `2px dashed ${theme.palette.primary.main}`
799
829
  : 'none',
@@ -1046,7 +1076,7 @@ const MRT_ColumnActionMenu = ({ anchorEl, header, setAnchorEl, table, }) => {
1046
1076
  const MRT_RowActionMenu = ({ anchorEl, handleEdit, row, setAnchorEl, table, }) => {
1047
1077
  const { getState, options: { icons: { EditIcon }, enableEditing, localization, renderRowActionMenuItems, }, } = table;
1048
1078
  const { density } = getState();
1049
- return (React__default["default"].createElement(Menu__default["default"], { anchorEl: anchorEl, open: !!anchorEl, onClose: () => setAnchorEl(null), MenuListProps: {
1079
+ return (React__default["default"].createElement(Menu__default["default"], { anchorEl: anchorEl, open: !!anchorEl, onClick: (event) => event.stopPropagation(), onClose: () => setAnchorEl(null), MenuListProps: {
1050
1080
  dense: density === 'compact',
1051
1081
  } },
1052
1082
  enableEditing instanceof Function
@@ -1643,7 +1673,7 @@ const MRT_FilterTextField = ({ header, rangeFilterIndex, table, }) => {
1643
1673
  else if (isRangeFilter) {
1644
1674
  setFilterValue('');
1645
1675
  column.setFilterValue((old) => {
1646
- const newFilterValues = old !== null && old !== void 0 ? old : ['', ''];
1676
+ const newFilterValues = (Array.isArray(old) && old) || ['', ''];
1647
1677
  newFilterValues[rangeFilterIndex] = undefined;
1648
1678
  return newFilterValues;
1649
1679
  });
@@ -1909,7 +1939,7 @@ const MRT_TableHeadCellResizeHandle = ({ header, table }) => {
1909
1939
  column.resetSize();
1910
1940
  }, onMouseDown: header.getResizeHandler(), onTouchStart: header.getResizeHandler(), sx: (theme) => ({
1911
1941
  cursor: 'col-resize',
1912
- mr: density === 'compact' ? '-0.5rem' : '-1rem',
1942
+ mr: density === 'compact' ? '-0.75rem' : '-1rem',
1913
1943
  position: 'absolute',
1914
1944
  right: '1px',
1915
1945
  px: '4px',
@@ -1936,28 +1966,30 @@ const MRT_TableHeadCellResizeHandle = ({ header, table }) => {
1936
1966
  };
1937
1967
 
1938
1968
  const MRT_TableHeadCellSortLabel = ({ header, table, tableCellProps, }) => {
1939
- const { options: { icons: { ArrowDownwardIcon }, localization, }, } = table;
1969
+ const { getState, options: { icons: { ArrowDownwardIcon }, localization, }, } = table;
1940
1970
  const { column } = header;
1941
1971
  const { columnDef } = column;
1972
+ const { sorting } = getState();
1942
1973
  const sortTooltip = column.getIsSorted()
1943
1974
  ? column.getIsSorted() === 'desc'
1944
1975
  ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)
1945
1976
  : localization.sortedByColumnAsc.replace('{column}', columnDef.header)
1946
1977
  : localization.unsorted;
1947
1978
  return (React__default["default"].createElement(Tooltip__default["default"], { arrow: true, placement: "top", title: sortTooltip },
1948
- React__default["default"].createElement(TableSortLabel__default["default"], { "aria-label": sortTooltip, active: !!column.getIsSorted(), direction: column.getIsSorted()
1949
- ? column.getIsSorted()
1950
- : undefined, sx: {
1951
- flex: '0 0',
1952
- width: '2.3ch',
1953
- transform: (tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.align) !== 'right'
1954
- ? 'translateX(-0.5ch)'
1955
- : undefined,
1956
- }, IconComponent: ArrowDownwardIcon, onClick: (e) => {
1957
- var _a;
1958
- e.stopPropagation();
1959
- (_a = header.column.getToggleSortingHandler()) === null || _a === void 0 ? void 0 : _a(e);
1960
- } })));
1979
+ React__default["default"].createElement(Badge__default["default"], { badgeContent: sorting.length > 1 ? column.getSortIndex() + 1 : 0, overlap: "circular" },
1980
+ React__default["default"].createElement(TableSortLabel__default["default"], { "aria-label": sortTooltip, active: !!column.getIsSorted(), direction: column.getIsSorted()
1981
+ ? column.getIsSorted()
1982
+ : undefined, sx: {
1983
+ flex: '0 0',
1984
+ width: '2.4ch',
1985
+ transform: (tableCellProps === null || tableCellProps === void 0 ? void 0 : tableCellProps.align) !== 'right'
1986
+ ? 'translateX(-0.5ch)'
1987
+ : undefined,
1988
+ }, IconComponent: ArrowDownwardIcon, onClick: (e) => {
1989
+ var _a;
1990
+ e.stopPropagation();
1991
+ (_a = header.column.getToggleSortingHandler()) === null || _a === void 0 ? void 0 : _a(e);
1992
+ } }))));
1961
1993
  };
1962
1994
 
1963
1995
  const MRT_TableHeadCell = ({ header, table }) => {
@@ -2077,9 +2109,13 @@ const MRT_TableHeadCell = ({ header, table }) => {
2077
2109
  : undefined,
2078
2110
  } },
2079
2111
  React__default["default"].createElement(Box__default["default"], { className: "Mui-TableHeadCell-Content-Wrapper", sx: {
2112
+ minWidth: '5ch',
2080
2113
  overflow: columnDefType === 'data' ? 'hidden' : undefined,
2081
2114
  textOverflow: 'ellipsis',
2082
2115
  whiteSpace: ((_d = (_c = columnDef.header) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) < 20 ? 'nowrap' : 'normal',
2116
+ '&:hover': {
2117
+ textOverflow: 'clip',
2118
+ },
2083
2119
  }, title: columnDefType === 'data' ? columnDef.header : undefined }, headerElement),
2084
2120
  column.getCanSort() && (React__default["default"].createElement(MRT_TableHeadCellSortLabel, { header: header, table: table, tableCellProps: tableCellProps })),
2085
2121
  column.getCanFilter() && (React__default["default"].createElement(MRT_TableHeadCellFilterLabel, { header: header, table: table }))),
@@ -2321,7 +2357,7 @@ const MRT_TableBodyCellValue = ({ cell, table }) => {
2321
2357
  return React__default["default"].createElement(React__default["default"].Fragment, null, renderedCellValue);
2322
2358
  };
2323
2359
 
2324
- const MRT_TableBodyCell = ({ cell, enableHover, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }) => {
2360
+ const MRT_TableBodyCell = ({ cell, measureElement, numRows, rowIndex, rowRef, table, virtualCell, }) => {
2325
2361
  var _a, _b, _c, _d;
2326
2362
  const theme = styles.useTheme();
2327
2363
  const { getState, options: { editingMode, enableClickToCopy, enableColumnOrdering, enableEditing, enableGrouping, enableRowNumbers, layoutMode, muiTableBodyCellProps, muiTableBodyCellSkeletonProps, rowNumberMode, }, refs: { editInputRefs }, setEditingCell, setHoveredColumn, } = table;
@@ -2435,37 +2471,36 @@ const MRT_TableBodyCell = ({ cell, enableHover, measureElement, numRows, rowInde
2435
2471
  ? 0.75
2436
2472
  : 1.25)}rem`
2437
2473
  : undefined, textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined, whiteSpace: density === 'compact' ? 'nowrap' : 'normal', zIndex: (draggingColumn === null || draggingColumn === void 0 ? void 0 : draggingColumn.id) === column.id ? 2 : column.getIsPinned() ? 1 : 0, '&:hover': {
2438
- backgroundColor: enableHover &&
2439
- isEditable &&
2440
- ['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
2441
- ? theme.palette.mode === 'dark'
2442
- ? `${styles.lighten(theme.palette.background.default, 0.2)} !important`
2443
- : `${styles.darken(theme.palette.background.default, 0.1)} !important`
2474
+ outline: ['table', 'cell'].includes(editingMode !== null && editingMode !== void 0 ? editingMode : '')
2475
+ ? `1px solid ${theme.palette.text.secondary}`
2444
2476
  : undefined,
2477
+ outlineOffset: '-1px',
2478
+ textOverflow: 'clip',
2445
2479
  } }, getCommonCellStyles({
2446
2480
  column,
2447
2481
  table,
2448
2482
  theme,
2449
2483
  tableCellProps,
2450
2484
  })), draggingBorders)) }),
2451
- React__default["default"].createElement(React__default["default"].Fragment, null, cell.getIsPlaceholder() ? ((_b = (_a = columnDef.PlaceholderCell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table })) !== null && _b !== void 0 ? _b : null) : isLoading || showSkeletons ? (React__default["default"].createElement(Skeleton__default["default"], Object.assign({ animation: "wave", height: 20, width: skeletonWidth }, skeletonProps))) : enableRowNumbers &&
2452
- rowNumberMode === 'static' &&
2453
- column.id === 'mrt-row-numbers' ? (rowIndex + 1) : column.id === 'mrt-row-drag' ? (React__default["default"].createElement(MRT_TableBodyRowGrabHandle, { cell: cell, rowRef: rowRef, table: table })) : columnDefType === 'display' &&
2454
- (column.id === 'mrt-row-select' ||
2455
- column.id === 'mrt-row-expand' ||
2456
- !row.getIsGrouped()) ? ((_c = columnDef.Cell) === null || _c === void 0 ? void 0 : _c.call(columnDef, {
2457
- cell,
2458
- renderedCellValue: cell.renderValue(),
2459
- column,
2460
- row,
2461
- table,
2462
- })) : isEditing ? (React__default["default"].createElement(MRT_EditCellTextField, { cell: cell, table: table })) : (enableClickToCopy || columnDef.enableClickToCopy) &&
2463
- columnDef.enableClickToCopy !== false ? (React__default["default"].createElement(MRT_CopyButton, { cell: cell, table: table },
2464
- React__default["default"].createElement(MRT_TableBodyCellValue, { cell: cell, table: table }))) : (React__default["default"].createElement(MRT_TableBodyCellValue, { cell: cell, table: table }))),
2465
- cell.getIsGrouped() && !columnDef.GroupedCell && (React__default["default"].createElement(React__default["default"].Fragment, null,
2466
- " (", (_d = row.subRows) === null || _d === void 0 ? void 0 :
2467
- _d.length,
2468
- ")"))));
2485
+ React__default["default"].createElement(React__default["default"].Fragment, null,
2486
+ cell.getIsPlaceholder() ? ((_b = (_a = columnDef.PlaceholderCell) === null || _a === void 0 ? void 0 : _a.call(columnDef, { cell, column, row, table })) !== null && _b !== void 0 ? _b : null) : isLoading || showSkeletons ? (React__default["default"].createElement(Skeleton__default["default"], Object.assign({ animation: "wave", height: 20, width: skeletonWidth }, skeletonProps))) : enableRowNumbers &&
2487
+ rowNumberMode === 'static' &&
2488
+ column.id === 'mrt-row-numbers' ? (rowIndex + 1) : column.id === 'mrt-row-drag' ? (React__default["default"].createElement(MRT_TableBodyRowGrabHandle, { cell: cell, rowRef: rowRef, table: table })) : columnDefType === 'display' &&
2489
+ (column.id === 'mrt-row-select' ||
2490
+ column.id === 'mrt-row-expand' ||
2491
+ !row.getIsGrouped()) ? ((_c = columnDef.Cell) === null || _c === void 0 ? void 0 : _c.call(columnDef, {
2492
+ cell,
2493
+ renderedCellValue: cell.renderValue(),
2494
+ column,
2495
+ row,
2496
+ table,
2497
+ })) : isEditing ? (React__default["default"].createElement(MRT_EditCellTextField, { cell: cell, table: table })) : (enableClickToCopy || columnDef.enableClickToCopy) &&
2498
+ columnDef.enableClickToCopy !== false ? (React__default["default"].createElement(MRT_CopyButton, { cell: cell, table: table },
2499
+ React__default["default"].createElement(MRT_TableBodyCellValue, { cell: cell, table: table }))) : (React__default["default"].createElement(MRT_TableBodyCellValue, { cell: cell, table: table })),
2500
+ cell.getIsGrouped() && !columnDef.GroupedCell && (React__default["default"].createElement(React__default["default"].Fragment, null,
2501
+ " (", (_d = row.subRows) === null || _d === void 0 ? void 0 :
2502
+ _d.length,
2503
+ ")")))));
2469
2504
  };
2470
2505
  const Memo_MRT_TableBodyCell = React.memo(MRT_TableBodyCell, (prev, next) => next.cell === prev.cell);
2471
2506
 
@@ -2496,7 +2531,7 @@ const MRT_TableDetailPanel = ({ parentRowRef, row, table, virtualRow, }) => {
2496
2531
  };
2497
2532
 
2498
2533
  const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, rowIndex, table, virtualColumns, virtualPaddingLeft, virtualPaddingRight, virtualRow, }) => {
2499
- const { getIsSomeColumnsPinned, getState, options: { enableRowOrdering, layoutMode, memoMode, muiTableBodyRowProps, renderDetailPanel, }, setHoveredRow, } = table;
2534
+ const { getState, options: { enableRowOrdering, layoutMode, memoMode, muiTableBodyRowProps, renderDetailPanel, }, setHoveredRow, } = table;
2500
2535
  const { draggingColumn, draggingRow, editingCell, editingRow, hoveredRow } = getState();
2501
2536
  const tableRowProps = muiTableBodyRowProps instanceof Function
2502
2537
  ? muiTableBodyRowProps({ row, table })
@@ -2508,7 +2543,7 @@ const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, row
2508
2543
  };
2509
2544
  const rowRef = React.useRef(null);
2510
2545
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
2511
- React__default["default"].createElement(TableRow__default["default"], Object.assign({ "data-index": virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.index, hover: true, onDragEnter: handleDragEnter, selected: row.getIsSelected(), ref: (node) => {
2546
+ React__default["default"].createElement(TableRow__default["default"], Object.assign({ "data-index": virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.index, onDragEnter: handleDragEnter, selected: row.getIsSelected(), ref: (node) => {
2512
2547
  if (node) {
2513
2548
  rowRef.current = node;
2514
2549
  measureElement === null || measureElement === void 0 ? void 0 : measureElement(node);
@@ -2516,10 +2551,12 @@ const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, row
2516
2551
  } }, tableRowProps, { sx: (theme) => (Object.assign({ backgroundColor: styles.lighten(theme.palette.background.default, 0.06), display: layoutMode === 'grid' ? 'flex' : 'table-row', opacity: (draggingRow === null || draggingRow === void 0 ? void 0 : draggingRow.id) === row.id || (hoveredRow === null || hoveredRow === void 0 ? void 0 : hoveredRow.id) === row.id ? 0.5 : 1, position: virtualRow ? 'absolute' : undefined, top: virtualRow ? 0 : undefined, transform: virtualRow
2517
2552
  ? `translateY(${virtualRow === null || virtualRow === void 0 ? void 0 : virtualRow.start}px)`
2518
2553
  : undefined, transition: virtualRow ? 'none' : 'all 150ms ease-in-out', width: '100%', '&:hover td': {
2519
- backgroundColor: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false && getIsSomeColumnsPinned()
2520
- ? theme.palette.mode === 'dark'
2521
- ? `${styles.lighten(theme.palette.background.default, 0.12)}`
2522
- : `${styles.darken(theme.palette.background.default, 0.05)}`
2554
+ backgroundColor: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false
2555
+ ? row.getIsSelected()
2556
+ ? `${styles.alpha(theme.palette.primary.main, 0.2)}`
2557
+ : theme.palette.mode === 'dark'
2558
+ ? `${styles.lighten(theme.palette.background.default, 0.12)}`
2559
+ : `${styles.darken(theme.palette.background.default, 0.05)}`
2523
2560
  : undefined,
2524
2561
  } }, ((tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.sx) instanceof Function
2525
2562
  ? tableRowProps.sx(theme)
@@ -2531,7 +2568,6 @@ const MRT_TableBodyRow = ({ columnVirtualizer, measureElement, numRows, row, row
2531
2568
  : cellOrVirtualCell;
2532
2569
  const props = {
2533
2570
  cell,
2534
- enableHover: (tableRowProps === null || tableRowProps === void 0 ? void 0 : tableRowProps.hover) !== false,
2535
2571
  key: cell.id,
2536
2572
  measureElement: columnVirtualizer === null || columnVirtualizer === void 0 ? void 0 : columnVirtualizer.measureElement,
2537
2573
  numRows,