From 1d85f099b012df7db702f3c24a8db6cb8039094c Mon Sep 17 00:00:00 2001
From: Jiaxin Peng <83734772+jxpeng98@users.noreply.github.com>
Date: Fri, 21 Jul 2023 18:56:45 +0100
Subject: [PATCH 1/5] Update SideRight.js
fix the sideright bug of latest posts
---
themes/heo/components/SideRight.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/themes/heo/components/SideRight.js b/themes/heo/components/SideRight.js
index 376df833..ec1d4fb7 100644
--- a/themes/heo/components/SideRight.js
+++ b/themes/heo/components/SideRight.js
@@ -48,7 +48,7 @@ export default function SideRight(props) {
{/* 最新文章列表 */}
-
+
From a6e344135df2895e4da4d4afdd1ce7f1734103ef Mon Sep 17 00:00:00 2001
From: Jiaxin Peng <83734772+jxpeng98@users.noreply.github.com>
Date: Fri, 21 Jul 2023 18:57:28 +0100
Subject: [PATCH 2/5] Create DarkModeButton.js
add darkmodebutton
---
themes/heo/components/DarkModeButton.js | 38 +++++++++++++++++++++++++
1 file changed, 38 insertions(+)
create mode 100644 themes/heo/components/DarkModeButton.js
diff --git a/themes/heo/components/DarkModeButton.js b/themes/heo/components/DarkModeButton.js
new file mode 100644
index 00000000..9b56e6da
--- /dev/null
+++ b/themes/heo/components/DarkModeButton.js
@@ -0,0 +1,38 @@
+import { useGlobal } from '@/lib/global'
+import { saveDarkModeToCookies } from '@/themes/theme'
+import { Moon, Sun } from '@/components/HeroIcons'
+import { useImperativeHandle } from 'react'
+
+/**
+ * 深色模式按钮
+ */
+const DarkModeButton = (props) => {
+ const { cRef, className } = props
+ const { isDarkMode, updateDarkMode } = useGlobal()
+
+ /**
+ * 对外暴露方法
+ */
+ useImperativeHandle(cRef, () => {
+ return {
+ handleChangeDarkMode: () => {
+ handleChangeDarkMode()
+ }
+ }
+ })
+
+ // 用户手动设置主题
+ const handleChangeDarkMode = () => {
+ const newStatus = !isDarkMode
+ saveDarkModeToCookies(newStatus)
+ updateDarkMode(newStatus)
+ const htmlElement = document.getElementsByTagName('html')[0]
+ htmlElement.classList?.remove(newStatus ? 'light' : 'dark')
+ htmlElement.classList?.add(newStatus ? 'dark' : 'light')
+ }
+
+ return
+}
+export default DarkModeButton
From acb42628ae7de79832aec096c7bc952137187d2d Mon Sep 17 00:00:00 2001
From: Jiaxin Peng <83734772+jxpeng98@users.noreply.github.com>
Date: Fri, 21 Jul 2023 18:58:39 +0100
Subject: [PATCH 3/5] Update NavBar.js
add a darkmodebutton on navbar
---
themes/heo/components/NavBar.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/themes/heo/components/NavBar.js b/themes/heo/components/NavBar.js
index baa65e73..2b7bf827 100644
--- a/themes/heo/components/NavBar.js
+++ b/themes/heo/components/NavBar.js
@@ -3,6 +3,7 @@ import Logo from './Logo'
import throttle from 'lodash.throttle'
import RandomPostButton from './RandomPostButton'
import SearchButton from './SearchButton'
+import DarkModeButton from './DarkModeButton'
import SlideOver from './SlideOver'
import ReadingProgress from './ReadingProgress'
import { MenuListTop } from './MenuListTop'
@@ -145,6 +146,7 @@ const NavBar = props => {
+
{/* 移动端菜单按钮 */}
From df5b1525b06642a9833d1155c2bc961a2f8c467c Mon Sep 17 00:00:00 2001
From: Jiaxin Peng <83734772+jxpeng98@users.noreply.github.com>
Date: Fri, 21 Jul 2023 19:09:46 +0100
Subject: [PATCH 4/5] Update NavBar.js
---
themes/heo/components/NavBar.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/themes/heo/components/NavBar.js b/themes/heo/components/NavBar.js
index 2b7bf827..32ea32a9 100644
--- a/themes/heo/components/NavBar.js
+++ b/themes/heo/components/NavBar.js
@@ -146,7 +146,7 @@ const NavBar = props => {
-
+ {!BLOG.THEME_SWITCH &&
}
{/* 移动端菜单按钮 */}
From 9aa4541218eeb653161375513d43d9141335a487 Mon Sep 17 00:00:00 2001
From: tangly1024
Date: Sun, 23 Jul 2023 22:01:42 +0800
Subject: [PATCH 5/5] ok
---
themes/heo/components/NavBar.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/themes/heo/components/NavBar.js b/themes/heo/components/NavBar.js
index 32ea32a9..7bf3810f 100644
--- a/themes/heo/components/NavBar.js
+++ b/themes/heo/components/NavBar.js
@@ -146,7 +146,7 @@ const NavBar = props => {
- {!BLOG.THEME_SWITCH && }
+ {!JSON.parse(BLOG.THEME_SWITCH) && }
{/* 移动端菜单按钮 */}