diff --git a/components/flow.tsx b/components/flow.tsx index f306a6e..90320df 100644 --- a/components/flow.tsx +++ b/components/flow.tsx @@ -175,15 +175,21 @@ export function Duties() { const filteredTasks = allTasks.filter((task: Task) => { // Exclude tasks with status Done (5) - check both number and string formats - const taskStatus = typeof task.status === 'string' ? parseInt(task.status, 10) : task.status; - if (taskStatus === 5 || task.status === '5' || task.status === 'Done' || task.status === 'done' || task.status === 'DONE') { - console.log('[Devoirs Widget] Filtering out done task:', { - id: task.id, - headline: task.headline, - status: task.status, - taskStatus, - }); - return false; + const rawStatus = (task as any).status; // Use any to handle potential string/number mismatch + if (rawStatus === null || rawStatus === undefined) { + // If status is null/undefined, keep the task (let other filters handle it) + } else { + const taskStatus = typeof rawStatus === 'string' ? parseInt(rawStatus, 10) : rawStatus; + const statusStr = typeof rawStatus === 'string' ? rawStatus.toLowerCase() : String(rawStatus).toLowerCase(); + if (taskStatus === 5 || statusStr === '5' || statusStr === 'done') { + console.log('[Devoirs Widget] Filtering out done task:', { + id: task.id, + headline: task.headline, + status: rawStatus, + taskStatus, + }); + return false; + } } const dueDate = getValidDate(task);