fix: (backport) filters not persisting in response page (#6863)

This commit is contained in:
Dhruwang Jariwala
2025-11-20 20:45:03 +05:30
committed by GitHub
parent 2f4fa9e3cc
commit c585c83dbc

View File

@@ -96,14 +96,21 @@ export const ResponsePage = ({
}
}, [searchParams, resetState]);
// Only fetch if filters are applied (not on initial mount with no filters)
const hasFilters =
selectedFilter?.responseStatus !== "all" ||
(selectedFilter?.filter && selectedFilter.filter.length > 0) ||
(dateRange.from && dateRange.to);
useEffect(() => {
const fetchFilteredResponses = async () => {
try {
// skip call for initial mount
if (page === null) {
if (page === null && !hasFilters) {
setPage(1);
return;
}
setPage(1);
setIsFetchingFirstPage(true);
let responses: TResponseWithQuotas[] = [];
@@ -126,15 +133,7 @@ export const ResponsePage = ({
setIsFetchingFirstPage(false);
}
};
// Only fetch if filters are applied (not on initial mount with no filters)
const hasFilters =
(selectedFilter && Object.keys(selectedFilter).length > 0) ||
(dateRange && (dateRange.from || dateRange.to));
if (hasFilters) {
fetchFilteredResponses();
}
fetchFilteredResponses();
}, [filters, responsesPerPage, selectedFilter, dateRange, surveyId]);
return (