keywrod library sorting issue and fitlers inclusion, adn PLAN for refactor of whole page realted

This commit is contained in:
IGNY8 VPS (Salman)
2026-01-18 16:54:07 +00:00
parent 6c69ca3feb
commit 9e88c475f7
4 changed files with 895 additions and 3 deletions

View File

@@ -2277,6 +2277,9 @@ export async function fetchSeedKeywords(filters?: {
search?: string;
page?: number;
page_size?: number;
ordering?: string;
difficulty_min?: number;
difficulty_max?: number;
}): Promise<SeedKeywordResponse> {
const params = new URLSearchParams();
// Use industry_id and sector_id as per backend get_queryset, but also try industry/sector for filterset_fields
@@ -2292,6 +2295,11 @@ export async function fetchSeedKeywords(filters?: {
if (filters?.search) params.append('search', filters.search);
if (filters?.page) params.append('page', filters.page.toString());
if (filters?.page_size) params.append('page_size', filters.page_size.toString());
// Server-side sorting - critical for proper pagination
if (filters?.ordering) params.append('ordering', filters.ordering);
// Difficulty range filtering
if (filters?.difficulty_min !== undefined) params.append('difficulty_min', filters.difficulty_min.toString());
if (filters?.difficulty_max !== undefined) params.append('difficulty_max', filters.difficulty_max.toString());
const queryString = params.toString();
return fetchAPI(`/v1/auth/seed-keywords/${queryString ? `?${queryString}` : ''}`);