From 43703866aa623fbb6f42653ca801f0440721d014 Mon Sep 17 00:00:00 2001 From: Veronika Tsygankova Date: Wed, 3 Jun 2026 11:49:06 +0300 Subject: [PATCH] =?UTF-8?q?[AURORA-1060]=20-=20=D0=92=D0=B8=D1=80=D1=83?= =?UTF-8?q?=D1=82=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9=20=D1=80=D0=B5=D0=BD?= =?UTF-8?q?=D0=B4=D0=B5=D1=80=D0=B8=D0=BD=D0=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RealtimeTable/RealtimeTable.jsx | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/web/src/components/RealtimeTable/RealtimeTable.jsx b/web/src/components/RealtimeTable/RealtimeTable.jsx index 39e6f0b..b67bcc2 100644 --- a/web/src/components/RealtimeTable/RealtimeTable.jsx +++ b/web/src/components/RealtimeTable/RealtimeTable.jsx @@ -65,7 +65,7 @@ const RealtimeTable = ({ formType, formId, sheetName, direction }) => { const { headerPortalRef, containerRef } = useHeaderPortal(); const { sizeMult, setSizeMult, tableScaleStyle, tableWrapperStyle } = - useTableScale(containerRef); + useTableScale(); const [columnsConfig, setColumnsConfig] = useState(null); @@ -125,11 +125,19 @@ const RealtimeTable = ({ formType, formId, sheetName, direction }) => { columns, data: data, enableRowVirtualization: true, + enableColumnVirtualization: true, rowVirtualizerOptions: { - overscan: 50, + overscan: 30, scrollPaddingStart: 0, scrollPaddingEnd: 0, }, + columnVirtualizerOptions: ({ table }) => ({ + overscan: 5, + measureElement: (el) => { + const index = Number(el?.getAttribute?.('data-index')); + return table.getVisibleLeafColumns()[index]?.getSize() ?? 0; + }, + }), enableRowSelection: true, onRowSelectionChange: setRowSelection, onColumnSizingChange: setColumnSizing, @@ -147,14 +155,9 @@ const RealtimeTable = ({ formType, formId, sheetName, direction }) => { expanded: true }, meta: tableMeta, - muiTableHeadCellProps: ({ column }) => ({ - sx: { - width: column.getSize(), - minWidth: column.getSize(), - maxWidth: column.getSize(), - boxSizing: 'border-box', - }, - }), + muiTableHeadCellProps: { + sx: { boxSizing: 'border-box' }, + }, muiTableBodyCellProps: getTableHeadCellStyles, muiTableHeadProps: { sx: {