mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-16 13:40:24 +02:00
add configuration for alternate row colors
This commit is contained in:
@@ -172,6 +172,20 @@
|
|||||||
opacity: 0.5;
|
opacity: 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.track-row.track-row-alternate-even {
|
||||||
|
background-color: var(--theme-colors-background);
|
||||||
|
}
|
||||||
|
|
||||||
|
.track-row.track-row-alternate-odd {
|
||||||
|
@mixin dark {
|
||||||
|
background-color: darken(var(--theme-colors-background), 30%);
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin light {
|
||||||
|
background-color: darken(var(--theme-colors-background), 2%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.track-row.track-row-with-horizontal-border {
|
.track-row.track-row-with-horizontal-border {
|
||||||
border-top: 1px solid transparent;
|
border-top: 1px solid transparent;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ interface RowData {
|
|||||||
columnWidthPercents: number[];
|
columnWidthPercents: number[];
|
||||||
controls?: ItemControls;
|
controls?: ItemControls;
|
||||||
data: unknown[];
|
data: unknown[];
|
||||||
|
enableAlternateRowColors: boolean;
|
||||||
enableHorizontalBorders: boolean;
|
enableHorizontalBorders: boolean;
|
||||||
enableRowHoverHighlight: boolean;
|
enableRowHoverHighlight: boolean;
|
||||||
enableVerticalBorders: boolean;
|
enableVerticalBorders: boolean;
|
||||||
@@ -70,6 +71,7 @@ interface TrackRowProps {
|
|||||||
columns: ItemTableListColumnConfig[];
|
columns: ItemTableListColumnConfig[];
|
||||||
columnWidthPercents: number[];
|
columnWidthPercents: number[];
|
||||||
controls?: ItemControls;
|
controls?: ItemControls;
|
||||||
|
enableAlternateRowColors: boolean;
|
||||||
enableHorizontalBorders: boolean;
|
enableHorizontalBorders: boolean;
|
||||||
enableRowHoverHighlight: boolean;
|
enableRowHoverHighlight: boolean;
|
||||||
enableVerticalBorders: boolean;
|
enableVerticalBorders: boolean;
|
||||||
@@ -89,6 +91,7 @@ const TrackRow = memo(
|
|||||||
columns,
|
columns,
|
||||||
columnWidthPercents,
|
columnWidthPercents,
|
||||||
controls,
|
controls,
|
||||||
|
enableAlternateRowColors,
|
||||||
enableHorizontalBorders,
|
enableHorizontalBorders,
|
||||||
enableRowHoverHighlight,
|
enableRowHoverHighlight,
|
||||||
enableVerticalBorders,
|
enableVerticalBorders,
|
||||||
@@ -194,6 +197,8 @@ const TrackRow = memo(
|
|||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={clsx(styles.trackRow, {
|
className={clsx(styles.trackRow, {
|
||||||
|
[styles.trackRowAlternateEven]: enableAlternateRowColors && rowIndex % 2 === 0,
|
||||||
|
[styles.trackRowAlternateOdd]: enableAlternateRowColors && rowIndex % 2 === 1,
|
||||||
[styles.trackRowDragging]: isDragging,
|
[styles.trackRowDragging]: isDragging,
|
||||||
[styles.trackRowHorizontalBorderVisible]:
|
[styles.trackRowHorizontalBorderVisible]:
|
||||||
enableHorizontalBorders && rowIndex > 0,
|
enableHorizontalBorders && rowIndex > 0,
|
||||||
@@ -278,6 +283,7 @@ const RowContent = memo(
|
|||||||
columnWidthPercents,
|
columnWidthPercents,
|
||||||
controls,
|
controls,
|
||||||
data,
|
data,
|
||||||
|
enableAlternateRowColors,
|
||||||
enableHorizontalBorders,
|
enableHorizontalBorders,
|
||||||
enableRowHoverHighlight,
|
enableRowHoverHighlight,
|
||||||
enableVerticalBorders,
|
enableVerticalBorders,
|
||||||
@@ -407,6 +413,7 @@ const RowContent = memo(
|
|||||||
columns={trackColumns}
|
columns={trackColumns}
|
||||||
columnWidthPercents={columnWidthPercents}
|
columnWidthPercents={columnWidthPercents}
|
||||||
controls={controls}
|
controls={controls}
|
||||||
|
enableAlternateRowColors={enableAlternateRowColors}
|
||||||
enableHorizontalBorders={enableHorizontalBorders}
|
enableHorizontalBorders={enableHorizontalBorders}
|
||||||
enableRowHoverHighlight={enableRowHoverHighlight}
|
enableRowHoverHighlight={enableRowHoverHighlight}
|
||||||
enableVerticalBorders={enableVerticalBorders}
|
enableVerticalBorders={enableVerticalBorders}
|
||||||
@@ -428,6 +435,7 @@ const RowContent = memo(
|
|||||||
prev.index === next.index &&
|
prev.index === next.index &&
|
||||||
prev.data === next.data &&
|
prev.data === next.data &&
|
||||||
prev.columnWidthPercents === next.columnWidthPercents &&
|
prev.columnWidthPercents === next.columnWidthPercents &&
|
||||||
|
prev.enableAlternateRowColors === next.enableAlternateRowColors &&
|
||||||
prev.enableHorizontalBorders === next.enableHorizontalBorders &&
|
prev.enableHorizontalBorders === next.enableHorizontalBorders &&
|
||||||
prev.enableRowHoverHighlight === next.enableRowHoverHighlight &&
|
prev.enableRowHoverHighlight === next.enableRowHoverHighlight &&
|
||||||
prev.enableVerticalBorders === next.enableVerticalBorders &&
|
prev.enableVerticalBorders === next.enableVerticalBorders &&
|
||||||
@@ -527,6 +535,7 @@ export const ItemDetailList = ({
|
|||||||
}, [tableConfig?.columns]);
|
}, [tableConfig?.columns]);
|
||||||
const trackTableSize = tableConfig?.size ?? 'default';
|
const trackTableSize = tableConfig?.size ?? 'default';
|
||||||
const enableRowHoverHighlight = tableConfig?.enableRowHoverHighlight ?? true;
|
const enableRowHoverHighlight = tableConfig?.enableRowHoverHighlight ?? true;
|
||||||
|
const enableAlternateRowColors = tableConfig?.enableAlternateRowColors ?? false;
|
||||||
const enableHorizontalBorders = tableConfig?.enableHorizontalBorders ?? false;
|
const enableHorizontalBorders = tableConfig?.enableHorizontalBorders ?? false;
|
||||||
const enableVerticalBorders = tableConfig?.enableVerticalBorders ?? false;
|
const enableVerticalBorders = tableConfig?.enableVerticalBorders ?? false;
|
||||||
|
|
||||||
@@ -567,6 +576,7 @@ export const ItemDetailList = ({
|
|||||||
columnWidthPercents,
|
columnWidthPercents,
|
||||||
controls,
|
controls,
|
||||||
data: dataSource,
|
data: dataSource,
|
||||||
|
enableAlternateRowColors,
|
||||||
enableHorizontalBorders,
|
enableHorizontalBorders,
|
||||||
enableRowHoverHighlight,
|
enableRowHoverHighlight,
|
||||||
enableVerticalBorders,
|
enableVerticalBorders,
|
||||||
@@ -582,6 +592,7 @@ export const ItemDetailList = ({
|
|||||||
columnWidthPercents,
|
columnWidthPercents,
|
||||||
controls,
|
controls,
|
||||||
dataSource,
|
dataSource,
|
||||||
|
enableAlternateRowColors,
|
||||||
enableHorizontalBorders,
|
enableHorizontalBorders,
|
||||||
enableRowHoverHighlight,
|
enableRowHoverHighlight,
|
||||||
enableVerticalBorders,
|
enableVerticalBorders,
|
||||||
|
|||||||
Reference in New Issue
Block a user