/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import React from 'react'; import clsx from 'clsx'; import LastUpdated from '@theme/LastUpdated'; import type {Props} from '@theme/DocItem'; import EditThisPage from '@theme/EditThisPage'; import TagsListInline, { Props as TagsListInlineProps, } from '@theme/TagsListInline'; import styles from './styles.module.css'; import {ThemeClassNames} from '@docusaurus/theme-common'; function TagsRow(props: TagsListInlineProps) { return (
); } type EditMetaRowProps = Pick< Props['content']['metadata'], 'editUrl' | 'lastUpdatedAt' | 'lastUpdatedBy' | 'formattedLastUpdatedAt' >; function EditMetaRow({ editUrl, lastUpdatedAt, lastUpdatedBy, formattedLastUpdatedAt, }: EditMetaRowProps) { return (
{editUrl && }
{(lastUpdatedAt || lastUpdatedBy) && ( )}
); } export default function DocItemFooter(props: Props): JSX.Element { const {content: DocContent} = props; const {metadata} = DocContent; const {editUrl, lastUpdatedAt, formattedLastUpdatedAt, lastUpdatedBy, tags} = metadata; const canDisplayTagsRow = tags.length > 0; const canDisplayEditMetaRow = !!(editUrl || lastUpdatedAt || lastUpdatedBy); const canDisplayFooter = canDisplayTagsRow || canDisplayEditMetaRow; if (!canDisplayFooter) { return <>; } return ( ); }