From 6024d1191ae01e2cff0a294d8bff97f421981469 Mon Sep 17 00:00:00 2001 From: sektordv Date: Thu, 17 Jun 2021 15:11:50 +0200 Subject: [PATCH] reset metadataChanged state after submitting form --- .../components/OrderDetailsPage/OrderDetailsPage.tsx | 9 ++++++--- src/utils/metadata/useMetadataChangeTrigger.ts | 8 +++++++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/orders/components/OrderDetailsPage/OrderDetailsPage.tsx b/src/orders/components/OrderDetailsPage/OrderDetailsPage.tsx index f7f3832ad..bf589436e 100644 --- a/src/orders/components/OrderDetailsPage/OrderDetailsPage.tsx +++ b/src/orders/components/OrderDetailsPage/OrderDetailsPage.tsx @@ -138,7 +138,8 @@ const OrderDetailsPage: React.FC = props => { const { isMetadataModified, isPrivateMetadataModified, - makeChangeHandler: makeMetadataChangeHandler + makeChangeHandler: makeMetadataChangeHandler, + resetMetadataChanged } = useMetadataChangeTrigger(); const isOrderUnconfirmed = order?.status === OrderStatus.UNCONFIRMED; @@ -149,16 +150,18 @@ const OrderDetailsPage: React.FC = props => { line => line.quantityFulfilled < line.quantity ); - const handleSubmit = (data: MetadataFormData) => { + const handleSubmit = async (data: MetadataFormData) => { const metadata = isMetadataModified ? data.metadata : undefined; const privateMetadata = isPrivateMetadataModified ? data.privateMetadata : undefined; - return onSubmit({ + const result = await onSubmit({ metadata, privateMetadata }); + resetMetadataChanged(); + return result; }; const initial: MetadataFormData = { diff --git a/src/utils/metadata/useMetadataChangeTrigger.ts b/src/utils/metadata/useMetadataChangeTrigger.ts index 1313606da..feb0ad5bb 100644 --- a/src/utils/metadata/useMetadataChangeTrigger.ts +++ b/src/utils/metadata/useMetadataChangeTrigger.ts @@ -18,10 +18,16 @@ function useMetadataChangeTrigger() { onChange(event); }; + const resetMetadataChanged = () => { + setMetadataModified(false); + setPrivateMetadataModified(false); + }; + return { isMetadataModified, isPrivateMetadataModified, - makeChangeHandler + makeChangeHandler, + resetMetadataChanged }; }