diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/components/ResponsePage.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/components/ResponsePage.tsx index 3529d4dad3..c82f365a61 100644 --- a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/components/ResponsePage.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/components/ResponsePage.tsx @@ -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 (