mirror of
https://github.com/d0zingcat/NotionNext.git
synced 2026-06-07 07:26:46 +00:00
Merge branch 'main' of https://github.com/tangly1024/NotionNext
This commit is contained in:
@@ -180,6 +180,10 @@
|
|||||||
<a href="https://github.com/emengweb" style="display:inline-block;width:80px"><img src="https://avatars.githubusercontent.com/u/31469739" width="64px;" alt="emengweb"/><br/><sub><b>emengweb</b></sub></a><br/><a href="https://github.com/tangly1024/NotionNext/commits?author=emengweb" title="emengweb" >🔧 🐛</a>
|
<a href="https://github.com/emengweb" style="display:inline-block;width:80px"><img src="https://avatars.githubusercontent.com/u/31469739" width="64px;" alt="emengweb"/><br/><sub><b>emengweb</b></sub></a><br/><a href="https://github.com/tangly1024/NotionNext/commits?author=emengweb" title="emengweb" >🔧 🐛</a>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
|
<td align="center">
|
||||||
|
<a href="https://github.com/kitety" style="display:inline-block;width:80px"><img src="https://avatars.githubusercontent.com/u/22906933" width="64px;" alt="kitety"/><br/><sub><b>kitety</b></sub></a><br/><a href="https://github.com/tangly1024/NotionNext/commits?author=kitety" title="kitety" >🔧 🐛</a>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ const BLOG = {
|
|||||||
CONTACT_LINKEDIN: process.env.NEXT_PUBLIC_CONTACT_LINKEDIN || '', // 你的linkedIn 首页
|
CONTACT_LINKEDIN: process.env.NEXT_PUBLIC_CONTACT_LINKEDIN || '', // 你的linkedIn 首页
|
||||||
CONTACT_INSTAGRAM: process.env.NEXT_PUBLIC_CONTACT_INSTAGRAM || '', // 您的instagram地址
|
CONTACT_INSTAGRAM: process.env.NEXT_PUBLIC_CONTACT_INSTAGRAM || '', // 您的instagram地址
|
||||||
|
|
||||||
NOTION_HOST: process.env.NEXT_PUBLIC_NOTION_HOST || 'https://www.notion.so', // Notion域名,您可以选择用自己的域名进行反向代理
|
NOTION_HOST: process.env.NEXT_PUBLIC_NOTION_HOST || 'https://www.notion.so', // Notion域名,您可以选择用自己的域名进行反向代理,如果不懂得什么是反向代理,请勿修改此项
|
||||||
|
|
||||||
// 网站字体
|
// 网站字体
|
||||||
FONT_STYLE: process.env.NEXT_PUBLIC_FONT_STYLE || 'font-serif', // ['font-serif','font-sans'] 两种可选,分别是衬线和无衬线: 参考 https://www.jianshu.com/p/55e410bd2115
|
FONT_STYLE: process.env.NEXT_PUBLIC_FONT_STYLE || 'font-serif', // ['font-serif','font-sans'] 两种可选,分别是衬线和无衬线: 参考 https://www.jianshu.com/p/55e410bd2115
|
||||||
|
|||||||
@@ -23,16 +23,23 @@ export const ArticleLock = props => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return <div id='container' className='w-full flex justify-center items-center h-96 font-sans'>
|
return <div id='container' className='w-full flex justify-center items-center h-96 font-sans'>
|
||||||
<div className='text-center space-y-3'>
|
<div className='text-center space-y-3'>
|
||||||
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
||||||
<div className='flex mx-4'>
|
<div className='flex mx-4'>
|
||||||
<input id="password" type='password' className='outline-none w-full text-sm pl-5 rounded-l transition font-light leading-10 text-black dark:bg-gray-500 bg-gray-50'></input>
|
<input id="password" type='password'
|
||||||
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 rounded-r duration-300 bg-gray-300" >
|
onKeyDown={(e) => {
|
||||||
<i className={'duration-200 cursor-pointer fas fa-key dark:text-black'} > {locale.COMMON.SUBMIT}</i>
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
className='outline-none w-full text-sm pl-5 rounded-l transition font-light leading-10 text-black dark:bg-gray-500 bg-gray-50'
|
||||||
|
></input>
|
||||||
|
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 rounded-r duration-300 bg-gray-300" >
|
||||||
|
<i className={'duration-200 cursor-pointer fas fa-key dark:text-black'} > {locale.COMMON.SUBMIT}</i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id='tips'>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div id='tips'>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,11 @@ export const ArticleLock = props => {
|
|||||||
<div className="flex mx-4">
|
<div className="flex mx-4">
|
||||||
<input
|
<input
|
||||||
id="password" type='password'
|
id="password" type='password'
|
||||||
|
onKeyDown={(e) => {
|
||||||
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
className="outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500"
|
className="outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500"
|
||||||
></input>
|
></input>
|
||||||
<div
|
<div
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import { useGlobal } from '@/lib/global'
|
|||||||
import BLOG from '@/blog.config'
|
import BLOG from '@/blog.config'
|
||||||
import dynamic from 'next/dynamic'
|
import dynamic from 'next/dynamic'
|
||||||
import { isBrowser, loadExternalResource } from '@/lib/utils'
|
import { isBrowser, loadExternalResource } from '@/lib/utils'
|
||||||
|
import CONFIG_HEXO from './config_hexo'
|
||||||
|
|
||||||
const FacebookPage = dynamic(
|
const FacebookPage = dynamic(
|
||||||
() => {
|
() => {
|
||||||
@@ -65,6 +66,7 @@ const LayoutBase = props => {
|
|||||||
if (isBrowser()) {
|
if (isBrowser()) {
|
||||||
loadExternalResource('/css/theme-hexo.css', 'css')
|
loadExternalResource('/css/theme-hexo.css', 'css')
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div id='theme-hexo'>
|
<div id='theme-hexo'>
|
||||||
<CommonHead meta={meta} siteInfo={siteInfo}/>
|
<CommonHead meta={meta} siteInfo={siteInfo}/>
|
||||||
@@ -73,7 +75,7 @@ const LayoutBase = props => {
|
|||||||
|
|
||||||
{headerSlot}
|
{headerSlot}
|
||||||
|
|
||||||
<main id="wrapper" className="bg-hexo-background-gray dark:bg-black w-full py-8 md:px-8 lg:px-24 min-h-screen relative">
|
<main id="wrapper" className={`${CONFIG_HEXO.HOME_BANNER_ENABLE ? '' : 'pt-16'} bg-hexo-background-gray dark:bg-black w-full py-8 md:px-8 lg:px-24 min-h-screen relative`}>
|
||||||
<div id="container-inner" className={(BLOG.LAYOUT_SIDEBAR_REVERSE ? 'flex-row-reverse' : '') + ' w-full mx-auto lg:flex lg:space-x-4 justify-center relative z-10'} >
|
<div id="container-inner" className={(BLOG.LAYOUT_SIDEBAR_REVERSE ? 'flex-row-reverse' : '') + ' w-full mx-auto lg:flex lg:space-x-4 justify-center relative z-10'} >
|
||||||
<div className={'w-full max-w-4xl h-full ' + props.className}>
|
<div className={'w-full max-w-4xl h-full ' + props.className}>
|
||||||
{onLoading ? <LoadingCover /> : children}
|
{onLoading ? <LoadingCover /> : children}
|
||||||
|
|||||||
@@ -25,7 +25,14 @@ export const ArticleLock = props => {
|
|||||||
<div className='text-center space-y-3'>
|
<div className='text-center space-y-3'>
|
||||||
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
||||||
<div className='flex mx-4'>
|
<div className='flex mx-4'>
|
||||||
<input id="password" type='password' className='outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500'></input>
|
<input id="password" type='password'
|
||||||
|
onKeyDown={(e) => {
|
||||||
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
className='outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500'>
|
||||||
|
</input>
|
||||||
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 bg-indigo-500 hover:bg-indigo-400 text-white rounded-r duration-300" >
|
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 bg-indigo-500 hover:bg-indigo-400 text-white rounded-r duration-300" >
|
||||||
<i className={'duration-200 cursor-pointer fas fa-key'} > {locale.COMMON.SUBMIT}</i>
|
<i className={'duration-200 cursor-pointer fas fa-key'} > {locale.COMMON.SUBMIT}</i>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ export default function HeaderArticle({ post, siteInfo }) {
|
|||||||
<div className='mb-3 flex justify-center'>
|
<div className='mb-3 flex justify-center'>
|
||||||
{post.category && <>
|
{post.category && <>
|
||||||
<Link href={`/category/${post.category}`} passHref legacyBehavior>
|
<Link href={`/category/${post.category}`} passHref legacyBehavior>
|
||||||
<div className="cursor-pointer px-2 py-1 mb-2 border rounded-sm dark:border-white text-sm font-medium text-5xl shadow-text-md text-white">
|
<div className="cursor-pointer px-2 py-1 mb-2 border rounded-sm dark:border-white text-sm font-medium hover:underline duration-200 shadow-text-md text-white">
|
||||||
{post.category}
|
{post.category}
|
||||||
</div>
|
</div>
|
||||||
</Link>
|
</Link>
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import FloatDarkModeButton from './components/FloatDarkModeButton'
|
|||||||
import throttle from 'lodash.throttle'
|
import throttle from 'lodash.throttle'
|
||||||
import { isBrowser, loadExternalResource } from '@/lib/utils'
|
import { isBrowser, loadExternalResource } from '@/lib/utils'
|
||||||
import SocialButton from './components/SocialButton'
|
import SocialButton from './components/SocialButton'
|
||||||
|
import CONFIG_MATERY from './config_matery'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 基础布局 采用左右两侧布局,移动端使用顶部导航栏
|
* 基础布局 采用左右两侧布局,移动端使用顶部导航栏
|
||||||
@@ -51,7 +52,7 @@ const LayoutBase = props => {
|
|||||||
|
|
||||||
{headerSlot}
|
{headerSlot}
|
||||||
|
|
||||||
<main id="wrapper" className="flex-1 w-full py-8 md:px-8 lg:px-24 relative">
|
<main id="wrapper" className={`${CONFIG_MATERY.HOME_BANNER_ENABLE ? '' : 'pt-16'} flex-1 w-full py-8 md:px-8 lg:px-24 relative`}>
|
||||||
{/* 嵌入区域 */}
|
{/* 嵌入区域 */}
|
||||||
<div id="container-slot" className={`w-full max-w-6xl ${props?.post && ' lg:max-w-3xl 2xl:max-w-4xl '} mt-6 px-3 mx-auto lg:flex lg:space-x-4 justify-center relative z-10`}>
|
<div id="container-slot" className={`w-full max-w-6xl ${props?.post && ' lg:max-w-3xl 2xl:max-w-4xl '} mt-6 px-3 mx-auto lg:flex lg:space-x-4 justify-center relative z-10`}>
|
||||||
{props.containerSlot}
|
{props.containerSlot}
|
||||||
|
|||||||
@@ -22,16 +22,24 @@ export const ArticleLock = props => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return <div id='container' className='w-full flex justify-center items-center h-96 '>
|
return <div id='container' className='w-full flex justify-center items-center h-96 '>
|
||||||
<div className='text-center space-y-3'>
|
<div className='text-center space-y-3'>
|
||||||
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
||||||
<div className='flex mx-4'>
|
<div className='flex mx-4'>
|
||||||
<input id="password" type='password' className='outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500'></input>
|
<input id="password" type='password'
|
||||||
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 bg-indigo-500 hover:bg-indigo-400 text-white rounded-r duration-300" >
|
onKeyDown={(e) => {
|
||||||
<i className={'duration-200 cursor-pointer fas fa-key'} > {locale.COMMON.SUBMIT}</i>
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
className='outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500'>
|
||||||
|
|
||||||
|
</input>
|
||||||
|
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 bg-indigo-500 hover:bg-indigo-400 text-white rounded-r duration-300" >
|
||||||
|
<i className={'duration-200 cursor-pointer fas fa-key'} > {locale.COMMON.SUBMIT}</i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id='tips'>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div id='tips'>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,7 +26,14 @@ export const ArticleLock = props => {
|
|||||||
<div className='text-center space-y-3'>
|
<div className='text-center space-y-3'>
|
||||||
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
||||||
<div className='flex mx-4'>
|
<div className='flex mx-4'>
|
||||||
<input id="password" type='password' className='outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500'></input>
|
<input id="password" type='password'
|
||||||
|
onKeyDown={(e) => {
|
||||||
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
className='outline-none w-full text-sm pl-5 rounded-l transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500'>
|
||||||
|
</input>
|
||||||
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 bg-green-500 hover:bg-green-400 text-white rounded-r duration-300" >
|
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 bg-green-500 hover:bg-green-400 text-white rounded-r duration-300" >
|
||||||
<i className={'duration-200 cursor-pointer fas fa-key'} > {locale.COMMON.SUBMIT}</i>
|
<i className={'duration-200 cursor-pointer fas fa-key'} > {locale.COMMON.SUBMIT}</i>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -30,6 +30,11 @@ export const ArticleLock = props => {
|
|||||||
<div className="flex mx-4">
|
<div className="flex mx-4">
|
||||||
<input
|
<input
|
||||||
id="password" type='password'
|
id="password" type='password'
|
||||||
|
onKeyDown={(e) => {
|
||||||
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
className="outline-none w-full text-sm pl-5 transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500"
|
className="outline-none w-full text-sm pl-5 transition focus:shadow-lg dark:text-gray-300 font-light leading-10 text-black bg-gray-100 dark:bg-gray-500"
|
||||||
></input>
|
></input>
|
||||||
<div
|
<div
|
||||||
|
|||||||
@@ -23,16 +23,23 @@ export const ArticleLock = props => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return <div id='container' className='w-full flex justify-center items-center h-96 font-sans'>
|
return <div id='container' className='w-full flex justify-center items-center h-96 font-sans'>
|
||||||
<div className='text-center space-y-3'>
|
<div className='text-center space-y-3'>
|
||||||
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
||||||
<div className='flex'>
|
<div className='flex'>
|
||||||
<input id="password" type='password' className='outline-none w-full text-sm pl-5 rounded-l transition font-light leading-10 text-black dark:bg-gray-500 bg-gray-50'></input>
|
<input id="password" type='password'
|
||||||
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 rounded-r duration-300 bg-gray-300" >
|
onKeyDown={(e) => {
|
||||||
<i className={'duration-200 cursor-pointer fas fa-key dark:text-black'} > {locale.COMMON.SUBMIT}</i>
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
className='outline-none w-full text-sm pl-5 rounded-l transition font-light leading-10 text-black dark:bg-gray-500 bg-gray-50'
|
||||||
|
></input>
|
||||||
|
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 rounded-r duration-300 bg-gray-300" >
|
||||||
|
<i className={'duration-200 cursor-pointer fas fa-key dark:text-black'} > {locale.COMMON.SUBMIT}</i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id='tips'>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div id='tips'>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,16 +23,23 @@ export const ArticleLock = props => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return <div id='container' className='w-full flex justify-center items-center h-96 font-sans'>
|
return <div id='container' className='w-full flex justify-center items-center h-96 font-sans'>
|
||||||
<div className='text-center space-y-3'>
|
<div className='text-center space-y-3'>
|
||||||
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
<div className='font-bold'>{locale.COMMON.ARTICLE_LOCK_TIPS}</div>
|
||||||
<div className='flex mx-4'>
|
<div className='flex mx-4'>
|
||||||
<input id="password" type='password' className='outline-none w-full text-sm pl-5 rounded-l transition font-light leading-10 text-black dark:bg-gray-500 bg-gray-50'></input>
|
<input id="password" type='password'
|
||||||
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 rounded-r duration-300 bg-gray-300" >
|
onKeyDown={(e) => {
|
||||||
<i className={'duration-200 cursor-pointer fas fa-key dark:text-black'} > {locale.COMMON.SUBMIT}</i>
|
if (e.key === 'Enter') {
|
||||||
|
submitPassword()
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
className='outline-none w-full text-sm pl-5 rounded-l transition font-light leading-10 text-black dark:bg-gray-500 bg-gray-50'
|
||||||
|
></input>
|
||||||
|
<div onClick={submitPassword} className="px-3 whitespace-nowrap cursor-pointer items-center justify-center py-2 rounded-r duration-300 bg-gray-300" >
|
||||||
|
<i className={'duration-200 cursor-pointer fas fa-key dark:text-black'} > {locale.COMMON.SUBMIT}</i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id='tips'>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div id='tips'>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user