import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from "@/components/ui/alert-dialog"; interface StreamingConfirmDialogProps { open: boolean; onOpenChange: (open: boolean) => void; title: string; description?: string; confirmLabel?: string; cancelLabel?: string; onConfirm: () => void; confirmDisabled?: boolean; cancelDisabled?: boolean; confirmLoading?: boolean; } export function StreamingConfirmDialog({ open, onOpenChange, title, description = "The current conversation is still generating a response. This action will truncate the output. Are you sure you want to continue?", confirmLabel = "Continue", cancelLabel = "Cancel", onConfirm, confirmDisabled = false, cancelDisabled = false, confirmLoading = false, }: StreamingConfirmDialogProps) { return ( {title} {description} onOpenChange(false)} disabled={cancelDisabled}> {cancelLabel} {confirmLoading ? `${confirmLabel}…` : confirmLabel} ); }