From 45cdff8c6faf90353a5cf5fe483233a82422591b Mon Sep 17 00:00:00 2001 From: Theophile Sandoz Date: Mon, 29 Jan 2024 18:39:30 +0100 Subject: [PATCH] Fix the infinite proposal page reload for CMs --- packages/ui/src/app/pages/Proposals/Proposals.tsx | 6 +++--- packages/ui/src/proposals/hooks/useProposals.ts | 6 ++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/ui/src/app/pages/Proposals/Proposals.tsx b/packages/ui/src/app/pages/Proposals/Proposals.tsx index 1cf18dd962..239ac399aa 100644 --- a/packages/ui/src/app/pages/Proposals/Proposals.tsx +++ b/packages/ui/src/app/pages/Proposals/Proposals.tsx @@ -23,7 +23,7 @@ export const Proposals = () => { const { order, getSortProps } = useSort('statusSetAtTime') const { proposals, isLoading, pagination } = useProposals({ order: order, status: 'active' }) - const isRefetched = useRefetchQueries({ interval: MILLISECONDS_PER_BLOCK, include: ['getProposals'] }) + useRefetchQueries({ interval: MILLISECONDS_PER_BLOCK, include: ['getProposals'] }) const { activities } = useProposalsActivities() return ( @@ -37,9 +37,9 @@ export const Proposals = () => { /> } main={ - proposals.length || (!isRefetched && isLoading) ? ( + proposals.length || isLoading ? ( - + ) : ( diff --git a/packages/ui/src/proposals/hooks/useProposals.ts b/packages/ui/src/proposals/hooks/useProposals.ts index 781ca58358..3961ecd630 100644 --- a/packages/ui/src/proposals/hooks/useProposals.ts +++ b/packages/ui/src/proposals/hooks/useProposals.ts @@ -71,10 +71,12 @@ export const useProposals = ({ const { data: proposalCount } = useGetProposalsCountQuery({ variables: { where } }) const { offset, pagination } = usePagination(perPage, proposalCount?.proposalsConnection.totalCount ?? 0, []) const paginationVariables = fetchAll ? {} : { offset, limit: perPage } - const { loading, data } = useGetProposalsQuery({ variables: { ...paginationVariables, where, orderBy } }) + const { loading, data, previousData } = useGetProposalsQuery({ + variables: { ...paginationVariables, where, orderBy }, + }) return { - isLoading: loading, + isLoading: loading && !previousData, pagination, proposals: data && data.proposals ? data.proposals.map(asProposal) : [], allCount: proposalCount?.proposalsConnection.totalCount,