diff options
Diffstat (limited to 'frontend/src/containers/modals/NewProjectModal.js')
| -rw-r--r-- | frontend/src/containers/modals/NewProjectModal.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/frontend/src/containers/modals/NewProjectModal.js b/frontend/src/containers/modals/NewProjectModal.js new file mode 100644 index 00000000..1d0ebbbc --- /dev/null +++ b/frontend/src/containers/modals/NewProjectModal.js @@ -0,0 +1,37 @@ +import React from 'react' +import { connect } from 'react-redux' +import { closeNewProjectModal } from '../../actions/modals/projects' +import { addProject } from '../../actions/projects' +import TextInputModal from '../../components/modals/TextInputModal' + +const NewProjectModalComponent = ({ visible, callback }) => ( + <TextInputModal + title="New Project" + label="Project title" + show={visible} + callback={callback} + /> +) + +const mapStateToProps = state => { + return { + visible: state.modals.newProjectModalVisible, + } +} + +const mapDispatchToProps = dispatch => { + return { + callback: text => { + if (text) { + dispatch(addProject(text)) + } + dispatch(closeNewProjectModal()) + }, + } +} + +const NewProjectModal = connect(mapStateToProps, mapDispatchToProps)( + NewProjectModalComponent, +) + +export default NewProjectModal |
