"use client"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Sheet, SheetHeader, SheetPanel, SheetPopup, SheetTitle, } from "@/components/ui/sheet"; import { cn } from "@/lib/utils"; import type { Priority, Task } from "@/components/tasks/tasks-view"; const priorityVariant: Record = { high: "destructive", medium: "secondary", low: "outline", }; const priorityLabel: Record = { high: "High", medium: "Medium", low: "Low", }; // Right-side Sheet showing a single task's full detail, opened from the Tasks // list (mirrors the Patients table → PatientDetailSheet pattern). The task is // passed in directly since tasks live in local state — no async fetch. export function TaskDetailSheet({ task, open, onOpenChange, onToggle, }: { task: Task | null; open: boolean; onOpenChange: (open: boolean) => void; onToggle: (id: string) => void; }) { return ( {task?.title ?? "Task"} {task && (
{priorityLabel[task.priority]} priority
Status
{task.done ? "Completed" : "Open"}
Assignee
{task.assignee}
Due
{task.due}
{task.patient && ( <>
Patient
{task.patient}
)}
{task.notes && (
Details

{task.notes}

)}
)}
); }