diff --git a/apps/trading/client-pages/portfolio/withdrawals-container.tsx b/apps/trading/client-pages/portfolio/withdrawals-container.tsx index 409e1df5d..4168ac6a4 100644 --- a/apps/trading/client-pages/portfolio/withdrawals-container.tsx +++ b/apps/trading/client-pages/portfolio/withdrawals-container.tsx @@ -24,7 +24,8 @@ export const WithdrawalsContainer = () => { null} + suppressLoadingOverlay + suppressNoRowsOverlay />
null} + suppressLoadingOverlay + suppressNoRowsOverlay pinnedAsset={pinnedAsset} getRowHeight={getRowHeight} {...bottomPlaceholderProps} diff --git a/libs/positions/src/lib/positions-manager.tsx b/libs/positions/src/lib/positions-manager.tsx index 206bb4ad5..7fa1eb3ae 100644 --- a/libs/positions/src/lib/positions-manager.tsx +++ b/libs/positions/src/lib/positions-manager.tsx @@ -1,4 +1,4 @@ -import { useCallback, useRef } from 'react'; +import { useCallback, useEffect, useRef, useState } from 'react'; import { AsyncRenderer } from '@vegaprotocol/ui-toolkit'; import type { Position } from '../'; import { usePositionsData, PositionsTable } from '../'; @@ -7,6 +7,7 @@ import * as Schema from '@vegaprotocol/types'; import { useVegaTransactionStore } from '@vegaprotocol/wallet'; import { t } from '@vegaprotocol/i18n'; import { useBottomPlaceholder } from '@vegaprotocol/react-helpers'; +import { FilterChangedEvent } from 'ag-grid-community'; interface PositionsManagerProps { partyId: string; @@ -22,6 +23,7 @@ export const PositionsManager = ({ noBottomPlaceholder, }: PositionsManagerProps) => { const gridRef = useRef(null); + const [dataCount, setDataCount] = useState(0); const { data, error, loading, reload } = usePositionsData( partyId, gridRef, @@ -67,7 +69,12 @@ export const PositionsManager = ({ gridRef, setId, }); - + useEffect(() => { + setDataCount(gridRef.current?.api?.getModel().getRowCount() ?? 0); + }, [data]); + const onFilterChanged = useCallback((event: FilterChangedEvent) => { + setDataCount(gridRef.current?.api?.getModel().getRowCount() ?? 0); + }, []); return (
null} + suppressLoadingOverlay + suppressNoRowsOverlay isReadOnly={isReadOnly} + onFilterChanged={onFilterChanged} {...(noBottomPlaceholder ? null : bottomPlaceholderProps)} />
@@ -85,7 +94,7 @@ export const PositionsManager = ({ error={error} data={data} noDataMessage={t('No positions')} - noDataCondition={(data) => !(data && data.length)} + noDataCondition={(data) => !dataCount} reload={reload} />