"use client"; import { StickyNote } from "lucide-react"; import { cn } from "@/lib/utils"; import { Checkbox } from "@/components/ui/checkbox"; import { MouseFollowTooltip } from "@/components/board/mouse-follow-tooltip"; import type { ScheduledOccurrenceDTO } from "@/types/scheduled-todo"; /** One occurrence row -- "emphasis" is how loud this date's section reads * (Overdue/Today get their own text treatment; every other day relies on * ScheduledPanel fading its whole section via opacity instead). */ export function ScheduledTodoItem({ occurrence, emphasis = "normal", onToggle, onEdit, }: { occurrence: ScheduledOccurrenceDTO; emphasis?: "overdue" | "today" | "normal"; onToggle: (completed: boolean) => void; onEdit: () => void; }) { const titleButton = ( ); return (
  • onToggle(!!checked)} className="mt-0.5" aria-label={`Mark "${occurrence.title}" ${occurrence.completed ? "incomplete" : "complete"}`} /> {occurrence.details ? ( {titleButton} ) : ( titleButton )} {occurrence.details && ( )}
  • ); }