import PropTypes from 'prop-types'; import React, { Component } from 'react'; import TextTruncate from 'react-text-truncate'; import ArtistPoster from 'Artist/ArtistPoster'; import CheckInput from 'Components/Form/CheckInput'; import SpinnerButton from 'Components/Link/SpinnerButton'; import ModalBody from 'Components/Modal/ModalBody'; import ModalContent from 'Components/Modal/ModalContent'; import ModalFooter from 'Components/Modal/ModalFooter'; import ModalHeader from 'Components/Modal/ModalHeader'; import { kinds } from 'Helpers/Props'; import AddArtistOptionsForm from '../Common/AddArtistOptionsForm.js'; import styles from './AddNewArtistModalContent.css'; import translate from 'Utilities/String/translate'; class AddNewArtistModalContent extends Component { // // Lifecycle constructor(props, context) { super(props, context); this.state = { searchForMissingAlbums: false }; } // // Listeners onSearchForMissingAlbumsChange = ({ value }) => { this.setState({ searchForMissingAlbums: value }); }; onAddArtistPress = () => { this.props.onAddArtistPress(this.state.searchForMissingAlbums); }; // // Render render() { const { artistName, disambiguation, overview, images, isAdding, isSmallScreen, onModalClose, ...otherProps } = this.props; return ( {translate('AddNewArtist')}
{ isSmallScreen ? null:
}
{artistName}
{ !!disambiguation && ({disambiguation}) } { overview ?
: null }
Add {artistName}
); } } AddNewArtistModalContent.propTypes = { artistName: PropTypes.string.isRequired, disambiguation: PropTypes.string.isRequired, overview: PropTypes.string, images: PropTypes.arrayOf(PropTypes.object).isRequired, isAdding: PropTypes.bool.isRequired, addError: PropTypes.object, isSmallScreen: PropTypes.bool.isRequired, isWindows: PropTypes.bool.isRequired, onModalClose: PropTypes.func.isRequired, onAddArtistPress: PropTypes.func.isRequired }; export default AddNewArtistModalContent;