change some files
This commit is contained in:
46
ui/forms/workExperience/WorkExperienceForm.tsx
Normal file
46
ui/forms/workExperience/WorkExperienceForm.tsx
Normal file
@@ -0,0 +1,46 @@
|
||||
"use client";
|
||||
|
||||
import { withFormik, type FormikBag } from "formik";
|
||||
import type {
|
||||
WorkExperienceFormProps,
|
||||
WorkExperienceFormValues,
|
||||
} from "./types";
|
||||
import { WORK_EXPERIENCE_EMPTY_VALUES } from "./constant";
|
||||
import { WorkExperienceValidationSchema } from "./validation";
|
||||
import InnerWorkExperienceForm from "./InnerWorkExperienceForm";
|
||||
|
||||
const WorkExperienceForm = withFormik<
|
||||
WorkExperienceFormProps,
|
||||
WorkExperienceFormValues
|
||||
>({
|
||||
displayName: "WorkExperienceForm",
|
||||
|
||||
enableReinitialize: true,
|
||||
|
||||
mapPropsToValues: (props) => {
|
||||
return {
|
||||
workExperiences:
|
||||
props.data?.workExperiences?.length > 0
|
||||
? props.data.workExperiences
|
||||
: WORK_EXPERIENCE_EMPTY_VALUES.workExperiences,
|
||||
};
|
||||
},
|
||||
|
||||
validationSchema: WorkExperienceValidationSchema,
|
||||
|
||||
handleSubmit: async (
|
||||
values,
|
||||
bag: FormikBag<WorkExperienceFormProps, WorkExperienceFormValues>,
|
||||
) => {
|
||||
const { props, setSubmitting } = bag;
|
||||
|
||||
props.update({
|
||||
workExperiences: values.workExperiences,
|
||||
});
|
||||
|
||||
props.setStep((prev) => prev + 1);
|
||||
setSubmitting(false);
|
||||
},
|
||||
})(InnerWorkExperienceForm);
|
||||
|
||||
export default WorkExperienceForm;
|
||||
Reference in New Issue
Block a user