fix: remove empty space for hidden column (#6954)

* Update index.tsx

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
Edwin Jose 2025-03-06 14:13:16 -05:00 • committed by GitHub
commit 3d5c00c613
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -55,12 +55,12 @@ const TableComponent = forwardRef<
) => { ) => {
let colDef = props.columnDefs let colDef = props.columnDefs
.filter((col) => !col.hide) .filter((col) => !col.hide)
.map((col, index) => { .map((col, index, filteredArray) => {
let newCol = { let newCol = {
...col, ...col,
}; };
if (index !== props.columnDefs.length - 1) { if (index !== filteredArray.length - 1) {
newCol = { newCol = {
...newCol, ...newCol,
suppressSizeToFit: true, suppressSizeToFit: true,
@ -123,7 +123,11 @@ const TableComponent = forwardRef<
const dark = useDarkStore((state) => state.dark); const dark = useDarkStore((state) => state.dark);
const initialColumnDefs = useRef(colDef); const initialColumnDefs = useRef(colDef);
const [columnStateChange, setColumnStateChange] = useState(false); const [columnStateChange, setColumnStateChange] = useState(false);
const storeReference = props.columnDefs.map((e) => e.headerName).join("_"); // Only use visible columns for the store reference
const storeReference = props.columnDefs
.filter((col) => !col.hide)
.map((e) => e.headerName)
.join("_");
const onGridReady = (params) => { const onGridReady = (params) => {
// @ts-ignore // @ts-ignore
@ -148,6 +152,8 @@ const TableComponent = forwardRef<
setTimeout(() => { setTimeout(() => {
if (!realRef?.current?.api?.isDestroyed) { if (!realRef?.current?.api?.isDestroyed) {
realRef?.current?.api?.hideOverlay(); realRef?.current?.api?.hideOverlay();
// Force column fit after hiding overlay to ensure proper layout
realRef?.current?.api?.sizeColumnsToFit();
} }
}, 1000); }, 1000);
if (props.onGridReady) props.onGridReady(params); if (props.onGridReady) props.onGridReady(params);
@ -168,7 +174,7 @@ const TableComponent = forwardRef<
const containerWidth = containerElement.clientWidth; const containerWidth = containerElement.clientWidth;
// Get all columns // Get only visible columns
const columns = gridApi.getColumns(); const columns = gridApi.getColumns();
if (!columns) return; if (!columns) return;
@ -227,9 +233,14 @@ const TableComponent = forwardRef<
{...props} {...props}
defaultColDef={{ defaultColDef={{
minWidth: 100, minWidth: 100,
suppressColumnsToolPanel: true, // Don't show hidden columns in tool panel
}} }}
animateRows={false} animateRows={false}
gridOptions={{ colResizeDefault: "shift", ...props.gridOptions }} gridOptions={{
colResizeDefault: "shift",
suppressColumnVirtualisation: false, // Enable column virtualization for better performance
...props.gridOptions,
}}
onColumnResized={onColumnResized} onColumnResized={onColumnResized}
columnDefs={colDef} columnDefs={colDef}
ref={(node) => { ref={(node) => {