diff --git a/frontend/src/helpers/filters.test.ts b/frontend/src/helpers/filters.test.ts index 8c3267755..3804c8a8e 100644 --- a/frontend/src/helpers/filters.test.ts +++ b/frontend/src/helpers/filters.test.ts @@ -137,6 +137,16 @@ describe('Filter Transformation', () => { expect(transformed).toBe('labels in 2 || labels in l') }) + + it('should correctly transform the cases of fields', () => { + const transformed = transformFilterStringForApi( + 'startdate > now', + nullTitleToIdResolver, + nullTitleToIdResolver, + ) + + expect(transformed).toBe('start_date > now') + }) }) describe('To API', () => { diff --git a/frontend/src/helpers/filters.ts b/frontend/src/helpers/filters.ts index 587d260c6..029d3536b 100644 --- a/frontend/src/helpers/filters.ts +++ b/frontend/src/helpers/filters.ts @@ -66,10 +66,16 @@ export function transformFilterStringForApi( labelResolver: (title: string) => number | null, projectResolver: (title: string) => number | null, ): string { + + filter = filter.trim() - if (filter.trim() === '') { + if (filter === '') { return '' } + + AVAILABLE_FILTER_FIELDS.forEach(f => { + filter = filter.replace(new RegExp(f, 'ig'), f) + }) // Transform labels to ids LABEL_FIELDS.forEach(field => {