feat(tasks): implement V3 API for task management and enhance UI components

- Introduced `getTasksV3` and `refreshTaskProgress` methods in `TasksControllerV2` to optimize task retrieval and progress refreshing.
- Updated API routes to include new endpoints for V3 task management.
- Enhanced frontend components to utilize the new V3 API, improving performance by reducing frontend processing.
- Added `VirtualizedTaskList` and `VirtualizedTaskGroup` components for efficient rendering of task lists.
- Updated task management slice to support new V3 data structure and improved state management.
- Refactored styles for better dark mode support and overall UI consistency.
This commit is contained in:
chamikaJ
2025-06-23 16:34:57 +05:30
parent 687fff9c74
commit 2dd756bbb8
15 changed files with 1473 additions and 384 deletions

View File

@@ -31,7 +31,6 @@ const GROUP_COLORS = {
done: '#52c41a',
},
priority: {
critical: '#ff4d4f',
high: '#fa8c16',
medium: '#faad14',
low: '#52c41a',
@@ -63,6 +62,9 @@ const TaskGroup: React.FC<TaskGroupProps> = React.memo(({
// Get all tasks from the store
const allTasks = useSelector(taskManagementSelectors.selectAll);
// Get theme from Redux store
const isDarkMode = useSelector((state: RootState) => state.themeReducer?.mode === 'dark');
// Get tasks for this group using memoization for performance
const groupTasks = useMemo(() => {
return group.taskIds
@@ -112,8 +114,10 @@ const TaskGroup: React.FC<TaskGroupProps> = React.memo(({
// Memoized style object
const containerStyle = useMemo(() => ({
backgroundColor: isOver ? '#f0f8ff' : undefined,
}), [isOver]);
backgroundColor: isOver
? (isDarkMode ? '#1a2332' : '#f0f8ff')
: undefined,
}), [isOver, isDarkMode]);
return (
<div