aboutsummaryrefslogtreecommitdiff
path: root/src/client/react/components/container/Search.js
blob: 206a6a1cfe7c3c754e0f5ad4c5b08f01f797e237 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import { connect } from 'react-redux';
import { inputChange, focusChange } from '../../actions/search';
import PresentationalSearch from '../presentational/Search';

const mapStateToProps = state => ({
  results: state.search.searchResults,
  value: state.search.searchInput,
  hasFocus: state.search.hasFocus,
});

const mapDispatchToProps = dispatch => ({
  onInputChange: (event) => {
    dispatch(inputChange(event.target.value));
  },
  onFocus: () => {
    dispatch(focusChange(true));
  },
  onBlur: () => {
    dispatch(focusChange(false));
  },
});

const Search = connect(
  mapStateToProps,
  mapDispatchToProps,
)(PresentationalSearch);

export default Search;