# HG changeset patch # User ymh # Date 1500586678 -7200 # Node ID c653f49fabfb273108f8e1d8cebe0ecc6c823cee # Parent c775701640504d7ec95eb0e62588356c5519894d remove unecessary dependencies to Redux diff -r c77570164050 -r c653f49fabfb client/src/components/NoteInput.js --- a/client/src/components/NoteInput.js Thu Jul 20 11:23:08 2017 +0200 +++ b/client/src/components/NoteInput.js Thu Jul 20 23:37:58 2017 +0200 @@ -1,12 +1,8 @@ import React, { Component } from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators } from 'redux'; import { Form, FormControl } from 'react-bootstrap'; import PropTypes from 'prop-types'; import SlateEditor from './SlateEditor'; -import * as notesActions from '../actions/notesActions'; -import * as userActions from '../actions/userActions'; import { now } from '../utils'; @@ -34,7 +30,7 @@ const categories = this.refs.editor.asCategories(); const marginComment = this.marginComment.value; - this.props.notesActions.addNote(this.props.session, { + this.props.addNote(this.props.session, { plain: plain, raw: raw, html: html, @@ -49,7 +45,7 @@ } onCheckboxChange = (e) => { - this.props.userActions.setAutoSubmit(e.target.checked); + this.props.setAutoSubmit(e.target.checked); } componentDidMount() { @@ -84,21 +80,8 @@ } } -function mapStateToProps(state, props) { - return { - autoSubmit: state.autoSubmit - }; -} - -function mapDispatchToProps(dispatch) { - return { - notesActions: bindActionCreators(notesActions, dispatch), - userActions: bindActionCreators(userActions, dispatch), - } -} - NoteInput.propTypes = { addNote: PropTypes.func.isRequired }; -export default connect(mapStateToProps, mapDispatchToProps)(NoteInput); +export default NoteInput; diff -r c77570164050 -r c653f49fabfb client/src/components/NotesList.js --- a/client/src/components/NotesList.js Thu Jul 20 11:23:08 2017 +0200 +++ b/client/src/components/NotesList.js Thu Jul 20 23:37:58 2017 +0200 @@ -1,11 +1,8 @@ import React, { Component } from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators } from 'redux'; import PropTypes from 'prop-types'; import Immutable from 'immutable'; import { Alert, Modal, Button } from 'react-bootstrap'; import Note from './Note'; -import * as notesActions from '../actions/notesActions'; class NotesList extends Component { @@ -32,7 +29,7 @@ deleteNote = () => { const { noteToDelete } = this.state; - this.props.notesActions.deleteNote(noteToDelete); + this.props.deleteNote(noteToDelete); this.closeModal(); } @@ -44,7 +41,7 @@ } updateNote = (note, data) => { - this.props.notesActions.updateNote(note, data); + this.props.updateNote(note, data); } render() { @@ -87,17 +84,4 @@ notes: PropTypes.instanceOf(Immutable.List).isRequired }; -function mapStateToProps(state, props) { - return { - ...props, - notes : props.notes.filter(note => !note.deleted) - }; -} - -function mapDispatchToProps(dispatch) { - return { - notesActions: bindActionCreators(notesActions, dispatch), - } -} - -export default connect(mapStateToProps, mapDispatchToProps)(NotesList); +export default NotesList; diff -r c77570164050 -r c653f49fabfb client/src/components/Session.js --- a/client/src/components/Session.js Thu Jul 20 11:23:08 2017 +0200 +++ b/client/src/components/Session.js Thu Jul 20 23:37:58 2017 +0200 @@ -10,6 +10,7 @@ import SessionSummary from './SessionSummary'; import * as sessionsActions from '../actions/sessionsActions'; import * as notesActions from '../actions/notesActions'; +import * as userActions from '../actions/userActions'; class Session extends Component { render() { @@ -24,14 +25,22 @@

- +
- + @@ -48,16 +57,18 @@ const sessions = state['sessions']; const notes = state['notes']; + const autoSubmit = state['autoSubmit']; const currentSession = sessions.find(session => session._id === sessionId); const currentNotes = notes.filter(note => { - return note.session === sessionId; + return (note.session === sessionId && !note.deleted); }).sortBy( n => n.get('startedAt') ); return { currentSession, sessions, notes: currentNotes, + autoSubmit }; } @@ -65,6 +76,7 @@ return { sessionsActions: bindActionCreators(sessionsActions, dispatch), notesActions: bindActionCreators(notesActions, dispatch), + userActions: bindActionCreators(userActions, dispatch) } } diff -r c77570164050 -r c653f49fabfb client/src/components/SessionSummary.js --- a/client/src/components/SessionSummary.js Thu Jul 20 11:23:08 2017 +0200 +++ b/client/src/components/SessionSummary.js Thu Jul 20 23:37:58 2017 +0200 @@ -1,32 +1,20 @@ -import React, { Component } from 'react'; -import { connect } from 'react-redux'; +import React from 'react'; import { ListGroup, ListGroupItem } from 'react-bootstrap'; import _ from 'lodash'; import '../App.css'; import {formatTimestamp} from '../utils'; -class SessionSummary extends Component { - render() { - return ( - - {this.props.notes.map((note) => - - - {formatTimestamp(note.startedAt)} → {formatTimestamp(note.finishedAt)} - {_.words(note.plain).length} words - - - )} - - ); - } -} +const SessionSummary = ({notes}) => ( + + {notes.map((note) => + + + {formatTimestamp(note.startedAt)} → {formatTimestamp(note.finishedAt)} + {_.words(note.plain).length} words + + + )} + +) -function mapStateToProps(state, props) { - return { - ...props, - notes : props.notes.filter(note => !note.deleted) - }; -} - -export default connect(mapStateToProps)(SessionSummary); +export default SessionSummary;