import { validationSchema as VS, useDispatch, useSelector, usersService, initialValues as IV, initialReqState, useState, tableReload, Formik, InputCom, Field, Form, LoadingSpinner, } from "./settings"; const validationSchema = VS; function AddJob({ popUpHandler, categories }) { const ApiCall = new usersService(); const { walletDetails } = useSelector((state) => state.walletDetails); let dispatch = useDispatch(); const [requestStatus, setRequestStatus] = useState(initialReqState); // Holds state when submit button is pressed const handleAddJob = async (values, helpers) => { const reqData = { country: values?.country, price: Number(values.price) * 100, title: values?.title, description: values?.description, job_detail: values?.job_detail, timeline_days: values?.timeline_days, category: values.category?.join("@"), }; setRequestStatus({ loading: true, status: false, message: "" }); try { const res = await ApiCall.jobManagerCreateJob(reqData); if (res.data.internal_return < 1) { setRequestStatus({ loading: false, status: false, message: "Could not complete your request at the moment", }); setTimeout(() => { popUpHandler(); }, 1500); } else { setRequestStatus({ loading: false, status: true, message: "Job Added Successfully", }); setTimeout(() => { dispatch(tableReload({ type: "JOBTABLE" })); popUpHandler(); }, 1000); } } catch (err) { setRequestStatus({ loading: false, status: false, message: "Oops! Something went wrong. Try Again", }); } finally { setTimeout(() => { setRequestStatus({ loading: false, status: false, message: "" }); }, 5000); } }; return (
{(props) => { return (
{/* inputs starts here */}
{/* Price */}
{/* Title */}
{/* Description */}
{/* Details */}