import getFileBase64 from '@/core/utils/getFileBase64' import { yupResolver } from '@hookform/resolvers/yup' import React, { useRef } from 'react' import ReCAPTCHA from 'react-google-recaptcha' import { useForm } from 'react-hook-form' import { toast } from 'react-hot-toast' import * as Yup from 'yup' import createLeadApi from '../api/createLeadApi' const PembayaranTempo = () => { const { register, handleSubmit, reset, formState: { errors } } = useForm({ resolver: yupResolver(validationSchema), defaultValues }) const recaptchaRef = useRef(null) const onSubmitHandler = async (values) => { const recaptchaValue = recaptchaRef.current.getValue() if (!recaptchaValue) { toast.error('Recaptcha harus diisi') return } const npwp = document.getElementById('npwp').files[0] const nib = document.getElementById('nib').files[0] const tdp = document.getElementById('tdp').files[0] const siup = document.getElementById('siup').files[0] const data = { name: 'Pengajuan Pembayaran Tempo - ' + values.name, contact_name: values.name, email_from: values.email, file_npwp: npwp ? await getFileBase64(npwp) : '', file_nib: nib ? await getFileBase64(nib) : '', file_tdp: tdp ? await getFileBase64(tdp) : '', file_siup: siup ? await getFileBase64(siup) : '' } const createLead = await createLeadApi({ data }) if (createLead) { toast.success('Berhasil melakukan pengajuan pembayaran tempo') reset() recaptchaRef.current.reset() } } return (

Pembayaran Tempo

{errors.email?.message}
{errors.name?.message}
{errors.npwp?.message}
) } const validationSchema = Yup.object().shape({ name: Yup.string().min(3, 'Minimal 3 karakter').required('Harus di-isi'), email: Yup.string().email('Format harus seperti contoh@email.com').required('Harus di-isi'), npwp: Yup.string().required('Harus di-isi') }) const defaultValues = { name: '', email: '', npwp: '', siup: '', tdp: '', nib: '' } export default PembayaranTempo