PageContentFooter.tsx 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. import type { IPage, IPagePopulatedToShowRevision } from '@growi/core';
  2. import dynamic from 'next/dynamic';
  3. import styles from './PageContentFooter.module.scss';
  4. const AuthorInfo = dynamic(() => import('~/components/AuthorInfo').then(mod => mod.AuthorInfo), { ssr: false });
  5. export type PageContentFooterProps = {
  6. page: IPage | IPagePopulatedToShowRevision,
  7. }
  8. export const PageContentFooter = (props: PageContentFooterProps): JSX.Element => {
  9. const { page } = props;
  10. const {
  11. creator, lastUpdateUser, createdAt, updatedAt,
  12. } = page;
  13. if (page.isEmpty) {
  14. return <></>;
  15. }
  16. return (
  17. <div className={`${styles['page-content-footer']} page-content-footer py-4 d-edit-none d-print-none}`}>
  18. <div className="container-lg grw-container-convertible">
  19. <div className="page-meta">
  20. <AuthorInfo user={creator} date={createdAt} mode="create" locate="footer" />
  21. <AuthorInfo user={lastUpdateUser} date={updatedAt} mode="update" locate="footer" />
  22. </div>
  23. </div>
  24. </div>
  25. );
  26. };