'use client' import * as React from 'react' import { useRouter } from 'next/navigation' import { toast } from 'react-hot-toast' import { ServerActionResult } from '@/lib/types' import { Button } from '@/components/ui/button' import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger } from '@/components/ui/alert-dialog' import { IconSpinner, IconClear } from '@/components/ui/icons' interface ClearHistoryProps { clearChats: () => ServerActionResult } export function ClearHistory({ clearChats }: ClearHistoryProps) { const [open, setOpen] = React.useState(false) const [isPending, startTransition] = React.useTransition() const router = useRouter() return ( Are you absolutely sure? This will permanently delete your chat history and remove your data from our servers. Cancel { event.preventDefault() startTransition(async () => { const result = await clearChats() if (result && 'error' in result) { toast.error(result.error) return } setOpen(false) router.push('/') }) }} > {isPending && } Delete ) }