import { FC } from 'react' import { useTranslation } from 'react-i18next' import Button from '../../../../components/Button' import DefaulModal from '../../../../components/DefaulModal' import Input from '../../../../components/Input' import { useFormik } from 'formik' import * as Yup from 'yup' import { toast } from '../../../../components/Toast'; import { TickCircle } from 'iconsax-react' import { useCreateGroupIcon } from '../../hooks/useIconData' import { CreateGroupIconType } from '../../types/Types' import { ErrorType } from '../../../../helpers/types' interface CreateGroupIconProps { open: boolean close: () => void onSuccess?: () => void } const CreateGroupIcon: FC = ({ open, close, onSuccess }) => { const { t } = useTranslation('global') const createGroupIcon = useCreateGroupIcon() const formik = useFormik({ initialValues: { name: '' }, validationSchema: Yup.object({ name: Yup.string() .required(t('errors.required')) }), onSubmit: (values) => { createGroupIcon.mutate(values, { onSuccess: () => { formik.resetForm() close() toast(t('success'), 'success') onSuccess?.() }, onError: (error: ErrorType) => { toast(error.response?.data?.error?.message[0], 'error') } }) } }) const handleClose = () => { formik.resetForm() close() } return (
) } export default CreateGroupIcon