import { Button, Input, message, Modal, Table } from 'antd'; import { Fragment, useEffect, useMemo, useState } from 'react'; import { TextArea } from '../components/TextArea'; import { useContainerStore } from '../store'; import { useShallow } from 'zustand/react/shallow'; import { Form } from 'antd'; import copy from 'copy-to-clipboard'; import { useNavigate } from 'react-router'; import { EditOutlined, SettingOutlined, LinkOutlined, SaveOutlined, DeleteOutlined, LeftOutlined } from '@ant-design/icons'; import clsx from 'clsx'; const FormModal = () => { const [form] = Form.useForm(); const containerStore = useContainerStore( useShallow((state) => { return { showEdit: state.showEdit, setShowEdit: state.setShowEdit, formData: state.formData, updateData: state.updateData, }; }), ); useEffect(() => { const open = containerStore.showEdit; if (open) { form.setFieldsValue(containerStore.formData || {}); } }, [containerStore.showEdit]); const onFinish = async (values: any) => { containerStore.updateData(values); }; const onClose = () => { containerStore.setShowEdit(false); form.resetFields(); }; const isEdit = containerStore.formData.id; return ( containerStore.setShowEdit(false)} destroyOnClose footer={false} width={800} onCancel={onClose}>