summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-05-10 21:32:54 +0200
committerGitHub <noreply@github.com>2021-05-10 21:32:54 +0200
commit1ce710ebaa8b071a3b30447d431f4af422f25156 (patch)
treed0d202eb1166f151113258d06199710fbd8324ec /opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js
parentddefa23e8e86c4eab2d2218646bcef21d547f4bc (diff)
parent09e5fe5a7f9ce8452fa9c042cb493e6fb4de221f (diff)
ui: Update frontend dependencies
This pull request updates the React dependencies used in the OpenDC frontend. * Actualize React, react-konva and react-scripts * Actualize Bootstrap and Reactstrap * Migrate to Redux hooks to reduce clutter
Diffstat (limited to 'opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js')
-rw-r--r--opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js31
1 files changed, 10 insertions, 21 deletions
diff --git a/opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js b/opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js
index d306dc45..e63ba76b 100644
--- a/opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js
+++ b/opendc-web/opendc-web-ui/src/containers/modals/NewProjectModal.js
@@ -1,30 +1,19 @@
import React from 'react'
-import { connect } from 'react-redux'
+import { useDispatch, useSelector } 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 NewProjectModal = (props) => {
+ const visible = useSelector((state) => state.modals.newProjectModalVisible)
+ const dispatch = useDispatch()
+ const callback = (text) => {
+ if (text) {
+ dispatch(addProject(text))
+ }
+ dispatch(closeNewProjectModal())
}
+ return <TextInputModal title="New Project" label="Project title" show={visible} callback={callback} {...props} />
}
-const mapDispatchToProps = (dispatch) => {
- return {
- callback: (text) => {
- if (text) {
- dispatch(addProject(text))
- }
- dispatch(closeNewProjectModal())
- },
- }
-}
-
-const NewProjectModal = connect(mapStateToProps, mapDispatchToProps)(NewProjectModalComponent)
-
export default NewProjectModal