import PropTypes from 'prop-types'; import React, { Component } from 'react'; import Alert from 'Components/Alert'; import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import Table from 'Components/Table/Table'; import TableBody from 'Components/Table/TableBody'; import { kinds } from 'Helpers/Props'; import translate from 'Utilities/String/translate'; import AuthorHistoryRowConnector from './AuthorHistoryRowConnector'; const columns = [ { name: 'eventType', isVisible: true }, { name: 'book', label: 'Book', isVisible: true }, { name: 'sourceTitle', label: 'Source Title', isVisible: true }, { name: 'quality', label: 'Quality', isVisible: true }, { name: 'date', label: 'Date', isVisible: true }, { name: 'details', label: 'Details', isVisible: true }, { name: 'actions', label: 'Actions', isVisible: true } ]; class AuthorHistoryTableContent extends Component { // // Render render() { const { bookId, isFetching, isPopulated, error, items, onMarkAsFailedPress } = this.props; const fullAuthor = bookId == null; const hasItems = !!items.length; return ( <> { isFetching && } { !isFetching && !!error && {translate('UnableToLoadHistory')} } { isPopulated && !hasItems && !error &&
{translate('NoHistory')}
} { isPopulated && hasItems && !error && { items.map((item) => { return ( ); }) }
} ); } } AuthorHistoryTableContent.propTypes = { bookId: PropTypes.number, isFetching: PropTypes.bool.isRequired, isPopulated: PropTypes.bool.isRequired, error: PropTypes.object, items: PropTypes.arrayOf(PropTypes.object).isRequired, onMarkAsFailedPress: PropTypes.func.isRequired }; export default AuthorHistoryTableContent;