Skip to content

Commit ee37009

Browse files
fix(AnalyticalTable): fixed alternateRowColor sort bug (#316)
1 parent 045b944 commit ee37009

File tree

3 files changed

+10
-7
lines changed

3 files changed

+10
-7
lines changed

packages/main/src/components/AnalyticalTable/hooks/useTableRowStyling.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ const ROW_SELECTION_ATTRIBUTE = 'data-is-selected';
55

66
export const useTableRowStyling = (hooks) => {
77
hooks.getRowProps.push((passedRowProps, { instance, row }) => {
8-
const { classes, selectionMode, onRowSelected, alternateRowColor } = instance.webComponentsReactProperties;
8+
const { classes, selectionMode, onRowSelected } = instance.webComponentsReactProperties;
99
const isEmptyRow = row.original?.emptyRow;
1010
let className = classes.tr;
1111
if (row.isGrouped) {
@@ -16,10 +16,6 @@ export const useTableRowStyling = (hooks) => {
1616
className += ` ${classes.emptyRow}`;
1717
}
1818

19-
if (alternateRowColor && row.index % 2 !== 0) {
20-
className += ` ${classes.alternateRowColor}`;
21-
}
22-
2319
const rowProps: any = {
2420
...passedRowProps,
2521
className,

packages/main/src/components/AnalyticalTable/virtualization/VirtualTableBody.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ export const VirtualTableBody = (props) => {
5050
return {
5151
rows,
5252
additionalProps: {
53+
alternateRowColor,
5354
isTreeTable,
5455
classes,
5556
columns

packages/main/src/components/AnalyticalTable/virtualization/VirtualTableRow.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,21 @@ import React from 'react';
33
export const VirtualTableRow = (props) => {
44
const { style, index, data } = props;
55
const { additionalProps, rows } = data;
6-
const { isTreeTable } = additionalProps;
6+
const { isTreeTable, classes, alternateRowColor } = additionalProps;
77
const row = rows[index];
88

99
if (!row) {
1010
return null;
1111
}
1212

13+
const rowProps = row.getRowProps();
14+
15+
if (alternateRowColor && index % 2 !== 0) {
16+
rowProps.className += ` ${classes.alternateRowColor}`;
17+
}
18+
1319
return (
14-
<div {...row.getRowProps()} style={style} aria-rowindex={index}>
20+
<div {...rowProps} style={style} aria-rowindex={index}>
1521
{row.cells.map((cell) => {
1622
if (row.original?.emptyRow) return <div {...cell.getCellProps()} />;
1723
let contentToRender = 'Cell';

0 commit comments

Comments
 (0)