From b93f886ad61901dc1b885e9728de9eb0b7a60300 Mon Sep 17 00:00:00 2001 From: Connor Prussin Date: Thu, 17 Apr 2025 08:38:40 -0700 Subject: [PATCH] feat(staking): hide empty pools --- .../OracleIntegrityStaking/index.tsx | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/apps/staking/src/components/OracleIntegrityStaking/index.tsx b/apps/staking/src/components/OracleIntegrityStaking/index.tsx index 414f32d689..603f45c02f 100644 --- a/apps/staking/src/components/OracleIntegrityStaking/index.tsx +++ b/apps/staking/src/components/OracleIntegrityStaking/index.tsx @@ -608,9 +608,17 @@ const PublisherList = ({ const filter = useFilter({ sensitivity: "base", usage: "search" }); const [currentPage, setPage] = useState(1); const collator = useCollator(); + const activePublishers = useMemo( + () => + publishers.filter( + (publisher) => + publisher.poolCapacity > 0n || hasAnyPositions(publisher), + ), + [publishers], + ); const filteredSortedPublishers = useMemo( () => - publishers + activePublishers .filter( (publisher) => filter.contains(publisher.publicKey.toBase58(), search) || @@ -629,7 +637,7 @@ const PublisherList = ({ } return compare(collator, a, b, yieldRate, sort); }), - [publishers, search, sort, filter, yieldRate, yoursFirst, collator], + [activePublishers, search, sort, filter, yieldRate, yoursFirst, collator], ); const paginatedPublishers = useMemo( @@ -1467,7 +1475,7 @@ const UtilizationMeter = ({ publisher, ...props }: UtilizationMeterProps) => { })} > {Number.isNaN(utilizationPercent) - ? "Empty Pool" + ? "Inactive Pool" : `${utilizationPercent.toString()}%`} @@ -1612,7 +1620,9 @@ const StakeToPublisherButton = ({ publisher.publicKey, ); - return ( + return publisher.poolCapacity === 0n ? ( + <> + ) : (