"use client"; import {Trash2} from "lucide-react"; import {ButtonWithConfirm} from "@/components/common/button-with-confirm"; import {useMutation} from "@tanstack/react-query"; import {useRouter} from "next/navigation"; import {toast} from "sonner"; import {deleteAgentAction} from "@/features/agents/actions/agent-delete.action"; import {useIsMobile} from "@/hooks/use-mobile"; export type ButtonDeleteAgentProps = { text?: string, agentId: string, organizationId?: string organizationIds?: string[] }; export const ButtonDeleteAgent = (props: ButtonDeleteAgentProps) => { const router = useRouter(); const isMobile = useIsMobile(); const mutation = useMutation({ mutationFn: () => deleteAgentAction({agentId: props.agentId, organizationId: props.organizationId, organizationIds: props.organizationIds}), onSuccess: async (result: any) => { if (result.data?.success) { toast.success(result.data.actionSuccess.message); router.push(props.organizationId ? "/dashboard/settings?tab=agents" : "/dashboard/agents"); } else { toast.error(result.data.actionError.message || "Unknown error occurred."); } }, }); return ( , }, confirm: { className: "w-full", text: "Delete", icon: , variant: "destructive", onClick: () => { mutation.mutate(); }, }, cancel: { className: "w-full", text: "Cancel", icon: , variant: "outline", }, }} isPending={mutation.isPending} /> ); };