"use client"; import { useState } from "react"; import { useRouter } from "next/navigation"; import { Button, Icon, Modal } from "./ui"; import { useTranslation } from "@/lib/i18n/context"; export function DeleteSeriesButton({ libraryId, seriesName }: { libraryId: string; seriesName: string }) { const { t } = useTranslation(); const router = useRouter(); const [showConfirm, setShowConfirm] = useState(false); const [deleting, setDeleting] = useState(false); async function handleDelete() { setDeleting(true); setShowConfirm(false); try { const resp = await fetch( `/api/libraries/${libraryId}/series/${encodeURIComponent(seriesName)}`, { method: "DELETE" } ); if (resp.ok) { router.push(`/libraries/${libraryId}/series`); } } finally { setDeleting(false); } } return ( <> setShowConfirm(true)} disabled={deleting} className="inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg border border-destructive/30 bg-destructive/10 text-destructive text-sm font-medium hover:bg-destructive/20 transition-colors disabled:opacity-50" > {deleting ? : } {t("seriesDetail.delete")} setShowConfirm(false)} maxWidth="sm"> {t("seriesDetail.delete")} {t("seriesDetail.confirmDelete")} setShowConfirm(false)}> {t("common.cancel")} {t("seriesDetail.delete")} > ); }
{t("seriesDetail.confirmDelete")}