import BLOG from '@/blog.config' import BlogAround from '@/components/BlogAround' import Comment from '@/components/Comment' import RecommendPosts from '@/components/RecommendPosts' import ShareBar from '@/components/ShareBar' import TagItem from '@/components/TagItem' import TocDrawer from '@/components/TocDrawer' import TocDrawerButton from '@/components/TocDrawerButton' import formatDate from '@/lib/formatDate' import { useGlobal } from '@/lib/global' import { faEye, faFolderOpen } from '@fortawesome/free-solid-svg-icons' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import Image from 'next/image' import Link from 'next/link' import { useRouter } from 'next/router' import 'prismjs' import 'prismjs/components/prism-bash' import 'prismjs/components/prism-javascript' import 'prismjs/components/prism-markup' import 'prismjs/components/prism-python' import 'prismjs/components/prism-typescript' import { useRef } from 'react' import { Code, Collection, CollectionRow, Equation, NotionRenderer } from 'react-notion-x' import ArticleCopyright from './ArticleCopyright' import WordCount from './WordCount' /** * * @param {*} param0 * @returns */ export default function ArticleDetail ({ post, blockMap, recommendPosts, prev, next }) { const targetRef = useRef(null) const drawerRight = useRef(null) const url = BLOG.link + useRouter().asPath const { locale } = useGlobal() const date = formatDate(post?.date?.start_date || post.createdTime, locale.LOCALE) return (<>