From b72e8e91cba26e163923b0c277b845d18d7224b0 Mon Sep 17 00:00:00 2001 From: Blackberry009 <765042894@qq.com> Date: Mon, 30 Jun 2025 16:26:26 +0800 Subject: [PATCH] reverse format --- blog.config.js | 46 +++++++++++++++++++------------------- conf/dev.config.js | 2 +- lib/db/getSiteData.js | 52 +++++++++++++++++++++---------------------- 3 files changed, 50 insertions(+), 50 deletions(-) diff --git a/blog.config.js b/blog.config.js index 2ca1c0fc..dc64824e 100644 --- a/blog.config.js +++ b/blog.config.js @@ -1,32 +1,32 @@ -// 注:process.env.XX 是 Vercel 的环境变量,配置方式见:https://docs.tangly1024.com/article/how-to-config-notion-next#c4768010ae7d44609b744e79e2f9959a +// 注: process.env.XX是Vercel的环境变量,配置方式见:https://docs.tangly1024.com/article/how-to-config-notion-next#c4768010ae7d44609b744e79e2f9959a const BLOG = { // Important page_id!!!Duplicate Template from https://www.notion.so/tanghh/02ab3b8678004aa69e9e415905ef32a5 NOTION_PAGE_ID: - process.env.NOTION_PAGE_ID || '20cb7f4f464a80db8541cbd0da70a64b', - THEME: process.env.NEXT_PUBLIC_THEME || 'typography', // 当前主题,在 themes 文件夹下可找到所有支持的主题;主题名称就是文件夹名,例如 example,fukasawa,gitbook,heo,hexo,landing,matery,medium,next,nobelium,plog,simple + process.env.NOTION_PAGE_ID || + '02ab3b8678004aa69e9e415905ef32a5,en:7c1d570661754c8fbc568e00a01fd70e', + THEME: process.env.NEXT_PUBLIC_THEME || 'simple', // 当前主题,在themes文件夹下可找到所有支持的主题;主题名称就是文件夹名,例如 example,fukasawa,gitbook,heo,hexo,landing,matery,medium,next,nobelium,plog,simple LANG: process.env.NEXT_PUBLIC_LANG || 'zh-CN', // e.g 'zh-CN','en-US' see /lib/lang.js for more. SINCE: process.env.NEXT_PUBLIC_SINCE || 2021, // e.g if leave this empty, current year will be used. - PSEUDO_STATIC: process.env.NEXT_PUBLIC_PSEUDO_STATIC || false, // 伪静态路径,开启后所有文章 URL 都以 .html 结尾。 - NEXT_REVALIDATE_SECOND: process.env.NEXT_PUBLIC_REVALIDATE_SECOND || 5, // 更新缓存间隔 单位 (秒);即每个页面有 5 秒的纯静态期、此期间无论多少次访问都不会抓取 notion 数据;调大该值有助于节省 Vercel 资源、同时提升访问速率,但也会使文章更新有延迟。 - APPEARANCE: process.env.NEXT_PUBLIC_APPEARANCE || 'light', // ['light', 'dark', 'auto'], // light 日间模式,dark 夜间模式,auto 根据时间和主题自动夜间模式 - APPEARANCE_DARK_TIME: process.env.NEXT_PUBLIC_APPEARANCE_DARK_TIME || [18, 6], // 夜间模式起至时间,false 时关闭根据时间自动切换夜间模式 + PSEUDO_STATIC: process.env.NEXT_PUBLIC_PSEUDO_STATIC || false, // 伪静态路径,开启后所有文章URL都以 .html 结尾。 + NEXT_REVALIDATE_SECOND: process.env.NEXT_PUBLIC_REVALIDATE_SECOND || 5, // 更新缓存间隔 单位(秒);即每个页面有5秒的纯静态期、此期间无论多少次访问都不会抓取notion数据;调大该值有助于节省Vercel资源、同时提升访问速率,但也会使文章更新有延迟。 + APPEARANCE: process.env.NEXT_PUBLIC_APPEARANCE || 'light', // ['light', 'dark', 'auto'], // light 日间模式 , dark夜间模式, auto根据时间和主题自动夜间模式 + APPEARANCE_DARK_TIME: process.env.NEXT_PUBLIC_APPEARANCE_DARK_TIME || [18, 6], // 夜间模式起至时间,false时关闭根据时间自动切换夜间模式 AUTHOR: process.env.NEXT_PUBLIC_AUTHOR || 'NotionNext', // 您的昵称 例如 tangly1024 BIO: process.env.NEXT_PUBLIC_BIO || '一个普通的干饭人🍚', // 作者简介 LINK: process.env.NEXT_PUBLIC_LINK || 'https://tangly1024.com', // 网站地址 KEYWORDS: process.env.NEXT_PUBLIC_KEYWORD || 'Notion, 博客', // 网站关键词 英文逗号隔开 - BLOG_FAVICON: process.env.NEXT_PUBLIC_FAVICON || '/favicon.ico', // blog favicon 配置,默认使用 /public/favicon.ico,支持在线图片,如 https://img.imesong.com/favicon.png - BEI_AN: process.env.NEXT_PUBLIC_BEI_AN || '', // 备案号 闽 ICP 备 XXXXXX - BEI_AN_LINK: - process.env.NEXT_PUBLIC_BEI_AN_LINK || 'https://beian.miit.gov.cn/', // 备案查询链接,如果用了萌备等备案请在这里填写 + BLOG_FAVICON: process.env.NEXT_PUBLIC_FAVICON || '/favicon.ico', // blog favicon 配置, 默认使用 /public/favicon.ico,支持在线图片,如 https://img.imesong.com/favicon.png + BEI_AN: process.env.NEXT_PUBLIC_BEI_AN || '', // 备案号 闽ICP备XXXXXX + BEI_AN_LINK: process.env.NEXT_PUBLIC_BEI_AN_LINK || 'https://beian.miit.gov.cn/', // 备案查询链接,如果用了萌备等备案请在这里填写 - // RSS 订阅 - ENABLE_RSS: process.env.NEXT_PUBLIC_ENABLE_RSS || true, // 是否开启 RSS 订阅功能 + // RSS订阅 + ENABLE_RSS: process.env.NEXT_PUBLIC_ENABLE_RSS || true, // 是否开启RSS订阅功能 // 其它复杂配置 - // 原配置文件过长,且并非所有人都会用到,故此将配置拆分到/conf/目录下,按需找到对应文件并修改即可 + // 原配置文件过长,且并非所有人都会用到,故此将配置拆分到/conf/目录下, 按需找到对应文件并修改即可 ...require('./conf/comment.config'), // 评论插件 ...require('./conf/contact.config'), // 作者联系方式配置 ...require('./conf/post.config'), // 文章与列表配置 @@ -38,11 +38,11 @@ const BLOG = { ...require('./conf/animation.config'), // 动效美化效果 ...require('./conf/widget.config'), // 悬浮在网页上的挂件,聊天客服、宠物挂件、音乐播放器等 ...require('./conf/ad.config'), // 广告营收插件 - ...require('./conf/plugin.config'), // 其他第三方插件 algolia 全文索引 + ...require('./conf/plugin.config'), // 其他第三方插件 algolia全文索引 // 高级用法 ...require('./conf/layout-map.config'), // 路由与布局映射自定义,例如自定义特定路由的页面布局 - ...require('./conf/notion.config'), // 读取 notion 数据库相关的扩展配置,例如自定义表头 + ...require('./conf/notion.config'), // 读取notion数据库相关的扩展配置,例如自定义表头 ...require('./conf/dev.config'), // 开发、调试时需要关注的配置 // 自定义外部脚本,外部样式 @@ -50,22 +50,22 @@ const BLOG = { CUSTOM_EXTERNAL_CSS: [''], // e.g. ['http://xx.com/style.css','http://xx.com/style.css'] // 自定义菜单 - CUSTOM_MENU: process.env.NEXT_PUBLIC_CUSTOM_MENU || true, // 支持 Menu 类型的菜单,替代了 3.12 版本前的 Page 类型 + CUSTOM_MENU: process.env.NEXT_PUBLIC_CUSTOM_MENU || true, // 支持Menu类型的菜单,替代了3.12版本前的Page类型 // 文章列表相关设置 - CAN_COPY: process.env.NEXT_PUBLIC_CAN_COPY || true, // 是否允许复制页面内容 默认允许,如果设置为 false、则全栈禁止复制内容。 + CAN_COPY: process.env.NEXT_PUBLIC_CAN_COPY || true, // 是否允许复制页面内容 默认允许,如果设置为false、则全栈禁止复制内容。 - // 侧栏布局 是否反转 (左变右,右变左) 已支持主题:hexo next medium fukasawa example + // 侧栏布局 是否反转(左变右,右变左) 已支持主题: hexo next medium fukasawa example LAYOUT_SIDEBAR_REVERSE: process.env.NEXT_PUBLIC_LAYOUT_SIDEBAR_REVERSE || false, - // 欢迎语打字效果,Hexo,Matery 主题支持,英文逗号隔开多个欢迎语。 + // 欢迎语打字效果,Hexo,Matery主题支持, 英文逗号隔开多个欢迎语。 GREETING_WORDS: process.env.NEXT_PUBLIC_GREETING_WORDS || - 'Hi,我是一个程序员,Hi,我是一个打工人,Hi,我是一个干饭人,欢迎来到我的博客🎉', + 'Hi,我是一个程序员, Hi,我是一个打工人,Hi,我是一个干饭人,欢迎来到我的博客🎉', - // uuid 重定向至 slug + // uuid重定向至 slug UUID_REDIRECT: process.env.UUID_REDIRECT || false } -module.exports = BLOG +module.exports = BLOG \ No newline at end of file diff --git a/conf/dev.config.js b/conf/dev.config.js index ea324f96..c34a8c64 100644 --- a/conf/dev.config.js +++ b/conf/dev.config.js @@ -19,7 +19,7 @@ module.exports = { BUNDLE_ANALYZER: process.env.ANALYZE === 'true' || false, // 是否展示编译依赖内容与大小 VERSION: (() => { try { - // 优先使用环境变量,否则从 package.json 中获取版本号 + // 优先使用环境变量,否则从package.json中获取版本号 return ( process.env.NEXT_PUBLIC_VERSION || require('../package.json').version ) diff --git a/lib/db/getSiteData.js b/lib/db/getSiteData.js index cf26b291..95aec436 100755 --- a/lib/db/getSiteData.js +++ b/lib/db/getSiteData.js @@ -19,7 +19,7 @@ export { getPost } from '../notion/getNotionPost' export { getPage as getPostBlocks } from '../notion/getPostBlocks' /** - * 获取博客数据; 基于 Notion 实现 + * 获取博客数据; 基于Notion实现 * @param {*} pageId * @param {*} from * @param {*} locale 语言 zh|en|jp 等等 @@ -31,7 +31,7 @@ export async function getGlobalData({ from, locale }) { - // 获取站点数据,如果 pageId 有逗号隔开则分次取数据 + // 获取站点数据 , 如果pageId有逗号隔开则分次取数据 const siteIds = pageId?.split(',') || [] let data = EmptyData(pageId) @@ -65,7 +65,7 @@ export async function getGlobalData({ * @returns {Promise} */ export async function getSiteDataByPageId({ pageId, from }) { - // 获取 NOTION 原始数据,此接支持 mem 缓存。 + // 获取NOTION原始数据,此接支持mem缓存。 return await getOrSetDataWithCache( `site_data_${pageId}`, async (pageId, from) => { @@ -101,7 +101,7 @@ const EmptyData = pageId => { allPages: [ { id: 1, - title: `无法获取 Notion 数据,请检查 Notion_ID: \n 当前 ${pageId}`, + title: `无法获取Notion数据,请检查Notion_ID: \n 当前 ${pageId}`, summary: '访问文档获取帮助 → https://docs.tangly1024.com/article/vercel-deploy-notion-next', status: 'Published', @@ -137,7 +137,7 @@ const EmptyData = pageId => { } /** - * 将 Notion 数据转站点数据 + * 将Notion数据转站点数据 * 这里统一对数据格式化 * @returns {Promise} */ @@ -149,7 +149,7 @@ async function convertNotionToSiteData(pageId, from, pageRecordMap) { pageId = idToUuid(pageId) let block = pageRecordMap.block || {} const rawMetadata = block[pageId]?.value - // Check Type Page-Database 和 Inline-Database + // Check Type Page-Database和Inline-Database if ( rawMetadata?.type !== 'collection_view_page' && rawMetadata?.type !== 'collection_view' @@ -175,7 +175,7 @@ async function convertNotionToSiteData(pageId, from, pageRecordMap) { if (pageIds?.length === 0) { console.error( - '获取到的文章列表为空,请检查 notion 模板', + '获取到的文章列表为空,请检查notion模板', collectionQuery, collection, collectionView, @@ -183,10 +183,10 @@ async function convertNotionToSiteData(pageId, from, pageRecordMap) { pageRecordMap ) } else { - // console.log('有效 Page 数量', pageIds?.length) + // console.log('有效Page数量', pageIds?.length) } - // 抓取主数据库最多抓取 1000 个 blocks,溢出的数 block 这里统一抓取一遍 + // 抓取主数据库最多抓取1000个blocks,溢出的数block这里统一抓取一遍 const blockIdsNeedFetch = [] for (let i = 0; i < pageIds.length; i++) { const id = pageIds[i] @@ -369,21 +369,21 @@ function handleDataBeforeReturn(db) { p.date.time_zone ) console.log( - '[定时发布] 隐藏--> 文章:', + '[定时发布] 隐藏--> 文章:', p.title, - '当前时间戳:', + '当前时间戳:', currentTimestamp, - '目标时间戳:', + '目标时间戳:', startTimestamp, '-', endTimestamp ) console.log( - '[定时发布] 隐藏--> 文章:', + '[定时发布] 隐藏--> 文章:', p.title, - '当前时间:', + '当前时间:', new Date(), - '目标时间:', + '目标时间:', p.date ) // 隐藏 @@ -431,7 +431,7 @@ function cleanPages(allPages, tagOptions) { } /** - * 清理一组数据的 id + * 清理一组数据的id * @param {*} items * @returns */ @@ -449,7 +449,7 @@ function shortenIds(items) { } /** - * 清理一组数据的 id + * 清理一组数据的id * @param {*} items * @returns */ @@ -466,7 +466,7 @@ function cleanIds(items) { } /** - * 清理和过滤 tagOptions + * 清理和过滤tagOptions * @param {*} tagOptions * @returns */ @@ -482,7 +482,7 @@ function cleanTagOptions(tagOptions) { } /** - * 清理 block 数据 + * 清理block数据 */ function cleanBlock(item) { const post = deepClone(item) @@ -537,7 +537,7 @@ function getLatestPosts({ allPages, from, latestPostCount }) { /** * 获取用户自定义单页菜单 - * 旧版本,不读取 Menu 菜单,而是读取 type=Page 生成菜单 + * 旧版本,不读取Menu菜单,而是读取type=Page生成菜单 * @param notionPageData * @returns {Promise<[]|*[]>} */ @@ -625,7 +625,7 @@ function getCategoryOptions(schema) { function getSiteInfo({ collection, block, NOTION_CONFIG }) { const defaultTitle = NOTION_CONFIG?.TITLE || 'NotionNext BLOG' const defaultDescription = - NOTION_CONFIG?.DESCRIPTION || '这是一个由 NotionNext 生成的站点' + NOTION_CONFIG?.DESCRIPTION || '这是一个由NotionNext生成的站点' const defaultPageCover = NOTION_CONFIG?.HOME_BANNER_IMAGE || '/bg_image.jpg' const defaultIcon = NOTION_CONFIG?.AVATAR || '/avatar.svg' const defaultLink = NOTION_CONFIG?.LINK || BLOG.LINK @@ -658,7 +658,7 @@ function getSiteInfo({ collection, block, NOTION_CONFIG }) { // 站点网址 const link = NOTION_CONFIG?.LINK || defaultLink - // 站点图标不能是 emoji + // 站点图标不能是emoji const emojiPattern = /\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F]/g if (!icon || emojiPattern.test(icon)) { icon = defaultIcon @@ -674,7 +674,7 @@ function getSiteInfo({ collection, block, NOTION_CONFIG }) { * @param {string} date.start_time - 开始时间(可选,格式:HH:mm) * @param {string} date.end_date - 结束日期(格式:YYYY-MM-DD) * @param {string} date.end_time - 结束时间(可选,格式:HH:mm) - * @param {string} date.time_zone - 时区(IANA 格式,如 "Asia/Shanghai") + * @param {string} date.time_zone - 时区(IANA格式,如 "Asia/Shanghai") * @returns {boolean} 是否在范围内 */ function isInRange(title, date = {}) { @@ -812,8 +812,8 @@ function getTimestamp(date, time = '00:00', time_zone) { /** * 获取导航用的精减文章列表 - * gitbook 主题用到,只保留文章的标题分类标签分类信息,精减掉摘要密码日期等数据 - * 导航页面的条件,必须是 Posts + * gitbook主题用到,只保留文章的标题分类标签分类信息,精减掉摘要密码日期等数据 + * 导航页面的条件,必须是Posts * @param {*} param0 */ export function getNavPages({ allPages }) { @@ -840,4 +840,4 @@ export function getNavPages({ allPages }) { publishDate: item.publishDate, ext: item.ext || {} })) -} +} \ No newline at end of file