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 5eb29310..d1e33087 100644 --- a/worklenz-frontend/src/components/task-management/improved-task-filters.tsx +++ b/worklenz-frontend/src/components/task-management/improved-task-filters.tsx @@ -748,6 +748,23 @@ const ImprovedTaskFilters: React.FC = ({ dispatch(setBoardSearch('')); } + // Clear label filters + const clearedLabels = currentTaskLabels.map(label => ({ + ...label, + selected: false + })); + dispatch(setLabels(clearedLabels)); + + // Clear assignee filters + const clearedAssignees = currentTaskAssignees.map(member => ({ + ...member, + selected: false + })); + dispatch(setMembers(clearedAssignees)); + + // Clear priority filters + dispatch(setSelectedPriorities([])); + // Clear other filters setShowArchived(false); @@ -755,7 +772,7 @@ const ImprovedTaskFilters: React.FC = ({ dispatch(fetchTasksV3(projectId)); console.log('Clear all filters'); - }, [projectId, projectView, dispatch]); + }, [projectId, projectView, dispatch, currentTaskLabels, currentTaskAssignees]); const toggleArchived = useCallback(() => { setShowArchived(!showArchived); 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 706c75d5..5f9d177e 100644 --- a/worklenz-frontend/src/features/task-management/task-management.slice.ts +++ b/worklenz-frontend/src/features/task-management/task-management.slice.ts @@ -141,17 +141,17 @@ export const fetchTasksV3 = createAsyncThunk( // Get selected labels from taskReducer const selectedLabels = state.taskReducer.labels - ? state.taskReducer.labels.filter(l => l.selected).map(l => l.id).join(',') + ? state.taskReducer.labels.filter(l => l.selected).map(l => l.id).join(' ') : ''; // Get selected assignees from taskReducer const selectedAssignees = state.taskReducer.taskAssignees - ? state.taskReducer.taskAssignees.filter(m => m.selected).map(m => m.id).join(',') + ? 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(',') + ? state.taskManagement.selectedPriorities.join(' ') : ''; // Get search value from taskReducer