From 5f0700b5e584f6f2815a7dafe34d15f1ade7eda5 Mon Sep 17 00:00:00 2001 From: "a.bouhuolia" Date: Sat, 20 Nov 2021 18:52:45 +0200 Subject: [PATCH] fix: hotbug account dialog edit payload transformation. --- src/containers/Dialogs/AccountDialog/utils.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/containers/Dialogs/AccountDialog/utils.js b/src/containers/Dialogs/AccountDialog/utils.js index 7ce128577..64c0e016c 100644 --- a/src/containers/Dialogs/AccountDialog/utils.js +++ b/src/containers/Dialogs/AccountDialog/utils.js @@ -1,5 +1,6 @@ import intl from 'react-intl-universal'; import * as R from 'ramda'; +import { isEmpty } from 'lodash'; export const transformApiErrors = (errors) => { const fields = {}; @@ -42,12 +43,18 @@ const mergeWithAccount = R.curry((transformed, account) => { }; }); +/** + * Default account payload transformer. + */ +const defaultPayloadTransform = () => ({}); + /** * Defined payload transformers. */ function getConditions() { return [ - ['edit', transformEditMode], + ['edit'], + ['new_child', transformEditMode], ['NEW_ACCOUNT_DEFINED_TYPE', transformNewAccountDefinedType], ]; } @@ -59,9 +66,13 @@ export const transformAccountToForm = (account, payload) => { const conditions = getConditions(); const results = conditions.map((condition) => { + const transformer = !isEmpty(condition[1]) + ? condition[1] + : defaultPayloadTransform; + return [ condition[0] === payload.action ? R.T : R.F, - mergeWithAccount(condition[1](payload)), + mergeWithAccount(transformer(payload)), ]; }); return R.cond(results)(account);