From 417263ff21c1164096853a461bb7710a363d3bf7 Mon Sep 17 00:00:00 2001 From: Dharit Tantiviramanond Date: Tue, 3 Oct 2023 16:59:04 -0400 Subject: [PATCH 1/2] [PAY-1927] Cleanup redux state on purchase modal close --- .../PremiumContentPurchaseModal.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx b/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx index 8c360d1ba7c..497cdb628df 100644 --- a/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx +++ b/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx @@ -8,7 +8,8 @@ import { useGetTrackById, usePremiumContentPurchaseModal, usePurchaseContentFormConfiguration, - buyUSDCActions + buyUSDCActions, + purchaseContentActions } from '@audius/common' import { IconCart, ModalContent, ModalFooter, ModalHeader } from '@audius/stems' import cn from 'classnames' @@ -31,6 +32,7 @@ import { usePurchaseContentFormState } from './hooks/usePurchaseContentFormState const { startRecoveryIfNecessary, cleanup: cleanupUSDCRecovery } = buyUSDCActions +const { cleanup } = purchaseContentActions const messages = { completePurchase: 'Complete Purchase' @@ -117,6 +119,7 @@ const RenderForm = ({ } export const PremiumContentPurchaseModal = () => { + const dispatch = useDispatch() const { isOpen, onClose, @@ -132,6 +135,11 @@ export const PremiumContentPurchaseModal = () => { const { initialValues, validationSchema, onSubmit } = usePurchaseContentFormConfiguration({ track }) + const handleClose = useCallback(() => { + dispatch(cleanup()) + onClose() + }, [dispatch, onClose]) + const isValidTrack = track && isTrackPurchasable(track) if (track && !isValidTrack) { @@ -141,7 +149,7 @@ export const PremiumContentPurchaseModal = () => { return ( Date: Tue, 3 Oct 2023 17:15:26 -0400 Subject: [PATCH 2/2] PR comment --- .../PremiumContentPurchaseModal.tsx | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx b/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx index 497cdb628df..f489d7b75ee 100644 --- a/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx +++ b/packages/web/src/components/premium-content-purchase-modal/PremiumContentPurchaseModal.tsx @@ -63,6 +63,7 @@ const RenderForm = ({ const handleClose = useCallback(() => { dispatch(cleanupUSDCRecovery()) onClose() + dispatch(cleanup()) }, [dispatch, onClose]) // Navigate to track on successful purchase behind the modal @@ -119,7 +120,6 @@ const RenderForm = ({ } export const PremiumContentPurchaseModal = () => { - const dispatch = useDispatch() const { isOpen, onClose, @@ -135,11 +135,6 @@ export const PremiumContentPurchaseModal = () => { const { initialValues, validationSchema, onSubmit } = usePurchaseContentFormConfiguration({ track }) - const handleClose = useCallback(() => { - dispatch(cleanup()) - onClose() - }, [dispatch, onClose]) - const isValidTrack = track && isTrackPurchasable(track) if (track && !isValidTrack) { @@ -149,7 +144,7 @@ export const PremiumContentPurchaseModal = () => { return (