diff --git a/frontend/app/components/shared/Filters/FilterAutoComplete/FilterAutoComplete.tsx b/frontend/app/components/shared/Filters/FilterAutoComplete/FilterAutoComplete.tsx index f1ac440d3..8e00bcfea 100644 --- a/frontend/app/components/shared/Filters/FilterAutoComplete/FilterAutoComplete.tsx +++ b/frontend/app/components/shared/Filters/FilterAutoComplete/FilterAutoComplete.tsx @@ -60,11 +60,16 @@ const FilterAutoComplete = observer( ); const [initialFocus, setInitialFocus] = useState(false); const [loading, setLoading] = useState(false); - const { filterStore } = useStore(); + const { filterStore, projectsStore } = useStore(); const _params = processKey(params); const filterKey = `${_params.type}${_params.key || ''}`; const topValues = filterStore.topValues[filterKey] || []; + React.useEffect(() => { + filterStore.resetValues() + setOptions([]) + }, [projectsStore.siteId]) + const loadTopValues = async () => { setLoading(true) await filterStore.fetchTopValues(_params.type, _params.key); diff --git a/frontend/app/mstore/filterStore.ts b/frontend/app/mstore/filterStore.ts index 0af2be151..eca477c79 100644 --- a/frontend/app/mstore/filterStore.ts +++ b/frontend/app/mstore/filterStore.ts @@ -23,6 +23,10 @@ export default class FilterStore { this.topValues[key] = vals?.filter((value) => value !== null && value.value !== ''); }; + resetValues = () => { + this.topValues = {}; + } + fetchTopValues = async (key: string, source?: string) => { if (this.topValues.hasOwnProperty(key)) { return Promise.resolve(this.topValues[key]);