From 423d7cdc8b866d58b4385ce5f0e7c723dea3f464 Mon Sep 17 00:00:00 2001 From: Patryk Andrzejewski Date: Fri, 21 Jul 2023 15:19:15 +0200 Subject: [PATCH] Fix state triggering for filters (#3973) --- .../ConditionalFilter/ValueProvider/useUrlValueProvider.ts | 4 +++- src/components/ConditionalFilter/useContainerState.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/ConditionalFilter/ValueProvider/useUrlValueProvider.ts b/src/components/ConditionalFilter/ValueProvider/useUrlValueProvider.ts index c0d9b6ffb..d26f36fbc 100644 --- a/src/components/ConditionalFilter/ValueProvider/useUrlValueProvider.ts +++ b/src/components/ConditionalFilter/ValueProvider/useUrlValueProvider.ts @@ -41,8 +41,10 @@ export const useUrlValueProvider = ( }, []); useEffect(() => { + if (loading) return + setValue(tokenizedUrl.asFilterValuesFromResponse(data)); - }, [data]); + }, [data, loading]); const persist = (filterValue: FilterContainer) => { router.history.replace({ diff --git a/src/components/ConditionalFilter/useContainerState.ts b/src/components/ConditionalFilter/useContainerState.ts index 60bfe74eb..0c1af7356 100644 --- a/src/components/ConditionalFilter/useContainerState.ts +++ b/src/components/ConditionalFilter/useContainerState.ts @@ -56,7 +56,7 @@ export const useContainerState = (valueProvider: FilterValueProvider) => { if (!valueProvider.loading) { setValue(valueProvider.value); } - }, [valueProvider.loading]); + }, [valueProvider.loading, valueProvider.value]); const isFilterElementAtIndex = ( elIndex: number,