aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src/main/js/helpers/react-query.ts
diff options
context:
space:
mode:
Diffstat (limited to 'server/sonar-web/src/main/js/helpers/react-query.ts')
-rw-r--r--server/sonar-web/src/main/js/helpers/react-query.ts9
1 files changed, 9 insertions, 0 deletions
diff --git a/server/sonar-web/src/main/js/helpers/react-query.ts b/server/sonar-web/src/main/js/helpers/react-query.ts
index d8efca16d91..0dc5e38c9fc 100644
--- a/server/sonar-web/src/main/js/helpers/react-query.ts
+++ b/server/sonar-web/src/main/js/helpers/react-query.ts
@@ -18,6 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import { UseQueryResult } from '@tanstack/react-query';
+import { Paging } from '../types/types';
const notUndefined = <T>(x: T | undefined): x is T => x !== undefined;
@@ -32,3 +33,11 @@ export const mapReactQueryResult = <T, R>(
data: notUndefined(res.data) ? mapper(res.data) : res.data,
} as UseQueryResult<R>;
};
+
+export const getNextPageParam = <T extends { page: Paging }>(params: T) =>
+ params.page.total <= params.page.pageIndex * params.page.pageSize
+ ? undefined
+ : params.page.pageIndex + 1;
+
+export const getPreviousPageParam = <T extends { page: Paging }>(params: T) =>
+ params.page.pageIndex === 1 ? undefined : params.page.pageIndex - 1;