import React, { useState, useEffect } from 'react'; import { Modal, Form, Input, Select as AntSelect, Button as AntButton, message } from 'antd'; import { Select, SelectItem } from "@tremor/react"; import { Card, Text } from "@tremor/react"; import { Member } from "@/components/networking"; interface TeamMemberModalProps { visible: boolean; onCancel: () => void; onSubmit: (data: Member) => void; initialData?: Member | null; mode: 'add' | 'edit'; } const TeamMemberModal: React.FC = ({ visible, onCancel, onSubmit, initialData, mode }) => { const [form] = Form.useForm(); useEffect(() => { if (initialData) { form.setFieldsValue({ user_email: initialData.user_email, user_id: initialData.user_id, role: initialData.role, }); } }, [initialData, form]); const handleSubmit = async (values: any) => { try { const formData: Member = { user_email: values.user_email, user_id: values.user_id, role: values.role, }; onSubmit(formData); form.resetFields(); message.success(`Successfully ${mode === 'add' ? 'added' : 'updated'} team member`); } catch (error) { message.error('Failed to submit form'); console.error('Form submission error:', error); } }; return (
{ e.target.value = e.target.value.trim(); }} />
OR
{ e.target.value = e.target.value.trim(); }} /> admin user
Cancel {mode === 'add' ? 'Add Member' : 'Save Changes'}
); }; export default TeamMemberModal;