From 4c34a017295b7fe6fda16576abb476f79db668c9 Mon Sep 17 00:00:00 2001 From: chamiakJ Date: Wed, 25 Jun 2025 23:51:59 +0530 Subject: [PATCH] refactor(task-filters): update priority handling in task filters - Replaced the use of selectedPriorities from taskManagement slice with priorities from taskReducer for consistency across the application. - Updated dispatch calls in ImprovedTaskFilters to utilize the new setPriorities action, enhancing clarity and maintainability. - Removed unnecessary imports and streamlined the selector logic for improved performance and readability. --- .../task-management/improved-task-filters.tsx | 14 ++++++-------- .../task-management/task-management.slice.ts | 6 +++--- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/worklenz-frontend/src/components/task-management/improved-task-filters.tsx b/worklenz-frontend/src/components/task-management/improved-task-filters.tsx index d1e33087..716de798 100644 --- a/worklenz-frontend/src/components/task-management/improved-task-filters.tsx +++ b/worklenz-frontend/src/components/task-management/improved-task-filters.tsx @@ -23,9 +23,9 @@ import { useFilterDataLoader } from '@/hooks/useFilterDataLoader'; import { toggleField } from '@/features/task-management/taskListFields.slice'; // Import Redux actions -import { fetchTasksV3, setSelectedPriorities, setSearch as setTaskManagementSearch } from '@/features/task-management/task-management.slice'; +import { fetchTasksV3, setSearch as setTaskManagementSearch } from '@/features/task-management/task-management.slice'; import { setCurrentGrouping, selectCurrentGrouping } from '@/features/task-management/grouping.slice'; -import { setMembers, setLabels, setSearch } from '@/features/tasks/tasks.slice'; +import { setMembers, setLabels, setSearch, setPriorities } from '@/features/tasks/tasks.slice'; import { setBoardSearch } from '@/features/board/board-slice'; // Optimized selectors with proper transformation logic @@ -39,7 +39,6 @@ const selectFilterData = createSelector( (state: any) => state.taskReducer.taskAssignees, (state: any) => state.boardReducer.taskAssignees, (state: any) => state.projectReducer.project, - (state: any) => state.taskManagement.selectedPriorities, ], ( priorities, @@ -49,8 +48,7 @@ const selectFilterData = createSelector( boardLabels, taskAssignees, boardAssignees, - project, - selectedPriorities + project ) => ({ priorities: priorities || [], taskPriorities: taskPriorities || [], @@ -60,7 +58,7 @@ const selectFilterData = createSelector( taskAssignees: taskAssignees || [], boardAssignees: boardAssignees || [], project, - selectedPriorities: selectedPriorities || [], + selectedPriorities: taskPriorities || [], // Use taskReducer.priorities as selected priorities }) ); @@ -687,7 +685,7 @@ const ImprovedTaskFilters: React.FC = ({ // Handle priorities if (sectionId === 'priority') { console.log('Priority selection changed:', { sectionId, values, projectId }); - dispatch(setSelectedPriorities(values)); + dispatch(setPriorities(values)); dispatch(fetchTasksV3(projectId)); return; } @@ -763,7 +761,7 @@ const ImprovedTaskFilters: React.FC = ({ dispatch(setMembers(clearedAssignees)); // Clear priority filters - dispatch(setSelectedPriorities([])); + dispatch(setPriorities([])); // Clear other filters setShowArchived(false); diff --git a/worklenz-frontend/src/features/task-management/task-management.slice.ts b/worklenz-frontend/src/features/task-management/task-management.slice.ts index 5f9d177e..493b6473 100644 --- a/worklenz-frontend/src/features/task-management/task-management.slice.ts +++ b/worklenz-frontend/src/features/task-management/task-management.slice.ts @@ -149,9 +149,9 @@ export const fetchTasksV3 = createAsyncThunk( ? state.taskReducer.taskAssignees.filter(m => m.selected).map(m => m.id).join(' ') : ''; - // Get selected priorities from taskManagement slice - const selectedPriorities = state.taskManagement.selectedPriorities - ? state.taskManagement.selectedPriorities.join(' ') + // Get selected priorities from taskReducer (consistent with other slices) + const selectedPriorities = state.taskReducer.priorities + ? state.taskReducer.priorities.join(' ') : ''; // Get search value from taskReducer