"use client"; import type React from "react"; import { AlertCircle, Check, GripVertical, Loader2 } from "lucide-react"; import { useSortable } from "@dnd-kit/sortable"; import { CSS } from "@dnd-kit/utilities"; import { Button } from "@/components/ui/button"; import type { AutoSaveStatus } from "@/hooks/use-debounced-autosave"; export function SaveStatusIndicator({ status, error, onRetry, }: { status: AutoSaveStatus; error: string | null; onRetry: () => Promise; }) { if (status === "clean") return null; return ( {status === "dirty" && "Unsaved"} {status === "saving" && ( <> Saving )} {status === "saved" && ( <> Saved )} {status === "error" && ( <> {error || "Could not save."} )} ); } export function SortableQuestion({ id, position, children, }: { id: string; position: number; children: React.ReactNode; }) { const { attributes, listeners, setNodeRef, transform, transition, isDragging, } = useSortable({ id }); return (
{children}
); }