import { DialogAction } from "@/components/shared/dialog-action"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { api } from "@/utils/api"; import { LockKeyhole, Trash2 } from "lucide-react"; import React from "react"; import { toast } from "sonner"; import { HandleSecurity } from "./handle-security"; interface Props { applicationId: string; } export const ShowSecurity = ({ applicationId }: Props) => { const { data, refetch } = api.application.one.useQuery( { applicationId, }, { enabled: !!applicationId }, ); const { mutateAsync: deleteSecurity, isLoading: isRemoving } = api.security.delete.useMutation(); const utils = api.useUtils(); return (
Security Add basic auth to your application
{data && data?.security.length > 0 && ( Add Security )}
{data?.security.length === 0 ? (
No security configured Add Security
) : (
{data?.security.map((security) => (
Username {security.username}
Password {security.password}
{ await deleteSecurity({ securityId: security.securityId, }) .then(() => { refetch(); utils.application.readTraefikConfig.invalidate({ applicationId, }); toast.success("Security deleted successfully"); }) .catch(() => { toast.error("Error deleting security"); }); }} >
))}
)}
); };