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:
pradeepkumar
2026-02-01 18:30:21 +05:30
parent 09cf44f418
commit 58a1918fa8
2 changed files with 17 additions and 1 deletions

View File

@@ -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;