From dcd5d2692fdb12baa9eb9a43a53f788ce70ec951 Mon Sep 17 00:00:00 2001 From: rstubryan Date: Wed, 15 Oct 2025 10:54:38 +0700 Subject: [PATCH] feat(FE-62,65): enhance MovementForm and FormActions to improve form validation and reset behavior --- src/components/helper/form/FormActions.tsx | 12 ++++++++++-- .../pages/inventory/movement/form/MovementForm.tsx | 3 ++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/components/helper/form/FormActions.tsx b/src/components/helper/form/FormActions.tsx index 7ced46cd..54600d00 100644 --- a/src/components/helper/form/FormActions.tsx +++ b/src/components/helper/form/FormActions.tsx @@ -64,7 +64,10 @@ export const FormActions = ({ type='reset' color='warning' className='px-4' - onClick={formik.handleReset} + onClick={() => { + formik.handleReset(); + formik.validateForm(); + }} > Reset @@ -73,7 +76,12 @@ export const FormActions = ({ color='primary' className='px-4' isLoading={formik.isSubmitting} - disabled={disableSubmit || !formik.isValid || formik.isSubmitting} + disabled={ + disableSubmit || + !formik.isValid || + !formik.dirty || + formik.isSubmitting + } > Submit diff --git a/src/components/pages/inventory/movement/form/MovementForm.tsx b/src/components/pages/inventory/movement/form/MovementForm.tsx index 5d69f03e..dd927665 100644 --- a/src/components/pages/inventory/movement/form/MovementForm.tsx +++ b/src/components/pages/inventory/movement/form/MovementForm.tsx @@ -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 = {