Skip to content

Commit 2556465

Browse files
authored
Merge branch 'main' into fix/at-general-a11y
2 parents eb2a78c + 1ebf138 commit 2556465

File tree

2 files changed

+29
-20
lines changed

2 files changed

+29
-20
lines changed

packages/main/src/components/AnalyticalTable/AnalyticalTable.module.css

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -40,17 +40,6 @@
4040
font-size: var(--sapFontSize);
4141
font-weight: normal;
4242
background-color: var(--sapList_Background);
43-
44-
/* bottom border*/
45-
&::after {
46-
content: '';
47-
position: absolute;
48-
inset-block-end: 0;
49-
inset-inline-start: 0;
50-
height: var(--_ui5wcr-AnalyticalTable-HeaderBorderWidth);
51-
width: 100%;
52-
background: var(--sapList_HeaderBorderColor);
53-
}
5443
}
5544

5645
.busyIndicator {
@@ -148,6 +137,17 @@
148137
overflow-y: auto;
149138
scrollbar-width: none;
150139
box-sizing: border-box;
140+
141+
/* bottom border*/
142+
&::after {
143+
content: '';
144+
position: absolute;
145+
inset-block-end: 0;
146+
inset-inline-start: 0;
147+
height: var(--_ui5wcr-AnalyticalTable-HeaderBorderWidth);
148+
width: 100%;
149+
background: var(--sapList_HeaderBorderColor);
150+
}
151151
}
152152

153153
.alternateRowColor {

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

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { Virtualizer } from '@tanstack/react-virtual';
1+
import type { Virtualizer, VirtualItem } from '@tanstack/react-virtual';
22
import { clsx } from 'clsx';
33
import type { MutableRefObject } from 'react';
44
import { useEffect, useMemo, useRef } from 'react';
@@ -39,6 +39,15 @@ interface VirtualTableBodyProps {
3939
rowVirtualizer: Virtualizer<DivWithCustomScrollProp, HTMLElement>;
4040
}
4141

42+
function getDirectionStyles(isRtl: boolean, virtualColumn: VirtualItem) {
43+
return isRtl
44+
? {
45+
transform: `translateX(-${virtualColumn.start}px)`,
46+
insertInlineStart: 0,
47+
}
48+
: { transform: `translateX(${virtualColumn.start}px)`, insertInlineStart: 0 };
49+
}
50+
4251
export const VirtualTableBody = (props: VirtualTableBodyProps) => {
4352
const {
4453
alternateRowColor,
@@ -141,7 +150,13 @@ export const VirtualTableBody = (props: VirtualTableBodyProps) => {
141150
data-empty-row-cell="true"
142151
tabIndex={-1}
143152
aria-hidden="true"
144-
style={{ ...emptyRowCellProps.style, cursor: 'unset', width: item.size }}
153+
style={{
154+
...emptyRowCellProps.style,
155+
cursor: 'unset',
156+
position: 'absolute',
157+
width: `${item.size}px`,
158+
...getDirectionStyles(isRtl, item),
159+
}}
145160
/>
146161
);
147162
})}
@@ -205,12 +220,6 @@ export const VirtualTableBody = (props: VirtualTableBodyProps) => {
205220
)}
206221
{columnVirtualizer.getVirtualItems().map((virtualColumn, visibleColumnIndex) => {
207222
const cell = row.cells[virtualColumn.index];
208-
const directionStyles = isRtl
209-
? {
210-
transform: `translateX(-${virtualColumn.start}px)`,
211-
insertInlineStart: 0,
212-
}
213-
: { transform: `translateX(${virtualColumn.start}px)`, insertInlineStart: 0 };
214223
if (!cell) {
215224
return null;
216225
}
@@ -227,7 +236,7 @@ export const VirtualTableBody = (props: VirtualTableBodyProps) => {
227236
width: `${virtualColumn.size}px`,
228237
top: 0,
229238
height: `${rowHeight}px`,
230-
...directionStyles,
239+
...getDirectionStyles(isRtl, virtualColumn),
231240
},
232241
};
233242
let contentToRender: RenderColumnTypes;

0 commit comments

Comments
 (0)