import { type FC } from 'react' import { useFormik } from 'formik' import * as Yup from 'yup' import { useGetContentContract, useUpdateContract } from './hooks/useSellerData' import PageLoading from '@/components/PageLoading' import Error from '@/components/Error' import Button from '@/components/Button' import TextEditor from '@/components/TextEditor' import { TickCircle } from 'iconsax-react' import { toast } from 'react-toastify' import { extractErrorMessage } from '@/helpers/utils' const validationSchema = Yup.object().shape({ content: Yup.string().required('محتوای قرارداد الزامی است') }) const ContractPage: FC = () => { const { data: contentContract, isLoading, error } = useGetContentContract() const updateContractMutation = useUpdateContract() const contract = contentContract?.results?.contract const isDataLoaded = !!contract const formik = useFormik({ initialValues: { id: contract?._id || '', content: contract?.content || '

در حال بارگذاری...

' }, validationSchema, enableReinitialize: true, onSubmit: async (values) => { updateContractMutation.mutate({ id: values.id, content: values.content }, { onSuccess: () => { toast.success('قرارداد با موفقیت بروزرسانی شد') }, onError: (error) => { toast.error(extractErrorMessage(error)) } }) } }) if (isLoading) { return } if (error) { return } return (

مدیریت قرارداد فروشندگان

محتوای قرارداد

formik.setFieldValue('content', value)} placeholder='محتوای قرارداد را وارد کنید...' height='h-[400px]' /> {formik.touched.content && formik.errors.content && (
{String(formik.errors.content)}
)}
) } export default ContractPage