import PropTypes from 'prop-types'; import React, { Component } from 'react'; import { connect } from 'react-redux'; import { createSelector } from 'reselect'; import { toggleArtistMonitored } from 'Store/Actions/artistActions'; import createMetadataProfileSelector from 'Store/Selectors/createMetadataProfileSelector'; import createQualityProfileSelector from 'Store/Selectors/createQualityProfileSelector'; import ArtistEditorRow from './ArtistEditorRow'; function createMapStateToProps() { return createSelector( createMetadataProfileSelector(), createQualityProfileSelector(), (metadataProfile, qualityProfile) => { return { metadataProfile, qualityProfile }; } ); } const mapDispatchToProps = { toggleArtistMonitored }; class ArtistEditorRowConnector extends Component { // // Listeners onArtistMonitoredPress = () => { const { id, monitored } = this.props; this.props.toggleArtistMonitored({ artistId: id, monitored: !monitored }); } render() { return ( ); } } ArtistEditorRowConnector.propTypes = { id: PropTypes.number.isRequired, monitored: PropTypes.bool.isRequired, qualityProfileId: PropTypes.number.isRequired, toggleArtistMonitored: PropTypes.func.isRequired }; export default connect(createMapStateToProps, mapDispatchToProps)(ArtistEditorRowConnector);