import { useState } from 'react'; export default function ApprovalModal({ approvals, onApprove, onReject }) { const [processing, setProcessing] = useState({}); const handleApprove = async (id) => { setProcessing(p => ({ ...p, [id]: 'approving' })); try { await onApprove(id); } finally { setProcessing(p => ({ ...p, [id]: null })); } }; const handleReject = async (id) => { setProcessing(p => ({ ...p, [id]: 'rejecting' })); try { await onReject(id); } finally { setProcessing(p => ({ ...p, [id]: null })); } }; if (approvals.length === 0) return null; return (
Why: {approval.reason}
Command to execute:
{approval.details.command}
On host: {approval.details.hostname}
Name: {approval.details.name}
Type: {approval.details.type}
Target: {approval.details.target}