import React from 'react'; import Select from 'react-select'; import { bindActionCreators } from 'redux'; import * as actions from '../actions/exploreActions'; import { connect } from 'react-redux'; import { timestampOptions, rowLimitOptions } from '../constants'; const propTypes = { actions: React.PropTypes.object, timeStampFormat: React.PropTypes.string, rowLimit: React.PropTypes.number, }; const defaultProps = { timeStampFormat: null, rowLimit: null, }; class Options extends React.Component { changeTimeStampFormat(timeStampFormat) { const val = (timeStampFormat) ? timeStampFormat.value : null; this.props.actions.setTimeStampFormat(val); } changeRowLimit(rowLimit) { this.props.actions.setRowLimit(rowLimit); } render() { return (
Options
Table Timestamp Format
({ value: r, label: r }))} value={this.props.rowLimit} autosize={false} onChange={this.changeRowLimit.bind(this)} />
); } } Options.propTypes = propTypes; Options.defaultProps = defaultProps; function mapStateToProps(state) { return { timeStampFormat: state.timeStampFormat, rowLimit: state.rowLimit, }; } function mapDispatchToProps(dispatch) { return { actions: bindActionCreators(actions, dispatch), }; } export default connect(mapStateToProps, mapDispatchToProps)(Options);