import { FC } from 'react'; import { Filler } from '~/components/containers/Filler'; import { Group } from '~/components/containers/Group'; import { Padder } from '~/components/containers/Padder'; import { Sticky } from '~/components/containers/Sticky'; import { NodeAuthorBlock } from '~/components/node/NodeAuthorBlock'; import { NodeDeletedBadge } from '~/components/node/NodeDeletedBadge'; import { NodeNoComments } from '~/components/node/NodeNoComments'; import { NodeRelatedBlock } from '~/components/node/NodeRelatedBlock'; import { NodeTagsBlock } from '~/components/node/NodeTagsBlock'; import { NodeBacklinks } from '~/containers/node/NodeBacklinks'; import { NodeCommentFormSSR } from '~/containers/node/NodeCommentForm/ssr'; import { NodeComments } from '~/containers/node/NodeComments'; import { useNodeBlocks } from '~/hooks/node/useNodeBlocks'; import { useCommentContext } from '~/utils/context/CommentContextProvider'; import { useNodeContext } from '~/utils/context/NodeContextProvider'; import { useNodeRelatedContext } from '~/utils/context/NodeRelatedContextProvider'; import styles from './styles.module.scss'; interface IProps { commentsOrder: 'ASC' | 'DESC'; } const NodeBottomBlock: FC = ({ commentsOrder }) => { const { node, isLoading, backlinks } = useNodeContext(); const { comments, isLoading: isLoadingComments, onSaveComment, } = useCommentContext(); const { related, isLoading: isLoadingRelated } = useNodeRelatedContext(); const { inline } = useNodeBlocks(node, isLoading); if (node.deleted_at) { return ; } return ( {inline &&
{inline}
}
{isLoading || isLoadingComments || (!comments.length && !inline) ? ( ) : ( )}
); }; export { NodeBottomBlock };