From d520c67839724e80d8b68b8fe933f1e7755a8f42 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Tue, 4 Jul 2017 04:14:03 +0200 Subject: writing task form in a reduxy way --- client/containers/taskContentLink.js | 19 +++++++++++++++++++ client/containers/taskForm.js | 24 ++++++++++++++++++++++++ client/containers/taskStyleLink.js | 19 +++++++++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 client/containers/taskContentLink.js create mode 100644 client/containers/taskForm.js create mode 100644 client/containers/taskStyleLink.js (limited to 'client/containers') diff --git a/client/containers/taskContentLink.js b/client/containers/taskContentLink.js new file mode 100644 index 0000000..bb8ae37 --- /dev/null +++ b/client/containers/taskContentLink.js @@ -0,0 +1,19 @@ +import { connect } from 'react-redux' +import { setContent } from '../actions' +import Link from '../components/UI/Link.jsx' + +const mapStateToProps = (state, ownProps) => ({ +}) + +const mapDispatchToProps = (dispatch, ownProps) => ({ + onClick: () => { + dispatch(setContent(ownProps.file)) + } +}) + +const TaskContentLink = connect( + mapStateToProps, + mapDispatchToProps +)(Link) + +export default TaskContentLink diff --git a/client/containers/taskForm.js b/client/containers/taskForm.js new file mode 100644 index 0000000..ac1a214 --- /dev/null +++ b/client/containers/taskForm.js @@ -0,0 +1,24 @@ +import { h, Component } from 'preact' +import { Link } from 'react-router-dom' + +import client from '../client.js' + +import { connect } from 'react-redux' +import { setContent, setStyle, setAlpha, createTask } from '../actions' +import TaskFormView from '../components/Tasks/TaskFormView.jsx' + +const mapStateToProps = (state) => state.currentTask + +const mapDispatchToProps = { + clearContent: () => setContent(null), + clearStyle: () => setStyle(null), + setAlpha: (alpha) => setAlpha(alpha), + createTask: () => createTask(), +} + +const TaskForm = connect( + mapStateToProps, + mapDispatchToProps +)(TaskFormView) + +export default TaskForm diff --git a/client/containers/taskStyleLink.js b/client/containers/taskStyleLink.js new file mode 100644 index 0000000..7ec5ce5 --- /dev/null +++ b/client/containers/taskStyleLink.js @@ -0,0 +1,19 @@ +import { connect } from 'react-redux' +import { setStyle } from '../actions' +import Link from '../components/UI/Link.jsx' + +const mapStateToProps = (state, ownProps) => ({ +}) + +const mapDispatchToProps = (dispatch, ownProps) => ({ + onClick: () => { + dispatch(setStyle(ownProps.file)) + } +}) + +const TaskStyleLink = connect( + mapStateToProps, + mapDispatchToProps +)(Link) + +export default TaskStyleLink -- cgit v1.2.3-70-g09d2