refacto: passing by server actions on taskCard

This commit is contained in:
Julien Froidefond
2025-09-18 09:37:46 +02:00
parent 228e1563c6
commit 4a4eb9c8ad
15 changed files with 286 additions and 330 deletions

View File

@@ -21,9 +21,7 @@ import { useDroppable } from '@dnd-kit/core';
interface ObjectivesBoardProps {
tasks: Task[];
onDeleteTask?: (taskId: string) => Promise<void>;
onEditTask?: (task: Task) => void;
onUpdateTitle?: (taskId: string, newTitle: string) => Promise<void>;
onUpdateStatus?: (taskId: string, newStatus: TaskStatus) => Promise<void>;
compactView?: boolean;
pinnedTagName?: string;
@@ -36,9 +34,7 @@ function DroppableColumn({
title,
color,
icon,
onDeleteTask,
onEditTask,
onUpdateTitle,
compactView
}: {
status: TaskStatus;
@@ -46,9 +42,7 @@ function DroppableColumn({
title: string;
color: string;
icon: string;
onDeleteTask?: (taskId: string) => Promise<void>;
onEditTask?: (task: Task) => void;
onUpdateTitle?: (taskId: string, newTitle: string) => Promise<void>;
compactView: boolean;
}) {
const { setNodeRef } = useDroppable({
@@ -80,9 +74,7 @@ function DroppableColumn({
<div key={task.id} className="transform hover:scale-[1.02] transition-transform duration-200">
<TaskCard
task={task}
onDelete={onDeleteTask}
onEdit={onEditTask}
onUpdateTitle={onUpdateTitle}
compactView={compactView}
/>
</div>
@@ -96,9 +88,7 @@ function DroppableColumn({
export function ObjectivesBoard({
tasks,
onDeleteTask,
onEditTask,
onUpdateTitle,
onUpdateStatus,
compactView = false,
pinnedTagName = "Objectifs"
@@ -209,9 +199,7 @@ export function ObjectivesBoard({
title="À faire"
color="bg-[var(--primary)]"
icon="📋"
onDeleteTask={onDeleteTask}
onEditTask={onEditTask}
onUpdateTitle={onUpdateTitle}
compactView={compactView}
/>
@@ -221,9 +209,7 @@ export function ObjectivesBoard({
title="En cours"
color="bg-yellow-400"
icon="🔄"
onDeleteTask={onDeleteTask}
onEditTask={onEditTask}
onUpdateTitle={onUpdateTitle}
compactView={compactView}
/>
@@ -233,9 +219,7 @@ export function ObjectivesBoard({
title="Terminé"
color="bg-green-400"
icon="✅"
onDeleteTask={onDeleteTask}
onEditTask={onEditTask}
onUpdateTitle={onUpdateTitle}
compactView={compactView}
/>
</div>
@@ -267,9 +251,7 @@ export function ObjectivesBoard({
<div className="rotate-3 opacity-90">
<TaskCard
task={activeTask}
onDelete={undefined}
onEdit={undefined}
onUpdateTitle={undefined}
compactView={compactView}
/>
</div>