Page.jsx 817 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import React from 'react';
  2. import PropTypes from 'prop-types';
  3. import UserPicture from '../User/UserPicture';
  4. import PageListMeta from './PageListMeta';
  5. import PagePathLabel from './PagePathLabel';
  6. export default class Page extends React.Component {
  7. render() {
  8. const {
  9. page, noLink,
  10. } = this.props;
  11. let pagePathElem = <PagePathLabel page={page} additionalClassNames={['mx-1']} />;
  12. if (!noLink) {
  13. pagePathElem = <a className="text-break" href={page.path}>{pagePathElem}</a>;
  14. }
  15. return (
  16. <>
  17. <UserPicture user={page.lastUpdateUser} noLink={noLink} />
  18. {pagePathElem}
  19. <PageListMeta page={page} />
  20. </>
  21. );
  22. }
  23. }
  24. Page.propTypes = {
  25. page: PropTypes.object.isRequired,
  26. noLink: PropTypes.bool,
  27. };
  28. Page.defaultProps = {
  29. noLink: false,
  30. };