"use client"; import {BackupWith} from "@/db/schema/07_database"; import {useBackupModal} from "@/features/database/components/backup-modal-context"; import {Button} from "@/components/ui/button"; import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator } from "@/components/ui/dropdown-menu"; import {MoreHorizontal, Trash2, Download} from "lucide-react"; import {ReloadIcon} from "@radix-ui/react-icons"; import {cn} from "@/lib/utils"; import {MemberWithUser} from "@/db/schema/03_organization"; import {TooltipCustom} from "@/components/common/tooltip-custom"; interface DatabaseActionsCellProps { backup: BackupWith; activeMember: MemberWithUser; isAlreadyRestore: boolean; isBackupOnly: boolean; } export function DatabaseActionsCell({backup, activeMember, isAlreadyRestore, isBackupOnly}: DatabaseActionsCellProps) { const {openModal} = useBackupModal(); if (backup.deletedAt || activeMember.role === "member") return null; return (
Actions {backup.status == "success" ? ( <> {!isBackupOnly && ( openModal("restore", backup)} > Restore )} openModal("download", backup)} > Download ) : null} openModal("delete", backup)} className="text-red-600"> Delete
); }