From ee4f1da95661323b8d992e736e40dd842378fd03 Mon Sep 17 00:00:00 2001 From: Prateek Jain Date: Tue, 30 Jul 2024 22:46:36 +0530 Subject: [PATCH] Fix total count in show page (#6462) Fixes #6405 We need to take into account both the totalCount of **before cursor** results and **after cursor** results. --- .../record-show/hooks/useRecordShowPagePagination.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/twenty-front/src/modules/object-record/record-show/hooks/useRecordShowPagePagination.ts b/packages/twenty-front/src/modules/object-record/record-show/hooks/useRecordShowPagePagination.ts index d9dc4004e..35b43e1be 100644 --- a/packages/twenty-front/src/modules/object-record/record-show/hooks/useRecordShowPagePagination.ts +++ b/packages/twenty-front/src/modules/object-record/record-show/hooks/useRecordShowPagePagination.ts @@ -60,7 +60,8 @@ export const useRecordShowPagePagination = ( const cursorFromRequest = currentRecordsPageInfo?.endCursor; - const [totalCount, setTotalCount] = useState(0); + const [totalCountBefore, setTotalCountBefore] = useState(0); + const [totalCountAfter, setTotalCountAfter] = useState(0); const { loading: loadingRecordBefore, records: recordsBefore } = useFindManyRecords({ @@ -78,7 +79,7 @@ export const useRecordShowPagePagination = ( objectNameSingular, recordGqlFields, onCompleted: (_, pagination) => { - setTotalCount(pagination?.totalCount ?? 0); + setTotalCountBefore(pagination?.totalCount ?? 0); }, }); @@ -98,7 +99,7 @@ export const useRecordShowPagePagination = ( objectNameSingular, recordGqlFields, onCompleted: (_, pagination) => { - setTotalCount(pagination?.totalCount ?? 0); + setTotalCountAfter(pagination?.totalCount ?? 0); }, }); @@ -147,6 +148,8 @@ export const useRecordShowPagePagination = ( const objectLabel = capitalize(objectMetadataItem.namePlural); + const totalCount = Math.max(1, totalCountBefore, totalCountAfter); + const viewNameWithCount = rankFoundInFiew ? `${rankInView + 1} of ${totalCount} in ${objectLabel}` : `${objectLabel} (${totalCount})`;