From 59881d7fb5384eaf426795af7e7ddf089cc8ea63 Mon Sep 17 00:00:00 2001 From: Bogdan Cochior <bogdan.cochior@thinslices.com> Date: Wed, 11 Jul 2018 14:47:57 +0300 Subject: [PATCH] refactor(profile): refactor profile form --- .../components/UserProfile/AccountDetails.js | 29 +++++-------------- .../UserProfile/AccountDetailsEdit.js | 17 ++++++++--- 2 files changed, 20 insertions(+), 26 deletions(-) diff --git a/packages/components-faraday/src/components/UserProfile/AccountDetails.js b/packages/components-faraday/src/components/UserProfile/AccountDetails.js index 59e1c0787..5932cb212 100644 --- a/packages/components-faraday/src/components/UserProfile/AccountDetails.js +++ b/packages/components-faraday/src/components/UserProfile/AccountDetails.js @@ -1,29 +1,19 @@ import React from 'react' import styled from 'styled-components' -import { reduxForm } from 'redux-form' import { withJournal } from 'xpub-journal' -import { compose, withProps, withHandlers, withState } from 'recompose' -import { onSubmitUser as onSubmit } from '../utils' +import { compose, withHandlers, withState } from 'recompose' import AccountDetailsCard from './AccountDetailsCard' import AccountDetailsEdit from './AccountDetailsEdit' -const AccountDetails = ({ - user, - isEdit, - setEditMode, - journal, - handleSubmit, -}) => ( +const AccountDetails = ({ user, isEdit, setEditMode, journal }) => ( <Root> {isEdit ? ( - <form onSubmit={handleSubmit}> - <AccountDetailsEdit - journal={journal} - setEditMode={setEditMode} - user={user} - /> - </form> + <AccountDetailsEdit + journal={journal} + setEditMode={setEditMode} + user={user} + /> ) : ( <AccountDetailsCard journal={journal} @@ -40,11 +30,6 @@ export default compose( withHandlers({ setEditMode: ({ setEdit }) => value => setEdit(value), }), - withProps(({ user }) => ({ initialValues: user })), - reduxForm({ - form: 'userManagement', - onSubmit, - }), )(AccountDetails) // #region styles diff --git a/packages/components-faraday/src/components/UserProfile/AccountDetailsEdit.js b/packages/components-faraday/src/components/UserProfile/AccountDetailsEdit.js index 1e8b4b2b4..f247552c6 100644 --- a/packages/components-faraday/src/components/UserProfile/AccountDetailsEdit.js +++ b/packages/components-faraday/src/components/UserProfile/AccountDetailsEdit.js @@ -1,11 +1,14 @@ import React from 'react' import styled from 'styled-components' import { Button, th } from '@pubsweet/ui' +import { reduxForm } from 'redux-form' +import { compose, withProps } from 'recompose' +import { onSubmitUser as onSubmit } from '../utils' import EditUserForm from '../Admin/EditUserForm' -const AccountDetailsEdit = ({ journal, user, setEditMode }) => ( - <Root> +const AccountDetailsEdit = ({ journal, user, setEditMode, handleSubmit }) => ( + <Root onSubmit={handleSubmit}> <EditUserForm journal={journal} title="Edit account details" user={user} /> <Row> <Button onClick={() => setEditMode(false)}>Cancel</Button> @@ -16,10 +19,16 @@ const AccountDetailsEdit = ({ journal, user, setEditMode }) => ( </Root> ) -export default AccountDetailsEdit +export default compose( + withProps(({ user }) => ({ initialValues: user })), + reduxForm({ + form: 'userManagement', + onSubmit, + }), +)(AccountDetailsEdit) // #region styles -const Root = styled.div` +const Root = styled.form` background-color: ${th('colorBackground')}; padding: ${th('gridUnit')}; border: ${th('borderDefault')}; -- GitLab