Skip to content

Commit de1b8fa

Browse files
authored
Merge pull request tangly1024#2162 from tangly1024/feat/frame-work
Feat/frame work
2 parents 5174351 + 11d9eca commit de1b8fa

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+68
-66
lines changed

.env.local

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# 环境变量 @see https://www.nextjs.cn/docs/basic-features/environment-variables
2-
NEXT_PUBLIC_VERSION=4.3.1
2+
NEXT_PUBLIC_VERSION=4.3.2
33

44

55
# 可在此添加环境变量,去掉最左边的(# )注释即可

components/Busuanzi.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import busuanzi from '@/lib/busuanzi'
1+
import busuanzi from '@/lib/plugins/busuanzi'
22
import { useRouter } from 'next/router'
33
import { useGlobal } from '@/lib/global'
44
// import { useRouter } from 'next/router'

components/Gtag.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { useEffect } from 'react'
22
import { useRouter } from 'next/router'
3-
import * as gtag from '@/lib/gtag'
3+
import * as gtag from '@/lib/plugins/gtag'
44

55
const Gtag = () => {
66
const router = useRouter()

components/NotionPage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ const Code = dynamic(() =>
1717
const Equation = dynamic(() =>
1818
import('@/components/Equation').then(async (m) => {
1919
// 化学方程式
20-
await import('@/lib/mhchem')
20+
await import('@/lib/plugins/mhchem')
2121
return m.Equation
2222
}), { ssr: false }
2323
)

lib/notion/getNotionData.js lib/db/getSiteData.js

+11-8
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,19 @@ import BLOG from '@/blog.config'
22
import { getDataFromCache, setDataToCache } from '@/lib/cache/cache_manager'
33
import { getPostBlocks, getSingleBlock } from '@/lib/notion/getPostBlocks'
44
import { idToUuid } from 'notion-utils'
5-
import { deepClone } from '../utils'
6-
import { getAllCategories } from './getAllCategories'
7-
import getAllPageIds from './getAllPageIds'
8-
import { getAllTags } from './getAllTags'
9-
import getPageProperties from './getPageProperties'
10-
import { compressImage, mapImgUrl } from './mapImage'
11-
import { getConfigMapFromConfigPage } from './getNotionConfig'
5+
import { deepClone } from '@/lib/utils'
6+
import { getAllCategories } from '@/lib/notion/getAllCategories'
7+
import getAllPageIds from '@/lib/notion/getAllPageIds'
8+
import { getAllTags } from '@/lib/notion/getAllTags'
9+
import getPageProperties from '@/lib/notion/getPageProperties'
10+
import { compressImage, mapImgUrl } from '@/lib/notion/mapImage'
11+
import { getConfigMapFromConfigPage } from '@/lib/notion/getNotionConfig'
12+
13+
export { getAllTags } from '../notion/getAllTags'
14+
export { getPostBlocks } from '../notion/getPostBlocks'
1215

1316
/**
14-
* 获取博客数据
17+
* 获取博客数据; 基于Notion实现
1518
* @param {*} pageId
1619
* @param {*} from
1720
* @param latestPostCount 截取最新文章数量

lib/lang.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import zhTW from './lang/zh-TW'
55
import frFR from './lang/fr-FR'
66
import trTR from './lang/tr-TR'
77
import jaJP from './lang/ja-JP'
8-
import { getQueryVariable, isBrowser, mergeDeep } from './utils'
8+
import { getQueryVariable, isBrowser, mergeDeep } from '@/lib/utils'
99

1010
/**
1111
* 在这里配置所有支持的语言

lib/memorize.js

Whitespace-only changes.

lib/notion.js

-2
This file was deleted.

lib/notion/getAllPosts.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import BLOG from '@/blog.config'
22
import getAllPageIds from './getAllPageIds'
33
import getPageProperties from './getPageProperties'
4-
import { getNotionPageData } from '@/lib/notion/getNotionData'
4+
import { getNotionPageData } from '@/lib/db/getSiteData'
55
import { delCacheData } from '@/lib/cache/cache_manager'
66

77
/**

lib/notion/getNotion.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import BLOG from '@/blog.config'
22
import { idToUuid } from 'notion-utils'
3-
import formatDate from '../formatDate'
3+
import formatDate from '../utils/formatDate'
44
import { getPostBlocks } from './getPostBlocks'
55
import { defaultMapImageUrl } from 'react-notion-x'
66

lib/notion/getPageProperties.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { getTextContent, getDateValue } from 'notion-utils'
22
import { NotionAPI } from 'notion-client'
33
import BLOG from '@/blog.config'
4-
import formatDate from '../formatDate'
4+
import formatDate from '../utils/formatDate'
55
// import { createHash } from 'crypto'
66
import md5 from 'js-md5'
77
import { mapImgUrl } from './mapImage'

lib/notion/getPostBlocks.js

+6
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,12 @@ export async function getPostBlocks(id, from, slice) {
2727
return pageBlock
2828
}
2929

30+
/**
31+
* 针对在getDataBaseInfoByNotionAPI=>getPostBlocks中获取不到的溢出的block-id,用此方法另外抓取
32+
* @param {*} id
33+
* @param {*} from
34+
* @returns
35+
*/
3036
export async function getSingleBlock(id, from) {
3137
const cacheKey = 'single_block_' + id
3238
let pageBlock = await getDataFromCache(cacheKey)
File renamed without changes.
File renamed without changes.

lib/gtag.js lib/plugins/gtag.js

File renamed without changes.
File renamed without changes.
File renamed without changes.

lib/wow.js lib/plugins/wow.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const { loadExternalResource } = require('./utils');
1+
const { loadExternalResource } = require('../utils');
22

33
/**
44
* WOWjs动画,结合animate.css使用很方便

lib/rss.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import fs from 'fs'
22
import { Feed } from 'feed'
33
import BLOG from '@/blog.config'
44
import ReactDOMServer from 'react-dom/server'
5-
import { getPostBlocks } from './notion'
5+
import { getPostBlocks } from '@/lib/db/getSiteData'
66
import NotionPage from '@/components/NotionPage'
77

88
/**
File renamed without changes.

lib/utils.js lib/utils/index.js

File renamed without changes.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "notion-next",
3-
"version": "4.3.1",
3+
"version": "4.3.2",
44
"homepage": "https://github.com/tangly1024/NotionNext.git",
55
"license": "MIT",
66
"repository": {

pages/404.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import { useRouter } from 'next/router'
33
import { getLayoutByTheme } from '@/themes/theme'
44
import { siteConfig } from '@/lib/config'

pages/[prefix]/[slug]/[...suffix].js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import BLOG from '@/blog.config'
2-
import { getPostBlocks } from '@/lib/notion'
3-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData, getPostBlocks } from '@/lib/db/getSiteData'
43
import { idToUuid } from 'notion-utils'
54
import { getNotion } from '@/lib/notion/getNotion'
65
import Slug, { getRecommendPost } from '..'
7-
import { uploadDataToAlgolia } from '@/lib/algolia'
6+
import { uploadDataToAlgolia } from '@/lib/plugins/algolia'
87
import { checkContainHttp } from '@/lib/utils'
98

109
/**

pages/[prefix]/[slug]/index.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import BLOG from '@/blog.config'
2-
import { getPostBlocks } from '@/lib/notion'
3-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData, getPostBlocks } from '@/lib/db/getSiteData'
43
import { idToUuid } from 'notion-utils'
54
import { getNotion } from '@/lib/notion/getNotion'
65
import Slug, { getRecommendPost } from '..'
7-
import { uploadDataToAlgolia } from '@/lib/algolia'
6+
import { uploadDataToAlgolia } from '@/lib/plugins/algolia'
87
import { checkContainHttp } from '@/lib/utils'
98

109
/**

pages/[prefix]/index.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import BLOG from '@/blog.config'
2-
import { getPostBlocks } from '@/lib/notion'
3-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData, getPostBlocks } from '@/lib/db/getSiteData'
43
import { useEffect, useState } from 'react'
54
import { idToUuid } from 'notion-utils'
65
import { useRouter } from 'next/router'
@@ -9,7 +8,7 @@ import { getPageTableOfContents } from '@/lib/notion/getPageTableOfContents'
98
import { getLayoutByTheme } from '@/themes/theme'
109
import md5 from 'js-md5'
1110
import { checkContainHttp } from '@/lib/utils'
12-
import { uploadDataToAlgolia } from '@/lib/algolia'
11+
import { uploadDataToAlgolia } from '@/lib/plugins/algolia'
1312
import { siteConfig } from '@/lib/config'
1413

1514
/**

pages/api/subscribe.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import subscribeToMailchimpApi from '@/lib/mailchimp'
1+
import subscribeToMailchimpApi from '@/lib/plugins/mailchimp'
22

33
/**
44
* 接受邮件订阅

pages/archive/index.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import { useEffect } from 'react'
33
import BLOG from '@/blog.config'
44
import { useRouter } from 'next/router'
55
import { getLayoutByTheme } from '@/themes/theme'
66
import { isBrowser } from '@/lib/utils'
7-
import { formatDateFmt } from '@/lib/formatDate'
7+
import { formatDateFmt } from '@/lib/utils/formatDate'
88
import { siteConfig } from '@/lib/config'
99

1010
const ArchiveIndex = props => {

pages/category/[category]/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import React from 'react'
33
import BLOG from '@/blog.config'
44
import { useRouter } from 'next/router'

pages/category/[category]/page/[page].js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import React from 'react'
33
import BLOG from '@/blog.config'
44
import { useRouter } from 'next/router'

pages/category/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import React from 'react'
33
import BLOG from '@/blog.config'
44
import { useRouter } from 'next/router'

pages/index.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import BLOG from '@/blog.config'
2-
import { getPostBlocks } from '@/lib/notion'
3-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData, getPostBlocks } from '@/lib/db/getSiteData'
43
import { generateRss } from '@/lib/rss'
54
import { generateRobotsTxt } from '@/lib/robots.txt'
65
import { getLayoutByTheme } from '@/themes/theme'

pages/page/[page].js

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import BLOG from '@/blog.config'
2-
import { getPostBlocks } from '@/lib/notion'
3-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData, getPostBlocks } from '@/lib/db/getSiteData'
43
import { useRouter } from 'next/router'
54
import { getLayoutByTheme } from '@/themes/theme'
65
import { siteConfig } from '@/lib/config'

pages/search/[keyword]/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import { getDataFromCache } from '@/lib/cache/cache_manager'
33
import BLOG from '@/blog.config'
44
import { useRouter } from 'next/router'

pages/search/[keyword]/page/[page].js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import { getDataFromCache } from '@/lib/cache/cache_manager'
33
import BLOG from '@/blog.config'
44
import { useRouter } from 'next/router'

pages/search/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import { useRouter } from 'next/router'
33
import BLOG from '@/blog.config'
44
import { getLayoutByTheme } from '@/themes/theme'

pages/signin.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import BLOG from '@/blog.config'
2-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData } from '@/lib/db/getSiteData'
33
import { useRouter } from 'next/router'
44
import { getLayoutByTheme } from '@/themes/theme'
55
import { siteConfig } from '@/lib/config'

pages/signup.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import BLOG from '@/blog.config'
2-
import { getGlobalData } from '@/lib/notion/getNotionData'
2+
import { getGlobalData } from '@/lib/db/getSiteData'
33
import { useRouter } from 'next/router'
44
import { getLayoutByTheme } from '@/themes/theme'
55
import { siteConfig } from '@/lib/config'

pages/sitemap.xml.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// pages/sitemap.xml.js
22
import { getServerSideSitemap } from 'next-sitemap'
3-
import { getGlobalData } from '@/lib/notion/getNotionData'
3+
import { getGlobalData } from '@/lib/db/getSiteData'
44
import BLOG from '@/blog.config'
55

66
export const getServerSideProps = async (ctx) => {

pages/tag/[tag]/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import BLOG from '@/blog.config'
33
import { useRouter } from 'next/router'
44
import { getLayoutByTheme } from '@/themes/theme'

pages/tag/[tag]/page/[page].js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import BLOG from '@/blog.config'
33
import { useRouter } from 'next/router'
44
import { getLayoutByTheme } from '@/themes/theme'

pages/tag/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getGlobalData } from '@/lib/notion/getNotionData'
1+
import { getGlobalData } from '@/lib/db/getSiteData'
22
import BLOG from '@/blog.config'
33
import { useRouter } from 'next/router'
44
import { getLayoutByTheme } from '@/themes/theme'

themes/example/components/ArticleInfo.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import Link from 'next/link'
22
import { useGlobal } from '@/lib/global'
3-
import { formatDateFmt } from '@/lib/formatDate'
3+
import { formatDateFmt } from '@/lib/utils/formatDate'
44

55
export const ArticleInfo = (props) => {
66
const { post } = props

themes/fukasawa/components/ArticleDetail.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import Link from 'next/link'
77
import ArticleAround from './ArticleAround'
88
import { AdSlot } from '@/components/GoogleAdsense'
99
import LazyImage from '@/components/LazyImage'
10-
import { formatDateFmt } from '@/lib/formatDate'
10+
import { formatDateFmt } from '@/lib/utils/formatDate'
1111
import WWAds from '@/components/WWAds'
1212
import NotionIcon from '@/components/NotionIcon'
1313

themes/fukasawa/components/MailChimpForm.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { useEffect, useRef, useState } from 'react'
2-
import { subscribeToNewsletter } from '@/lib/mailchimp'
2+
import { subscribeToNewsletter } from '@/lib/plugins/mailchimp'
33
import { siteConfig } from '@/lib/config'
44
import CONFIG from '../config'
55
import { useGlobal } from '@/lib/global'

themes/heo/components/PostHeader.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import WavesArea from './WavesArea'
55
import { HashTag } from '@/components/HeroIcons'
66
import WordCount from '@/components/WordCount'
77
import LazyImage from '@/components/LazyImage'
8-
import { formatDateFmt } from '@/lib/formatDate'
8+
import { formatDateFmt } from '@/lib/utils/formatDate'
99

1010
export default function PostHeader({ post, siteInfo }) {
1111
if (!post) {

themes/heo/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ import WWAds from '@/components/WWAds'
4040
import { AdSlot } from '@/components/GoogleAdsense'
4141
import { siteConfig } from '@/lib/config'
4242
import { isBrowser } from '@/lib/utils'
43-
import { loadWowJS } from '@/lib/wow'
43+
import { loadWowJS } from '@/lib/plugins/wow'
4444

4545
/**
4646
* 基础布局 采用上中下布局,移动端使用顶部侧边导航栏

themes/hexo/components/BlogPostCardInfo.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import Link from 'next/link'
33
import TagItemMini from './TagItemMini'
44
import TwikooCommentCount from '@/components/TwikooCommentCount'
55
import { siteConfig } from '@/lib/config'
6-
import { formatDateFmt } from '@/lib/formatDate'
6+
import { formatDateFmt } from '@/lib/utils/formatDate'
77
import { checkContainHttp, sliceUrlFromHttp } from '@/lib/utils'
88
import NotionIcon from '@/components/NotionIcon'
99

themes/hexo/components/PostHeader.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import TagItemMini from './TagItemMini'
33
import { useGlobal } from '@/lib/global'
44
import NotionIcon from '@/components/NotionIcon'
55
import LazyImage from '@/components/LazyImage'
6-
import { formatDateFmt } from '@/lib/formatDate'
6+
import { formatDateFmt } from '@/lib/utils/formatDate'
77
import { siteConfig } from '@/lib/config'
88

99
export default function PostHeader({ post, siteInfo }) {

themes/landing/components/Footer.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { subscribeToNewsletter } from '@/lib/mailchimp'
1+
import { subscribeToNewsletter } from '@/lib/plugins/mailchimp'
22
import Link from 'next/link'
33
import { useEffect, useRef, useState } from 'react'
44
import CONFIG from '../config'

themes/landing/components/Newsletter.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { subscribeToNewsletter } from '@/lib/mailchimp'
1+
import { subscribeToNewsletter } from '@/lib/plugins/mailchimp'
22
import { useEffect, useRef, useState } from 'react'
33
import CONFIG from '../config'
44
import { siteConfig } from '@/lib/config'

themes/matery/components/ArticleInfo.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import Link from 'next/link'
22
import { useGlobal } from '@/lib/global'
33
import TagItemMiddle from './TagItemMiddle'
44
import WordCount from './WordCount'
5-
import { formatDateFmt } from '@/lib/formatDate'
5+
import { formatDateFmt } from '@/lib/utils/formatDate'
66

77
export const ArticleInfo = (props) => {
88
const { post } = props

themes/matery/components/BlogPostCard.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import TagItemMini from './TagItemMini'
44
import CONFIG from '../config'
55
import TwikooCommentCount from '@/components/TwikooCommentCount'
66
import LazyImage from '@/components/LazyImage'
7-
import { formatDateFmt } from '@/lib/formatDate'
7+
import { formatDateFmt } from '@/lib/utils/formatDate'
88
import { checkContainHttp, sliceUrlFromHttp } from '@/lib/utils'
99
import NotionIcon from '@/components/NotionIcon'
1010

themes/next/components/ArticleDetail.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import NotionPage from '@/components/NotionPage'
1212
import CONFIG from '../config'
1313
import NotionIcon from '@/components/NotionIcon'
1414
import LazyImage from '@/components/LazyImage'
15-
import { formatDateFmt } from '@/lib/formatDate'
15+
import { formatDateFmt } from '@/lib/utils/formatDate'
1616
import { siteConfig } from '@/lib/config'
1717
import WWAds from '@/components/WWAds'
1818

themes/next/components/BlogPostCard.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import CONFIG from '../config'
77
import NotionPage from '@/components/NotionPage'
88
import NotionIcon from '@/components/NotionIcon'
99
import TwikooCommentCount from '@/components/TwikooCommentCount'
10-
import { formatDateFmt } from '@/lib/formatDate'
10+
import { formatDateFmt } from '@/lib/utils/formatDate'
1111
import { siteConfig } from '@/lib/config'
1212
import { checkContainHttp, sliceUrlFromHttp } from '@/lib/utils'
1313

0 commit comments

Comments
 (0)