fix: ensure form resets and button state reflects dirty status
This commit is contained in:
@@ -43,6 +43,7 @@ const HealthBenefitForm = ({
|
|||||||
amount: currentCompanyParams.benefit_amount || 0,
|
amount: currentCompanyParams.benefit_amount || 0,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
const isDirty = form.formState.isDirty;
|
||||||
|
|
||||||
const onSubmit = (data: { occurance: string; amount: number }) => {
|
const onSubmit = (data: { occurance: string; amount: number }) => {
|
||||||
const promise = async () => {
|
const promise = async () => {
|
||||||
@@ -55,6 +56,7 @@ const HealthBenefitForm = ({
|
|||||||
benefit_occurance: data.occurance,
|
benefit_occurance: data.occurance,
|
||||||
}));
|
}));
|
||||||
} finally {
|
} finally {
|
||||||
|
form.reset(data);
|
||||||
setIsLoading(false);
|
setIsLoading(false);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -83,7 +85,11 @@ const HealthBenefitForm = ({
|
|||||||
<Trans i18nKey="billing:description" />
|
<Trans i18nKey="billing:description" />
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<Button type="submit" className="relative" disabled={isLoading}>
|
<Button
|
||||||
|
type="submit"
|
||||||
|
className="relative"
|
||||||
|
disabled={!isDirty || isLoading}
|
||||||
|
>
|
||||||
{isLoading && (
|
{isLoading && (
|
||||||
<div className="absolute inset-0 flex items-center justify-center">
|
<div className="absolute inset-0 flex items-center justify-center">
|
||||||
<Spinner />
|
<Spinner />
|
||||||
|
|||||||
Reference in New Issue
Block a user