From 886ec45b7e0ae359a1ad348184d73fcf0b54dbde Mon Sep 17 00:00:00 2001 From: Delirium Date: Wed, 27 Mar 2024 16:16:36 +0100 Subject: [PATCH] fix ui reset filters on site id change (#2004) --- .../shared/MainSearchBar/MainSearchBar.tsx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx b/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx index 1a71e0489..14916650e 100644 --- a/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx +++ b/frontend/app/components/shared/MainSearchBar/MainSearchBar.tsx @@ -11,10 +11,12 @@ interface Props { clearSearch: () => void; appliedFilter: any; savedSearch: any; + site: any; } const MainSearchBar = (props: Props) => { - const { appliedFilter } = props; + const { appliedFilter, site } = props; + const currSite = React.useRef(site) const hasFilters = appliedFilter && appliedFilter.filters && appliedFilter.filters.size > 0; const hasSavedSearch = props.savedSearch && props.savedSearch.exists(); const hasSearch = hasFilters || hasSavedSearch; @@ -22,6 +24,14 @@ const MainSearchBar = (props: Props) => { // @ts-ignore const originStr = window.env.ORIGIN || window.location.origin; const isSaas = /app\.openreplay\.com/.test(originStr); + + React.useEffect(() => { + if (site !== currSite.current && currSite.current !== undefined) { + console.debug('clearing filters due to project change') + props.clearSearch(); + currSite.current = site + } + }, [site]) return (
@@ -47,6 +57,7 @@ export default connect( (state: any) => ({ appliedFilter: state.getIn(['search', 'instance']), savedSearch: state.getIn(['search', 'savedSearch']), + site: state.getIn(['site', 'siteId']), }), { clearSearch,