feat: enhance task forms and Kanban components with dynamic priority loading

- Updated `CreateTaskForm` and `EditTaskForm` to load priority options dynamically using `getAllPriorities`, improving maintainability.
- Refactored `KanbanFilters` to utilize dynamic priority options, enhancing filter functionality.
- Modified `QuickAddTask` and `TaskCard` to display priorities using centralized configuration, ensuring consistency across the application.
- Introduced new utility functions in `status-config.ts` for managing priority configurations, streamlining the task management process.
This commit is contained in:
Julien Froidefond
2025-09-15 08:17:45 +02:00
parent e6d24f2693
commit d681a6c127
7 changed files with 104 additions and 41 deletions

View File

@@ -5,6 +5,7 @@ import { Card } from '@/components/ui/Card';
import { TagInput } from '@/components/ui/TagInput';
import { TaskStatus, TaskPriority } from '@/lib/types';
import { CreateTaskData } from '@/clients/tasks-client';
import { getAllPriorities, getPriorityConfig } from '@/lib/status-config';
interface QuickAddTaskProps {
status: TaskStatus;
@@ -136,10 +137,11 @@ export function QuickAddTask({ status, onSubmit, onCancel }: QuickAddTaskProps)
disabled={isSubmitting}
className="bg-transparent border-none outline-none text-xs font-mono text-slate-400"
>
<option value="low">L</option>
<option value="medium">M</option>
<option value="high">H</option>
<option value="urgent">U</option>
{getAllPriorities().map(priorityConfig => (
<option key={priorityConfig.key} value={priorityConfig.key}>
{priorityConfig.icon} {priorityConfig.label}
</option>
))}
</select>
</div>