feat(FE-62,65): enhance MovementForm and FormActions to improve form validation and reset behavior

This commit is contained in:
rstubryan
2025-10-15 10:54:38 +07:00
parent 56a9fc2349
commit dcd5d2692f
2 changed files with 12 additions and 3 deletions
+10 -2
View File
@@ -64,7 +64,10 @@ export const FormActions = <T,>({
type='reset'
color='warning'
className='px-4'
onClick={formik.handleReset}
onClick={() => {
formik.handleReset();
formik.validateForm();
}}
>
Reset
</Button>
@@ -73,7 +76,12 @@ export const FormActions = <T,>({
color='primary'
className='px-4'
isLoading={formik.isSubmitting}
disabled={disableSubmit || !formik.isValid || formik.isSubmitting}
disabled={
disableSubmit ||
!formik.isValid ||
!formik.dirty ||
formik.isSubmitting
}
>
Submit
</Button>
@@ -1,7 +1,7 @@
'use client';
import { useCallback, useEffect, useMemo, useState } from 'react';
import { FormikProps, useFormik } from 'formik';
import { useFormik } from 'formik';
import useSWR from 'swr';
import { Icon } from '@iconify/react';
@@ -64,6 +64,7 @@ const MovementForm = ({ type = 'add', initialValues }: MovementFormProps) => {
type === 'edit' ? UpdateMovementFormSchema : MovementFormSchema,
validateOnChange: true,
validateOnBlur: true,
validateOnMount: true,
onSubmit: async (values) => {
setMovementFormErrorMessage('');
const payload: CreateMovementPayload = {