fix: add active filters count to context and components
- Integrated activeFiltersCount into useTasksContext for HomePageContent and KanbanFilters. - Removed redundant activeFiltersCount calculation from KanbanFilters, leveraging the context instead for better performance and consistency.
This commit is contained in:
@@ -19,7 +19,7 @@ interface HomePageClientProps {
|
||||
|
||||
|
||||
function HomePageContent() {
|
||||
const { stats, syncing, createTask } = useTasksContext();
|
||||
const { stats, syncing, createTask, activeFiltersCount } = useTasksContext();
|
||||
const { preferences, updateViewPreferences } = useUserPreferences();
|
||||
const [isCreateModalOpen, setIsCreateModalOpen] = useState(false);
|
||||
|
||||
@@ -78,7 +78,7 @@ function HomePageContent() {
|
||||
<svg className="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 100 4m0-4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 100 4m0-4v2m0-6V4" />
|
||||
</svg>
|
||||
Filtres
|
||||
Filtres{activeFiltersCount > 0 && ` (${activeFiltersCount})`}
|
||||
</button>
|
||||
|
||||
<button
|
||||
|
||||
@@ -36,7 +36,7 @@ interface KanbanFiltersProps {
|
||||
}
|
||||
|
||||
export function KanbanFilters({ filters, onFiltersChange, hiddenStatuses: propsHiddenStatuses, onToggleStatusVisibility }: KanbanFiltersProps) {
|
||||
const { tags: availableTags, regularTasks } = useTasksContext();
|
||||
const { tags: availableTags, regularTasks, activeFiltersCount } = useTasksContext();
|
||||
const { preferences, toggleColumnVisibility } = useUserPreferences();
|
||||
|
||||
// Utiliser les props si disponibles, sinon utiliser le context
|
||||
@@ -214,15 +214,6 @@ export function KanbanFilters({ filters, onFiltersChange, hiddenStatuses: propsH
|
||||
// Vérifier s'il y a des tâches Jira dans le système (même masquées)
|
||||
const hasJiraTasks = regularTasks.some(task => task.source === 'jira');
|
||||
|
||||
const activeFiltersCount =
|
||||
(filters.tags?.filter(Boolean).length || 0) +
|
||||
(filters.priorities?.filter(Boolean).length || 0) +
|
||||
(filters.search ? 1 : 0) +
|
||||
(filters.jiraProjects?.filter(Boolean).length || 0) +
|
||||
(filters.jiraTypes?.filter(Boolean).length || 0) +
|
||||
(filters.showJiraOnly ? 1 : 0) +
|
||||
(filters.hideJiraTasks ? 1 : 0);
|
||||
|
||||
// Calculer les compteurs pour les priorités
|
||||
const priorityCounts = useMemo(() => {
|
||||
const counts: Record<string, number> = {};
|
||||
|
||||
Reference in New Issue
Block a user