From d1959dd0e2673aa1634b143f7466c0475d6e2d66 Mon Sep 17 00:00:00 2001 From: Mateusz Kwasniewski Date: Thu, 18 Jul 2024 14:52:27 +0200 Subject: [PATCH] feat: filter project flags by state (#7618) --- .../ProjectFeatureToggles.tsx | 1 + .../ProjectOverviewFilters.tsx | 19 +++++++++++++++++++ .../useProjectFeatureSearch.ts | 1 + .../ProjectHealth/ProjectHealth.tsx | 4 +++- 4 files changed, 24 insertions(+), 1 deletion(-) diff --git a/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectFeatureToggles.tsx b/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectFeatureToggles.tsx index a8614781bf..7039d3a9b6 100644 --- a/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectFeatureToggles.tsx +++ b/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectFeatureToggles.tsx @@ -75,6 +75,7 @@ export const ProjectFeatureToggles = ({ tag: tableState.tag, createdAt: tableState.createdAt, type: tableState.type, + state: tableState.state, ...(flagCreatorEnabled ? { createdBy: tableState.createdBy } : {}), }; diff --git a/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectOverviewFilters.tsx b/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectOverviewFilters.tsx index 3b0354c5b6..9b024f09f9 100644 --- a/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectOverviewFilters.tsx +++ b/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/ProjectOverviewFilters.tsx @@ -35,7 +35,26 @@ export const ProjectOverviewFilters: VFC = ({ value: String(creator.id), })); + const stateOptions = [ + { + label: 'Active', + value: 'active', + }, + { + label: 'Stale', + value: 'stale', + }, + ]; + const availableFilters: IFilterItem[] = [ + { + label: 'State', + icon: 'hexagon', + options: stateOptions, + filterKey: 'state', + singularOperators: ['IS', 'IS_NOT'], + pluralOperators: ['IS_ANY_OF', 'IS_NONE_OF'], + }, { label: 'Tags', icon: 'label', diff --git a/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/useProjectFeatureSearch.ts b/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/useProjectFeatureSearch.ts index 0b646081b0..d3fc4316d0 100644 --- a/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/useProjectFeatureSearch.ts +++ b/frontend/src/component/project/Project/PaginatedProjectFeatureToggles/useProjectFeatureSearch.ts @@ -37,6 +37,7 @@ export const useProjectFeatureSearch = ( sortOrder: withDefault(StringParam, 'desc'), columns: ArrayParam, tag: FilterItemParam, + state: FilterItemParam, createdAt: FilterItemParam, type: FilterItemParam, ...(flagCreatorEnabled ? { createdBy: FilterItemParam } : {}), diff --git a/frontend/src/component/project/Project/ProjectInsights/ProjectHealth/ProjectHealth.tsx b/frontend/src/component/project/Project/ProjectInsights/ProjectHealth/ProjectHealth.tsx index 5eea1e63b4..6b15b4ea96 100644 --- a/frontend/src/component/project/Project/ProjectInsights/ProjectHealth/ProjectHealth.tsx +++ b/frontend/src/component/project/Project/ProjectInsights/ProjectHealth/ProjectHealth.tsx @@ -97,7 +97,9 @@ export const ProjectHealth: FC<{ health: ProjectInsightsSchemaHealth }> = ({ Stale - + (view flags)