import React, { PureComponent } from 'react'; import { connect } from 'react-redux'; import LayoutSelector, { LayoutMode } from '../../core/components/LayoutSelector/LayoutSelector'; import { setDataSourcesLayoutMode, setDataSourcesSearchQuery } from './state/actions'; import { getDataSourcesLayoutMode, getDataSourcesSearchQuery } from './state/selectors'; export interface Props { searchQuery: string; layoutMode: LayoutMode; setDataSourcesLayoutMode: typeof setDataSourcesLayoutMode; setDataSourcesSearchQuery: typeof setDataSourcesSearchQuery; } export class DataSourcesActionBar extends PureComponent { onSearchQueryChange = event => { this.props.setDataSourcesSearchQuery(event.target.value); }; render() { const { searchQuery, layoutMode, setDataSourcesLayoutMode } = this.props; return (
setDataSourcesLayoutMode(mode)} />
Add data source
); } } function mapStateToProps(state) { return { searchQuery: getDataSourcesSearchQuery(state.dataSources), layoutMode: getDataSourcesLayoutMode(state.dataSources), }; } const mapDispatchToProps = { setDataSourcesLayoutMode, setDataSourcesSearchQuery, }; export default connect(mapStateToProps, mapDispatchToProps)(DataSourcesActionBar);