feat: Implement dynamic filtering for agent search by adding a filters parameter to the search service and utilizing it in the profiles page.
This commit is contained in:
@@ -80,6 +80,7 @@ export interface SearchAgentsParams {
|
||||
limit?: number;
|
||||
sortBy?: 'createdAt' | 'averageRating' | 'totalReviews' | 'firstName';
|
||||
sortOrder?: 'asc' | 'desc';
|
||||
filters?: Record<string, string[]>;
|
||||
}
|
||||
|
||||
// Public agent listing response
|
||||
@@ -173,6 +174,9 @@ class AgentsService {
|
||||
if (params.limit) queryParams.set('limit', String(params.limit));
|
||||
if (params.sortBy) queryParams.set('sortBy', params.sortBy);
|
||||
if (params.sortOrder) queryParams.set('sortOrder', params.sortOrder);
|
||||
if (params.filters && Object.keys(params.filters).length > 0) {
|
||||
queryParams.set('filters', JSON.stringify(params.filters));
|
||||
}
|
||||
|
||||
const queryString = queryParams.toString();
|
||||
const url = queryString ? `${this.basePath}?${queryString}` : this.basePath;
|
||||
|
||||
Reference in New Issue
Block a user