import { Modal } from '@/components/ui/modal';
import { Button } from '@/components/ui/button';
import { Input } from '@/components/ui/input';
import { Textarea } from '@/components/ui/textarea';
import { useState } from 'react';

type SendEmailModalProps = {
  open: boolean;
  onOpenChange: () => void;
  selectedUser: { email?: string } | null;
  onSend: (payload: { subject: string; body: string }) => void;
};

export function SendEmailModal({ open, onOpenChange, selectedUser, onSend }: SendEmailModalProps) {
  const [subject, setSubject] = useState('');
  const [body, setBody] = useState('');

  return (
    <Modal open={open} onOpenChange={onOpenChange} title="Send Email">
      <div className="space-y-4">
        <div>
          <label className="block text-sm font-medium mb-1">To</label>
          <div className="text-sm text-muted-foreground">{selectedUser?.email}</div>
        </div>
        <Input
          placeholder="Subject"
          value={subject}
          onChange={e => setSubject(e.target.value)}
        />
        <Textarea
          placeholder="Body"
          value={body}
          onChange={e => setBody(e.target.value)}
          rows={5}
        />
        <div className="flex gap-2 justify-end">
          <Button variant="outline" onClick={onOpenChange}>Cancel</Button>
          <Button
            onClick={() => onSend({ subject, body })}
            disabled={!subject || !body}
          >
            Send
          </Button>
        </div>
      </div>
    </Modal>
  );
}
