import { useState } from 'react'; import { useNavigate, useParams } from 'react-router-dom'; import { AlertTriangle, Info } from 'lucide-react'; import { useBuckets, useDeleteBucket } from '@/hooks/useApi'; import { Button } from '@/components/ui/button'; import { Badge } from '@/components/ui/badge'; import { EmptyState } from '@/components/ui/empty-state'; import { DangerousConfirmDialog } from '@/components/ui/dangerous-confirm-dialog'; import { formatBytes } from '@/lib/file-utils'; import { formatDate as formatDateUtil } from '@/lib/utils'; const formatBytesOrDash = (n?: number) => (n == null ? '—' : formatBytes(n)); const formatDateOrDash = (iso?: string) => (iso ? formatDateUtil(iso) : '—'); export function BucketSettings() { const { bucketName = '' } = useParams<{ bucketName: string }>(); const navigate = useNavigate(); const { data: buckets = [], isLoading } = useBuckets(); const bucket = buckets.find((b) => b.name === bucketName); const deleteMutation = useDeleteBucket(); const [deleteOpen, setDeleteOpen] = useState(false); const [deleting, setDeleting] = useState(false); if (isLoading) { return
Destructive actions for this bucket.