From ce28968a118d42069b325a887eab4eae2d532cc5 Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Tue, 19 Jan 2021 10:06:08 -0500 Subject: [PATCH] reset page to 1 after activity stream type changes --- .../screens/ActivityStream/ActivityStream.jsx | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/awx/ui_next/src/screens/ActivityStream/ActivityStream.jsx b/awx/ui_next/src/screens/ActivityStream/ActivityStream.jsx index 6d9227e8b5..bd36e33821 100644 --- a/awx/ui_next/src/screens/ActivityStream/ActivityStream.jsx +++ b/awx/ui_next/src/screens/ActivityStream/ActivityStream.jsx @@ -18,7 +18,12 @@ import PaginatedTable, { HeaderCell, } from '../../components/PaginatedTable'; import useRequest from '../../util/useRequest'; -import { getQSConfig, parseQueryString } from '../../util/qs'; +import { + getQSConfig, + parseQueryString, + replaceParams, + encodeNonDefaultQueryString, +} from '../../util/qs'; import { ActivityStreamAPI } from '../../api'; import ActivityStreamListItem from './ActivityStreamListItem'; @@ -89,6 +94,19 @@ function ActivityStream({ i18n }) { fetchActivityStream(); }, [fetchActivityStream]); + const pushHistoryState = urlParams => { + let searchParams = parseQueryString(QS_CONFIG, location.search); + searchParams = replaceParams(searchParams, { page: 1 }); + const encodedParams = encodeNonDefaultQueryString(QS_CONFIG, searchParams, { + type: urlParams.get('type'), + }); + history.push( + encodedParams + ? `${location.pathname}?${encodedParams}` + : location.pathname + ); + }; + return (