Files
Eventment/app/components/Profile/Profile.js
Mike Fitzpatrick c146884636 - Wiring up nom and phone registration bits
- Added guided registration
2019-08-14 11:18:21 -04:00

56 lines
1.4 KiB
JavaScript

import React, { useState } from 'react';
import PropTypes from 'prop-types';
import { View } from 'react-native';
import EditProfile from './EditProfile.container.js';
import ViewProfile from './ViewProfile.container.js';
export default function Profile({
cancelEditAction,
isGuidedRegistration,
isInEditMode,
saveProfileAction,
saveProfileLabel,
}) {
const [editMode, setEditMode] = useState(isInEditMode);
const _cancelEditAction = () => {
setEditMode(false);
cancelEditAction();
};
const _saveProfileAction = (profile) => {
setEditMode(false);
saveProfileAction(profile);
};
return (
<View>
{editMode ? (
<EditProfile
cancelEditAction={_cancelEditAction}
isGuided={isGuidedRegistration}
saveProfileAction={_saveProfileAction}
saveProfileLabel={saveProfileLabel}
/>
) : (
<ViewProfile editProfileAction={() => setEditMode(true)} />
)}
</View>
);
}
Profile.propTypes = {
cancelEditAction: PropTypes.func.isRequired,
isGuidedRegistration: PropTypes.bool,
isInEditMode: PropTypes.bool,
saveProfileAction: PropTypes.func.isRequired,
saveProfileLabel: PropTypes.string,
};
Profile.defaultProps = {
isGuidedRegistration: false,
isInEditMode: false,
saveProfileLabel: null,
};