feat(localization): add new translation keys for task management

- Updated localization JSON files for Albanian, German, English, Spanish, Portuguese, and Chinese to include new keys for managing statuses and phases.
- Enhanced existing translations for clarity and consistency across multiple languages.
- Ensured that new keys align with recent UI changes to improve user experience in task management features.
This commit is contained in:
chamiakJ
2025-07-10 16:25:13 +05:30
parent f846230d59
commit 857b48e225
13 changed files with 78 additions and 21 deletions

View File

@@ -4,6 +4,7 @@ import { useAppSelector } from '@/hooks/useAppSelector';
import { fetchPriorities } from '@/features/taskAttributes/taskPrioritySlice';
import { fetchLabelsByProject, fetchTaskAssignees } from '@/features/tasks/tasks.slice';
import { getTeamMembers } from '@/features/team-members/team-members.slice';
import { fetchStatuses } from '@/features/taskAttributes/taskStatusSlice';
/**
* Hook to manage filter data loading independently of main task list loading
@@ -15,6 +16,9 @@ export const useFilterDataLoader = () => {
// Memoize the priorities selector to prevent unnecessary re-renders
const priorities = useAppSelector(state => state.priorityReducer.priorities);
// Memoize the statuses selector to prevent unnecessary re-renders
const statuses = useAppSelector(state => state.taskStatusReducer.status);
// Memoize the projectId selector to prevent unnecessary re-renders
const projectId = useAppSelector(state => state.projectReducer.projectId);
@@ -32,6 +36,11 @@ export const useFilterDataLoader = () => {
// They will update the UI when ready, but won't block initial render
dispatch(fetchLabelsByProject(projectId));
dispatch(fetchTaskAssignees(projectId));
// Load statuses if not already loaded
if (!statuses.length) {
dispatch(fetchStatuses(projectId));
}
}
// Load team members for member filters
@@ -49,7 +58,7 @@ export const useFilterDataLoader = () => {
console.error('Error loading filter data:', error);
// Don't throw - filter loading errors shouldn't break the main UI
}
}, [dispatch, priorities.length, projectId]);
}, [dispatch, priorities.length, statuses.length, projectId]);
// Load filter data on mount and when dependencies change
useEffect(() => {