merge: fix/ux-leaf-e-crosscut into integration/ux-28-gaps (resolve conflicts on tasks-kanban-view, tasks-list-view, task-detail-panel)

This commit is contained in:
2026-07-29 20:34:27 +00:00
9 changed files with 336 additions and 9 deletions
@@ -14,7 +14,7 @@ import { Card, CardContent } from '@/components/ui/card';
import { Badge } from '@/components/ui/badge';
import { Button } from '@/components/ui/button';
import { Input } from '@/components/ui/input';
import { Calendar, GripVertical, Link2, Loader2, Plus } from 'lucide-react';
import { Calendar, Clock, GripVertical, Link2, Loader2, Plus } from 'lucide-react';
import { toast } from 'sonner';
import { TaskDetailPanel } from './task-detail-panel';
import { useRealtimeContext } from '@/components/realtime-provider';
@@ -120,6 +120,15 @@ function TaskCard({
{new Date(task.dueDate).toLocaleDateString()}
</span>
)}
{task.estimatedMinutes && (
<span
className="flex items-center gap-1 text-xs text-muted-foreground"
title={`Estimated: ${task.estimatedMinutes}m`}
>
<Clock className="h-3 w-3" />
{task.estimatedMinutes}m
</span>
)}
{task.tags?.length > 0 && (
<div className="flex gap-1 flex-wrap">
{task.tags.slice(0, 3).map((tag) => (