mirror of
https://github.com/d0zingcat/NotionNext.git
synced 2026-05-14 07:26:52 +00:00
fix gitbook build
This commit is contained in:
@@ -182,7 +182,7 @@ export function getNavPages({ allPages }) {
|
||||
const allNavPages = allPages.filter(post => {
|
||||
return post && post?.slug && (!post?.slug?.startsWith('http')) && post?.type === 'Post' && post?.status === 'Published'
|
||||
})
|
||||
const result = allNavPages.map(item => ({ id: item.id, title: item.title || null, category: item.category || null, tags: item.tags || null, summary: item.summary || null, slug: item.slug }))
|
||||
const result = allNavPages.map(item => ({ id: item.id, title: item.title || '', category: item.category || null, tags: item.tags || null, summary: item.summary || null, slug: item.slug }))
|
||||
|
||||
const groupedArray = result.reduce((groups, item) => {
|
||||
const categoryName = item.category ? item.category.join('/') : '' // 将category转换为字符串
|
||||
|
||||
@@ -10,7 +10,7 @@ const BlogPostCard = ({ post, className }) => {
|
||||
<div key={post.id} className={`${className} py-1 cursor-pointer px-2 hover:bg-gray-50 rounded-md dark:hover:bg-gray-600 ${currentSelected ? 'bg-green-50 text-green-500' : ''}`}>
|
||||
<div className="flex flex-col w-full">
|
||||
<Link href={`${BLOG.SUB_PATH}/${post.slug}`} passHref>
|
||||
{post.title}
|
||||
<a>{post.title}</a>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -17,22 +17,26 @@ const NavPostItem = (props) => {
|
||||
changeIsOpen(!isOpen)
|
||||
}
|
||||
|
||||
if (group.category) {
|
||||
return <>
|
||||
if (group?.category) {
|
||||
return <div>
|
||||
<div
|
||||
onClick={toggleOpenSubMenu}
|
||||
className='flex justify-between text-sm font-sans cursor-pointer p-2 hover:bg-gray-50 rounded-md dark:hover:bg-gray-600' key={group.category}>
|
||||
<span>{group.category}</span>
|
||||
className='flex justify-between text-sm font-sans cursor-pointer p-2 hover:bg-gray-50 rounded-md dark:hover:bg-gray-600' key={group?.category}>
|
||||
<span>{group?.category}</span>
|
||||
<div className='inline-flex items-center select-none pointer-events-none '><i className={`px-2 fas fa-chevron-left transition-all duration-200 ${isOpen ? '-rotate-90' : ''}`}></i></div>
|
||||
</div>
|
||||
<Collapse isOpen={isOpen} onHeightChange={props.onHeightChange}>
|
||||
{group.items?.map(post => (<div key={post.id} className='ml-3 border-l'>
|
||||
{group?.items?.map(post => (<div key={post.id} className='ml-3 border-l'>
|
||||
<BlogPostCard className='text-sm ml-3' post={post} /></div>))
|
||||
}
|
||||
</Collapse>
|
||||
</>
|
||||
</div>
|
||||
} else {
|
||||
return <div> {group.items?.map(post => (<BlogPostCard key={post.id} post={post} className='text-sm' />))}</div>
|
||||
return <div>
|
||||
{group?.items?.map(post => (<div key={post.id} className='ml-3 border-l'>
|
||||
<BlogPostCard className='text-sm ml-3' post={post} /></div>))
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import NavPostListEmpty from './NavPostListEmpty'
|
||||
import { useRouter } from 'next/router'
|
||||
import NavPostItem from './NavPostItem'
|
||||
import { useGitBookGlobal } from '..'
|
||||
|
||||
/**
|
||||
* 博客列表滚动分页
|
||||
@@ -11,13 +10,13 @@ import { useGitBookGlobal } from '..'
|
||||
* @constructor
|
||||
*/
|
||||
const NavPostList = (props) => {
|
||||
const { filteredPosts } = useGitBookGlobal()
|
||||
const { filteredPosts } = props
|
||||
|
||||
const router = useRouter()
|
||||
let selectedSth = false
|
||||
|
||||
// 处理是否选中
|
||||
filteredPosts.map((group) => {
|
||||
filteredPosts?.map((group) => {
|
||||
let groupSelected = false
|
||||
for (const post of group?.items) {
|
||||
if (router.asPath.split('?')[0] === '/' + post.slug) {
|
||||
|
||||
@@ -10,6 +10,7 @@ import NavPostList from './NavPostList'
|
||||
*/
|
||||
const PageNavDrawer = (props) => {
|
||||
const { pageNavVisible, changePageNavVisible } = useGitBookGlobal()
|
||||
const { filteredPosts } = props
|
||||
const switchVisible = () => {
|
||||
changePageNavVisible(!pageNavVisible)
|
||||
}
|
||||
@@ -22,7 +23,7 @@ const PageNavDrawer = (props) => {
|
||||
' overflow-y-hidden shadow-card w-72 duration-200 fixed left-1 top-16 rounded py-2 bg-white dark:bg-gray-600'}>
|
||||
<div className='dark:text-gray-400 text-gray-600 h-96 overflow-y-scroll p-3'>
|
||||
{/* 所有文章列表 */}
|
||||
<NavPostList />
|
||||
<NavPostList filteredPosts={filteredPosts} />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -71,10 +71,10 @@ const LayoutBase = (props) => {
|
||||
{slotLeft}
|
||||
<SearchInput className='my-3 rounded-md' />
|
||||
{/* 所有文章列表 */}
|
||||
<NavPostList />
|
||||
<NavPostList filteredPosts={filteredPosts} />
|
||||
|
||||
<div className='mt-2'>
|
||||
<Footer {...props} />
|
||||
<Footer {...props}/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -84,6 +84,7 @@ const LayoutBase = (props) => {
|
||||
<div id='container-inner' className='w-full px-7 max-w-3xl justify-center mx-auto'>
|
||||
{slotTop}
|
||||
<AdSlot type='in-article' />
|
||||
|
||||
<Transition
|
||||
show={!onLoading}
|
||||
appear={true}
|
||||
@@ -142,7 +143,7 @@ const LayoutBase = (props) => {
|
||||
</div>}
|
||||
|
||||
{/* 移动端导航抽屉 */}
|
||||
<PageNavDrawer {...props} />
|
||||
<PageNavDrawer {...props} filteredPosts={filteredPosts} />
|
||||
|
||||
{/* 移动端底部导航栏 */}
|
||||
{/* <BottomMenuBar {...props} className='block md:hidden' /> */}
|
||||
@@ -177,7 +178,7 @@ const LayoutIndex = (props) => {
|
||||
})
|
||||
}, [])
|
||||
|
||||
return <LayoutBase {...props}></LayoutBase>
|
||||
return <LayoutBase {...props}/>
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -187,7 +188,7 @@ const LayoutIndex = (props) => {
|
||||
* @returns
|
||||
*/
|
||||
const LayoutPostList = (props) => {
|
||||
return <LayoutBase {...props}></LayoutBase>
|
||||
return <LayoutBase {...props}/>
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user