@@ -105,11 +105,12 @@ import {
105105 ref ,
106106 watch ,
107107} from ' vue' ;
108+ import { filterApiService } from ' @/shared/modules/filters/services/filter-api.service' ;
108109import { memberFilters , memberSearchFilter } from ' ../config/filters/main' ;
109110import { memberSavedViews , memberStaticViews } from ' ../config/saved-views/main' ;
110- import { DEFAULT_MEMBER_FILTERS_NO_TEAM } from ' ../store/constants' ;
111111
112- const getDefaultFilters = () => ({ and: DEFAULT_MEMBER_FILTERS_NO_TEAM });
112+ const { buildApiFilter } = filterApiService ();
113+
113114const memberStore = useMemberStore ();
114115const { filters, customAttributesFilter } = storeToRefs (memberStore );
115116
@@ -136,10 +137,11 @@ const pagination = ref({
136137// Reactive state for query parameters
137138const queryParams = ref ({
138139 search: ' ' ,
139- filter: getDefaultFilters () ,
140+ filter: filters . value ,
140141 offset: 0 ,
141142 limit: 20 ,
142143 orderBy: ' activityCount_DESC' ,
144+ segments: selectedProjectGroup .value ?.id ? [selectedProjectGroup .value .id ] : [],
143145});
144146
145147// Create a computed query key for members
@@ -156,13 +158,25 @@ const {
156158 isFetching : membersFetching,
157159} = useQuery ({
158160 queryKey: membersQueryKey ,
159- queryFn : () => MemberService .listMembers ({
160- search: queryParams .value .search ,
161- filter: queryParams .value .filter ,
162- offset: queryParams .value .offset ,
163- limit: queryParams .value .limit ,
164- orderBy: queryParams .value .orderBy ,
165- }),
161+ queryFn : () => {
162+ const transformedFilter = filters .value
163+ ? buildApiFilter (
164+ filters .value ,
165+ { ... memberFilters , ... customAttributesFilter .value },
166+ memberSearchFilter ,
167+ memberSavedViews ,
168+ )
169+ : { search: ' ' , filter: {}, orderBy: ' activityCount_DESC' };
170+
171+ return MemberService .listMembers ({
172+ search: queryParams .value .search ,
173+ filter: transformedFilter .filter ,
174+ offset: queryParams .value .offset ,
175+ limit: queryParams .value .limit ,
176+ orderBy: transformedFilter .orderBy ,
177+ segments: queryParams .value .segments ,
178+ });
179+ },
166180 enabled: !! selectedProjectGroup .value ?.id ,
167181});
168182
@@ -242,10 +256,11 @@ watch(
242256 // Reset query params for new project group
243257 queryParams .value = {
244258 search: ' ' ,
245- filter: getDefaultFilters () ,
259+ filter: filters . value ,
246260 offset: 0 ,
247261 limit: pagination .value .perPage ,
248262 orderBy: ' activityCount_DESC' ,
263+ segments: newProjectGroup ? [newProjectGroup ?.id ] : [],
249264 };
250265
251266 // Invalidate all related caches
0 commit comments