import React from 'react'; import { Stack } from 'office-ui-fabric-react'; import { TodoListItem } from './TodoListItem'; import { Store } from '../store'; import { connect } from 'react-redux'; function mapStateToProps({ todos, filter }: Store) { return { todos, filter }; } function mapDispatchToProps(dispatch: any) {} type TodoListProps = ReturnType & ReturnType; class TodoList extends React.Component { render() { const { filter, todos } = this.props; const filteredTodos = Object.keys(todos).filter(id => { return filter === 'all' || (filter === 'completed' && todos[id].completed) || (filter === 'active' && !todos[id].completed); }); return ( {filteredTodos.map(id => ( ))} ); } } const component = connect( mapStateToProps, mapDispatchToProps )(TodoList); export { component as TodoList };