mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-21 15:20:34 +00:00
🐛 fix(manual-journal): fix race condition in form submission handlers
Fix the order of setSubmitPayload and submitForm calls in all six button handlers to prevent race condition where submitForm reads stale state before setSubmitPayload updates it. Changes: - handleSubmitPublishBtnClick - handleSubmitPublishAndNewBtnClick - handleSubmitPublishContinueEditingBtnClick - handleSubmitDraftBtnClick - handleSubmitDraftAndNewBtnClick - handleSubmitDraftContinueEditingBtnClick Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -32,38 +32,38 @@ export default function MakeJournalFloatingAction() {
|
|||||||
|
|
||||||
// Handle submit & publish button click.
|
// Handle submit & publish button click.
|
||||||
const handleSubmitPublishBtnClick = (event) => {
|
const handleSubmitPublishBtnClick = (event) => {
|
||||||
submitForm();
|
|
||||||
setSubmitPayload({ redirect: true, publish: true });
|
setSubmitPayload({ redirect: true, publish: true });
|
||||||
|
submitForm();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Handle submit, publish & new button click.
|
// Handle submit, publish & new button click.
|
||||||
const handleSubmitPublishAndNewBtnClick = (event) => {
|
const handleSubmitPublishAndNewBtnClick = (event) => {
|
||||||
submitForm();
|
|
||||||
setSubmitPayload({ redirect: false, publish: true, resetForm: true });
|
setSubmitPayload({ redirect: false, publish: true, resetForm: true });
|
||||||
|
submitForm();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Handle submit, publish & edit button click.
|
// Handle submit, publish & edit button click.
|
||||||
const handleSubmitPublishContinueEditingBtnClick = (event) => {
|
const handleSubmitPublishContinueEditingBtnClick = (event) => {
|
||||||
submitForm();
|
|
||||||
setSubmitPayload({ redirect: false, publish: true });
|
setSubmitPayload({ redirect: false, publish: true });
|
||||||
|
submitForm();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Handle submit as draft button click.
|
// Handle submit as draft button click.
|
||||||
const handleSubmitDraftBtnClick = (event) => {
|
const handleSubmitDraftBtnClick = (event) => {
|
||||||
submitForm();
|
|
||||||
setSubmitPayload({ redirect: true, publish: false });
|
setSubmitPayload({ redirect: true, publish: false });
|
||||||
|
submitForm();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Handle submit as draft & new button click.
|
// Handle submit as draft & new button click.
|
||||||
const handleSubmitDraftAndNewBtnClick = (event) => {
|
const handleSubmitDraftAndNewBtnClick = (event) => {
|
||||||
submitForm();
|
|
||||||
setSubmitPayload({ redirect: false, publish: false, resetForm: true });
|
setSubmitPayload({ redirect: false, publish: false, resetForm: true });
|
||||||
|
submitForm();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Handle submit as draft & continue editing button click.
|
// Handle submit as draft & continue editing button click.
|
||||||
const handleSubmitDraftContinueEditingBtnClick = (event) => {
|
const handleSubmitDraftContinueEditingBtnClick = (event) => {
|
||||||
submitForm();
|
|
||||||
setSubmitPayload({ redirect: false, publish: false });
|
setSubmitPayload({ redirect: false, publish: false });
|
||||||
|
submitForm();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Handle cancel button click.
|
// Handle cancel button click.
|
||||||
|
|||||||
Reference in New Issue
Block a user