import React, { Component, Fragment } from 'react'; import PropTypes from 'prop-types'; import { gettext } from '../utils/constants'; const propTypes = { gotoPreviousPage: PropTypes.func.isRequired, gotoNextPage: PropTypes.func.isRequired, currentPage: PropTypes.number.isRequired, hasNextPage: PropTypes.bool.isRequired, canResetPerPage: PropTypes.bool.isRequired, resetPerPage: PropTypes.func, curPerPage: PropTypes.number, }; class Paginator extends Component { resetPerPage = (perPage) => { this.props.resetPerPage(perPage); } goToPrevious = (e) => { e.preventDefault(); this.props.gotoPreviousPage(); } goToNext = (e) => { e.preventDefault(); this.props.gotoNextPage(); } render() { let { curPerPage } = this.props; return (
{this.props.currentPage != 1 && {gettext('Previous')} } {this.props.hasNextPage && {gettext('Next')} } {(this.props.currentPage != 1 || this.props.hasNextPage) && | } {this.props.canResetPerPage && {gettext('Per page:')} {return this.resetPerPage(25);}}>25 {return this.resetPerPage(50);}}>50 {return this.resetPerPage(100);}}>100 }
); } } Paginator.propTypes = propTypes; export default Paginator;