diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f5a25b408..bd043394ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,9 @@ way to update this template, but currently, we follow a pattern: ## Upcoming version -* [fix] Fix submit button state on contact details page +* [fix] Fix TransactionPage state management in loadData. + [#863](https://github.com/sharetribe/flex-template-web/pull/863) & [#865](https://github.com/sharetribe/flex-template-web/pull/865) +* [fix] Fix submit button state on contact details page. [#864](https://github.com/sharetribe/flex-template-web/pull/864) * [fix] Fix passing initial message sending error to transaction page. [#863](https://github.com/sharetribe/flex-template-web/pull/863) diff --git a/src/containers/TransactionPage/TransactionPage.duck.js b/src/containers/TransactionPage/TransactionPage.duck.js index adac4bb933..d831986a5b 100644 --- a/src/containers/TransactionPage/TransactionPage.duck.js +++ b/src/containers/TransactionPage/TransactionPage.duck.js @@ -27,7 +27,7 @@ const CUSTOMER = 'customer'; export const SET_INITAL_VALUES = 'app/TransactionPage/SET_INITIAL_VALUES'; -export const CLEAR_ERRORS = 'app/TransactionPage/CLEAR_ERRORS'; +export const RESET_STATE = 'app/TransactionPage/RESET_STATE'; export const FETCH_TRANSACTION_REQUEST = 'app/TransactionPage/FETCH_TRANSACTION_REQUEST'; export const FETCH_TRANSACTION_SUCCESS = 'app/TransactionPage/FETCH_TRANSACTION_SUCCESS'; @@ -91,8 +91,8 @@ export default function checkoutPageReducer(state = initialState, action = {}) { case SET_INITAL_VALUES: return { ...initialState, ...payload }; - case CLEAR_ERRORS: - return { ...state, sendMessageError: null, sendReviewError: null }; + case RESET_STATE: + return { ...state, sendMessageError: null, sendReviewError: null, messages: [] }; case FETCH_TRANSACTION_REQUEST: return { ...state, fetchTransactionInProgress: true, fetchTransactionError: null }; @@ -174,7 +174,7 @@ export const setInitialValues = initialValues => ({ }); // clears tx page message and review sending errors -const clearErrors = () => ({ type: CLEAR_ERRORS }); +const resetState = () => ({ type: RESET_STATE }); const fetchTransactionRequest = () => ({ type: FETCH_TRANSACTION_REQUEST }); const fetchTransactionSuccess = response => ({ @@ -483,7 +483,7 @@ export const loadData = params => dispatch => { const txId = new UUID(params.id); // Clear the send error since the message form is emptied as well. - dispatch(clearErrors()); + dispatch(resetState()); // Sale / order (i.e. transaction entity in API) return Promise.all([dispatch(fetchTransaction(txId)), dispatch(fetchMessages(txId, 1))]);