diff options
| author | Georgios Andreadis <g.andreadis@student.tudelft.nl> | 2017-08-09 14:29:14 +0300 |
|---|---|---|
| committer | Georgios Andreadis <g.andreadis@student.tudelft.nl> | 2017-09-23 10:05:18 +0200 |
| commit | 67a771cbb02ec9da3c60704901f3150b46a7262b (patch) | |
| tree | f5e8e28cc0b7539196e7cdc2f4f4e7cc2c165fbd /src/containers/projects/NewProjectModal.js | |
| parent | d1194f0706789287b98996b629451042f62bf6eb (diff) | |
Create basic projects page with add-button
Diffstat (limited to 'src/containers/projects/NewProjectModal.js')
| -rw-r--r-- | src/containers/projects/NewProjectModal.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/containers/projects/NewProjectModal.js b/src/containers/projects/NewProjectModal.js new file mode 100644 index 00000000..7321cb4d --- /dev/null +++ b/src/containers/projects/NewProjectModal.js @@ -0,0 +1,34 @@ +import React from "react"; +import {connect} from "react-redux"; +import {addProject, closeNewProjectModal} 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.newProjectModalVisible + }; +}; + +const mapDispatchToProps = dispatch => { + return { + callback: (text) => { + if (text) { + dispatch(addProject(text)); + dispatch(closeNewProjectModal()); + } + } + }; +}; + +const NewProjectModal = connect( + mapStateToProps, + mapDispatchToProps +)(NewProjectModalComponent); + +export default NewProjectModal; |
