import PropTypes from 'prop-types'; import React, { Component } from 'react'; import Alert from 'Components/Alert'; import Icon from 'Components/Icon'; import Button from 'Components/Link/Button'; import LoadingIndicator from 'Components/Loading/LoadingIndicator'; 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 Table from 'Components/Table/Table'; import TableBody from 'Components/Table/TableBody'; import { icons, kinds } from 'Helpers/Props'; import translate from 'Utilities/String/translate'; import ArtistHistoryRowConnector from './ArtistHistoryRowConnector'; const columns = [ { name: 'eventType', isVisible: true }, { name: 'album', label: () => translate('Album'), isVisible: true }, { name: 'sourceTitle', label: () => translate('SourceTitle'), isVisible: true }, { name: 'quality', label: () => translate('Quality'), isVisible: true }, { name: 'customFormats', label: () => translate('CustomFormats'), isSortable: false, isVisible: true }, { name: 'customFormatScore', label: React.createElement(Icon, { name: icons.SCORE, title: 'Custom format score' }), isSortable: true, isVisible: true }, { name: 'date', label: () => translate('Date'), isVisible: true }, { name: 'actions', isVisible: true } ]; class ArtistHistoryModalContent extends Component { // // Render render() { const { albumId, isFetching, isPopulated, error, items, onMarkAsFailedPress, onModalClose } = this.props; const fullArtist = albumId == null; const hasItems = !!items.length; return ( History { isFetching && } { !isFetching && !!error && {translate('UnableToLoadHistory')} } { isPopulated && !hasItems && !error && {translate('NoHistory')} } { isPopulated && hasItems && !error && { items.map((item) => { return ( ); }) }
}
); } } ArtistHistoryModalContent.propTypes = { albumId: PropTypes.number, isFetching: PropTypes.bool.isRequired, isPopulated: PropTypes.bool.isRequired, error: PropTypes.object, items: PropTypes.arrayOf(PropTypes.object).isRequired, onMarkAsFailedPress: PropTypes.func.isRequired, onModalClose: PropTypes.func.isRequired }; export default ArtistHistoryModalContent;