import { ColumnDef } from '@tanstack/react-table'; import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, } from '@/components/ui/dialog'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger } from '@/components/ui/dropdown-menu'; import { Button } from '@/components/ui/button'; import { useForm } from '@inertiajs/react'; import { LoaderCircleIcon, MoreVerticalIcon } from 'lucide-react'; import FormSuccessful from '@/components/form-successful'; import { useState } from 'react'; import { FirewallRule } from '@/types/firewall'; import { Badge } from '@/components/ui/badge'; import RuleForm from '@/pages/firewall/components/form'; function Delete({ firewallRule }: { firewallRule: FirewallRule }) { const [open, setOpen] = useState(false); const form = useForm(); const submit = () => { form.delete(route('firewall.destroy', { server: firewallRule.server_id, firewallRule: firewallRule }), { onSuccess: () => { setOpen(false); }, }); }; return ( e.preventDefault()}> Delete Delete firewallRule [{firewallRule.name}] Delete firewallRule Are you sure you want to delete rule {firewallRule.name}? This action cannot be undone. Cancel {form.processing && } Delete ); } export const columns: ColumnDef[] = [ { accessorKey: 'name', header: 'Name', enableColumnFilter: true, enableSorting: true, }, { accessorKey: 'type', header: 'Type', enableColumnFilter: true, enableSorting: true, cell: ({ row }) => { return {row.original.type}; }, }, { accessorKey: 'source', header: 'Source', enableColumnFilter: true, enableSorting: true, cell: ({ row }) => { return {row.original.source ?? 'any'}; }, }, { accessorKey: 'protocol', header: 'Protocol', enableColumnFilter: true, enableSorting: true, cell: ({ row }) => { return {row.original.protocol}; }, }, { accessorKey: 'port', header: 'Port', enableColumnFilter: true, enableSorting: true, }, { accessorKey: 'status', header: 'Status', enableColumnFilter: true, enableSorting: true, cell: ({ row }) => { return {row.original.status}; }, }, { id: 'actions', enableColumnFilter: false, enableSorting: false, cell: ({ row }) => { return ( Open menu e.preventDefault()}>Edit ); }, }, ];
Are you sure you want to delete rule {firewallRule.name}? This action cannot be undone.