hexo-theme-solitude 2.1.8 → 2.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
package/README.md CHANGED
@@ -2,31 +2,22 @@
2
2
 
3
3
  <div align="center">
4
4
 
5
- <h1>Solitude</h1>
5
+ <img width="70%" src=".github/screenshot.avif" />
6
6
 
7
- 一款优雅的 Hexo 主题,支持懒加载、PWA、Latex 以及多种评论系统。
7
+ 一款优雅的 Hexo 主题,支持懒加载、PWA、Latex 以及多种评论系统。
8
8
 
9
- 主题设计由 [@张洪Heo](https://github.com/zhheo) 全权授权
9
+ 主题设计由 [@张洪Heo](https://github.com/zhheo) 全权授权
10
10
 
11
- ![npm package](https://img.shields.io/npm/v/hexo-theme-solitude?style=for-the-badge)
12
- ![license](https://img.shields.io/github/license/everfu/hexo-theme-solitude?color=FF5531&style=for-the-badge)
13
- [![Stars](https://img.shields.io/github/stars/everfu/hexo-theme-solitude?style=for-the-badge)](https://github.com/everfu/hexo-theme-solitude/stargazers)
14
- [![NPM all downloads](https://img.shields.io/npm/dy/hexo-theme-solitude?color=white&style=for-the-badge)](https://www.npmjs.com/package/hexo-theme-solitude)
11
+ ![npm package](https://img.shields.io/npm/v/hexo-theme-solitude)
12
+ ![license](https://img.shields.io/github/license/everfu/hexo-theme-solitude?color=FF5531)
13
+ [![Stars](https://img.shields.io/github/stars/everfu/hexo-theme-solitude)](https://github.com/everfu/hexo-theme-solitude/stargazers)
14
+ [![NPM all downloads](https://img.shields.io/npm/dy/hexo-theme-solitude?color=white)](https://www.npmjs.com/package/hexo-theme-solitude)
15
15
 
16
- ![hexo version](https://img.shields.io/badge/hexo-7.0.0+-blue?logo=hexo&logoColor=white&style=for-the-badge)
17
- ![node version](https://img.shields.io/badge/node-14.0.0+-white?logo=node.js&logoColor=white&style=for-the-badge)
16
+ ![hexo version](https://img.shields.io/badge/hexo-7.0.0+-blue?logo=hexo&logoColor=white)
17
+ ![node version](https://img.shields.io/badge/node-14.0.0+-white?logo=node.js&logoColor=white)
18
18
 
19
- ![page view](https://komarev.com/ghpvc/?username=hexo-theme-solitude&abbreviated=true&style=for-the-badge)
20
- [![discord](https://img.shields.io/discord/1266610921942548553?style=for-the-badge&logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
21
- ![JetBrains](https://img.shields.io/badge/jetbrains-support-black?logo=jetbrains&style=for-the-badge)
22
-
23
- [文档](https://solitude.js.org/)丨[预览](https://blog.everfu.cn/)
24
-
25
- </div>
26
-
27
- <div style="width: 80%; margin: 0 auto">
28
-
29
- ![Screenshot](.github/screenshot.avif)
19
+ ![page view](https://komarev.com/ghpvc/?username=hexo-theme-solitude&abbreviated=true)
20
+ ![JetBrains](https://img.shields.io/badge/jetbrains-support-black?logo=jetbrains)
30
21
 
31
22
  </div>
32
23
 
@@ -40,33 +31,31 @@
40
31
  - 特色页面:即刻短文、我的装备、在线工具、音乐馆、友链鱼塘、相册页、豆瓣页、弹幕留言页
41
32
  - 文章功能:AI 摘要、代码高亮
42
33
 
43
- ## Todo
44
-
45
- - [x] 移动端目录支持
46
- - [x] 增加右下角侧边栏
47
-
48
34
  > 如有问题请提 [issue](https://github.com/everfu/hexo-theme-solitude/issues)
49
35
 
50
36
  ## 应用
51
37
 
52
38
  1. 使用 NPM 包进行安装
39
+
53
40
  ```bash
54
41
  npm i hexo-theme-solitude
55
42
  ```
43
+
56
44
  2. 应用主题
45
+
57
46
  ```yaml
58
47
  theme: solitude
59
48
  ```
60
49
 
61
- 前往 [文档](https://solitude.js.org/) 获取更多信息。
50
+ 前往 [文档](https://solitude.js.org/zh/) 获取更多信息。
62
51
 
63
52
  ## 社区
64
53
 
65
- [![Discord](https://img.shields.io/discord/1266610921942548553?style=for-the-badge&logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
66
- [![QQ 群](https://img.shields.io/badge/QQ%20群-948375336-FFD700?logo=Tencent-QQ&logoColor=white&style=for-the-badge)](https://qm.qq.com/q/mxfomMvJPG)
54
+ [![Discord](https://img.shields.io/discord/1266610921942548553?logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
55
+ [![QQ 群](https://img.shields.io/badge/QQ%20群-948375336-FFD700?logo=Tencent-QQ&logoColor=white)](https://qm.qq.com/q/mxfomMvJPG)
67
56
 
68
57
  ## 版权
69
58
 
70
- [MIT](./LICENSE) License &copy; 2023-至今 [伍十七](https://github.com/everfu)
59
+ [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude.svg?type=small)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude?ref=badge_large)
71
60
 
72
- [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude?ref=badge_large)
61
+ [MIT](./LICENSE) License &copy; 2023-至今 [伍十七](https://github.com/everfu)
package/README_en-US.md CHANGED
@@ -2,71 +2,60 @@ English丨[简体中文](README.md)丨[繁体中文](README_zh-Hant.md)
2
2
 
3
3
  <div align="center">
4
4
 
5
- <h1">Solitude</h1>
5
+ <img width="70%" src=".github/screenshot.avif" />
6
6
 
7
- An elegant Hexo theme that supports lazy loading, PWA, Latex, and multiple commenting systems.
7
+ An elegant Hexo theme that supports lazy loading, PWA, Latex, and multiple comment systems.
8
8
 
9
- Theme design is fully licensed by [@张洪Heo](https://github.com/zhheo).
9
+ Theme design fully authorized by [@Zhang Hong Heo](https://github.com/zhheo)
10
10
 
11
- ![npm package](https://img.shields.io/npm/v/hexo-theme-solitude?style=for-the-badge)
12
- ![license](https://img.shields.io/github/license/everfu/hexo-theme-solitude?color=FF5531&style=for-the-badge)
13
- [![Stars](https://img.shields.io/github/stars/everfu/hexo-theme-solitude?style=for-the-badge)](https://github.com/everfu/hexo-theme-solitude/stargazers)
14
- [![NPM all downloads](https://img.shields.io/npm/dy/hexo-theme-solitude?color=white&style=for-the-badge)](https://www.npmjs.com/package/hexo-theme-solitude)
11
+ ![npm package](https://img.shields.io/npm/v/hexo-theme-solitude)
12
+ ![license](https://img.shields.io/github/license/everfu/hexo-theme-solitude?color=FF5531)
13
+ [![Stars](https://img.shields.io/github/stars/everfu/hexo-theme-solitude)](https://github.com/everfu/hexo-theme-solitude/stargazers)
14
+ [![NPM all downloads](https://img.shields.io/npm/dy/hexo-theme-solitude?color=white)](https://www.npmjs.com/package/hexo-theme-solitude)
15
15
 
16
- ![hexo version](https://img.shields.io/badge/hexo-7.0.0+-blue?logo=hexo&logoColor=white&style=for-the-badge)
17
- ![node version](https://img.shields.io/badge/node-14.0.0+-white?logo=node.js&logoColor=white&style=for-the-badge)
16
+ ![hexo version](https://img.shields.io/badge/hexo-7.0.0+-blue?logo=hexo&logoColor=white)
17
+ ![node version](https://img.shields.io/badge/node-14.0.0+-white?logo=node.js&logoColor=white)
18
18
 
19
- ![page view](https://komarev.com/ghpvc/?username=hexo-theme-solitude&abbreviated=true&style=for-the-badge)
20
- [![discord](https://img.shields.io/discord/1266610921942548553?style=for-the-badge&logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
21
- ![JetBrains](https://img.shields.io/badge/jetbrains-support-black?logo=jetbrains&style=for-the-badge)
22
-
23
- [Docs](https://solitude.js.org/)丨[Preview](https://blog.everfu.cn/)
24
-
25
- </div>
26
-
27
- <div style="width: 80%; margin: 0 auto">
28
-
29
- ![Screenshot](.github/screenshot.avif)
19
+ ![page view](https://komarev.com/ghpvc/?username=hexo-theme-solitude&abbreviated=true)
20
+ ![JetBrains](https://img.shields.io/badge/jetbrains-support-black?logo=jetbrains)
30
21
 
31
22
  </div>
32
23
 
33
24
  ## Features
34
25
 
35
26
  - Page lazy loading (Pjax), image lazy loading (LazyLoad), offline application (PWA)
36
- - Comments (Twikoo, Waline, Valine, Artalk, Giscus), supporting dual comments
37
- - Day and night mode switch (ColorMode)
27
+ - Comments (Twikoo, Waline, Valine, Artalk, Giscus), supports dual comments
28
+ - Day and night switch (ColorMode)
38
29
  - Lightbox (medium-zoom, fancybox)
39
30
  - Mathematical formulas (Latex)
40
- - Special pages: Moments, My Equipment, Online Tools, Music Library, Friends' Links, Photo Album, Douban Page, Danmaku Message Board
41
- - Article features: AI Summary, Code Highlighting
42
-
43
- ## Todo
31
+ - Featured pages: Instant articles, My gear, Online tools, Music hall, Friend links, Album page, Douban page, Bullet screen message page
32
+ - Article features: AI summary, code highlighting
44
33
 
45
- - [X] Mobile directory support.
46
- - [X] Add a bottom right sidebar.
34
+ > If you have any questions, please raise an [issue](https://github.com/everfu/hexo-theme-solitude/issues)
47
35
 
48
- > If you have any questions, please issue an [issue](https://github.com/everfu/hexo-theme-solitude/issues)
36
+ ## Application
49
37
 
50
- ## Setup
38
+ 1. Install using the NPM package
51
39
 
52
- 1. Use the NPM package
53
40
  ```bash
54
41
  npm i hexo-theme-solitude
55
42
  ```
56
- 2. Apply
43
+
44
+ 2. Apply the theme
45
+
57
46
  ```yaml
58
47
  theme: solitude
59
48
  ```
60
49
 
61
- Check out the [Documentation](https://solitude.js.org/) for more information.
50
+ Visit [Documentation](https://solitude.js.org/zh/) for more information.
62
51
 
63
52
  ## Community
64
53
 
65
- [![Discord](https://img.shields.io/discord/1266610921942548553?style=for-the-badge&logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
66
- [![QQ Group](https://img.shields.io/badge/QQ%20Group-948375336-FFD700?logo=Tencent-QQ&logoColor=white&style=for-the-badge)](https://qm.qq.com/q/mxfomMvJPG)
54
+ [![Discord](https://img.shields.io/discord/1266610921942548553?logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
55
+ [![QQ Group](https://img.shields.io/badge/QQ%20Group-948375336-FFD700?logo=Tencent-QQ&logoColor=white)](https://qm.qq.com/q/mxfomMvJPG)
67
56
 
68
57
  ## License
69
58
 
70
- [MIT](./LICENSE) License &copy; 2023-PRESENT [伍十七](https://github.com/everfu)
59
+ [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude.svg?type=small)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude?ref=badge_large)
71
60
 
72
- [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude?ref=badge_large)
61
+ [MIT](./LICENSE) License &copy; 2023-present [everfu](https://github.com/everfu)
package/README_zh-Hant.md CHANGED
@@ -2,69 +2,60 @@
2
2
 
3
3
  <div align="center">
4
4
 
5
- <h1>Solitude</h1>
5
+ <img width="70%" src=".github/screenshot.avif" />
6
6
 
7
- 一款優雅的 Hexo 主題,支援懶載入、PWA、Latex 以及多種評論系統。
7
+ 一款優雅的 Hexo 主題,支持懶加載、PWA、Latex 以及多種評論系統。
8
8
 
9
- 主題設計由 [@张洪Heo](https://github.com/zhheo) 全權授權
9
+ 主題設計由 [@張洪Heo](https://github.com/zhheo) 全權授權
10
10
 
11
- ![npm package](https://img.shields.io/npm/v/hexo-theme-solitude?style=for-the-badge)
12
- ![license](https://img.shields.io/github/license/everfu/hexo-theme-solitude?color=FF5531&style=for-the-badge)
13
- [![Stars](https://img.shields.io/github/stars/everfu/hexo-theme-solitude?style=for-the-badge)](https://github.com/everfu/hexo-theme-solitude/stargazers)
14
- [![NPM all downloads](https://img.shields.io/npm/dy/hexo-theme-solitude?color=white&style=for-the-badge)](https://www.npmjs.com/package/hexo-theme-solitude)
11
+ ![npm package](https://img.shields.io/npm/v/hexo-theme-solitude)
12
+ ![license](https://img.shields.io/github/license/everfu/hexo-theme-solitude?color=FF5531)
13
+ [![Stars](https://img.shields.io/github/stars/everfu/hexo-theme-solitude)](https://github.com/everfu/hexo-theme-solitude/stargazers)
14
+ [![NPM all downloads](https://img.shields.io/npm/dy/hexo-theme-solitude?color=white)](https://www.npmjs.com/package/hexo-theme-solitude)
15
15
 
16
- ![hexo version](https://img.shields.io/badge/hexo-7.0.0+-blue?logo=hexo&logoColor=white&style=for-the-badge)
17
- ![node version](https://img.shields.io/badge/node-14.0.0+-white?logo=node.js&logoColor=white&style=for-the-badge)
16
+ ![hexo version](https://img.shields.io/badge/hexo-7.0.0+-blue?logo=hexo&logoColor=white)
17
+ ![node version](https://img.shields.io/badge/node-14.0.0+-white?logo=node.js&logoColor=white)
18
18
 
19
- ![page view](https://komarev.com/ghpvc/?username=hexo-theme-solitude&abbreviated=true&style=for-the-badge)
20
- [![discord](https://img.shields.io/discord/1266610921942548553?style=for-the-badge&logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
21
- ![JetBrains](https://img.shields.io/badge/jetbrains-support-black?logo=jetbrains&style=for-the-badge)
22
-
23
- [文档](https://solitude.js.org/)丨[預覽](https://blog.everfu.cn/)
24
-
25
- </div>
26
-
27
- <div style="width: 80%; margin: 0 auto">
28
-
29
- ![Screenshot](.github/screenshot.avif)
19
+ ![page view](https://komarev.com/ghpvc/?username=hexo-theme-solitude&abbreviated=true)
20
+ ![JetBrains](https://img.shields.io/badge/jetbrains-support-black?logo=jetbrains)
30
21
 
31
22
  </div>
32
23
 
33
24
  ## 特性
34
25
 
35
- - 頁面懶載入(Pjax)、圖片懶載入(LazyLoad)、離線應用(PWA)
36
- - 評論(Twikoo、Waline、Valine、Artalk、Giscus),支援雙評論
37
- - 晝夜切換(ColorMode
38
- - 燈箱(medium-zoom、fancybox
39
- - 數學公式(Latex
40
- - 特色頁面:即刻短文、我的裝備、在線工具、音樂館、友鏈魚塘、相冊頁、豆瓣頁、留言彈幕頁。
41
- - 文章功能:AI 摘要、代碼高亮。
42
-
43
- ## Todo
26
+ - 頁面懶加載(Pjax)、圖片懶加載(LazyLoad)、離線應用(PWA)
27
+ - 評論(Twikoo、Waline、Valine、Artalk、Giscus),支持雙評論
28
+ - 晝夜切換(ColorMode)
29
+ - 燈箱(medium-zoom、fancybox)
30
+ - 數學公式(Latex)
31
+ - 特色頁面:即刻短文、我的裝備、在線工具、音樂館、友鏈魚塘、相冊頁、豆瓣頁、彈幕留言頁
32
+ - 文章功能:AI 摘要、代碼高亮
44
33
 
45
- - [x] 移動端目錄支援
46
- - [x] 增加右下角側邊欄
34
+ > 如有問題請提 [issue](https://github.com/everfu/hexo-theme-solitude/issues)
47
35
 
48
36
  ## 應用
49
37
 
50
38
  1. 使用 NPM 包進行安裝
39
+
51
40
  ```bash
52
41
  npm i hexo-theme-solitude
53
42
  ```
43
+
54
44
  2. 應用主題
45
+
55
46
  ```yaml
56
47
  theme: solitude
57
48
  ```
58
49
 
59
- 前往 [文檔](https://solitude.js.org/) 獲取更多資訊。
50
+ 前往 [文檔](https://solitude.js.org/zh/) 獲取更多信息。
60
51
 
61
52
  ## 社區
62
53
 
63
- [![Discord](https://img.shields.io/discord/1266610921942548553?style=for-the-badge&logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
64
- [![QQ 群](https://img.shields.io/badge/QQ%20群-948375336-FFD700?logo=Tencent-QQ&logoColor=white&style=for-the-badge)](https://qm.qq.com/q/mxfomMvJPG)
54
+ [![Discord](https://img.shields.io/discord/1266610921942548553?logo=discord&label=discord&logoColor=white)](https://discord.gg/HZXAnK4Sut)
55
+ [![QQ 群](https://img.shields.io/badge/QQ%20群-948375336-FFD700?logo=Tencent-QQ&logoColor=white)](https://qm.qq.com/q/mxfomMvJPG)
65
56
 
66
57
  ## 版權
67
58
 
68
- [MIT](./LICENSE) License &copy; 2023-至今 [伍十七](https://github.com/everfu)
59
+ [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude.svg?type=small)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude?ref=badge_large)
69
60
 
70
- [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvalor-x%2Fhexo-theme-solitude?ref=badge_large)
61
+ [MIT](./LICENSE) License &copy; 2023-至今 [伍十七](https://github.com/everfu)
package/_config.yml CHANGED
@@ -571,6 +571,14 @@ footer:
571
571
  # 许可证
572
572
  license: # https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh # 许可证
573
573
 
574
+ # 备案
575
+ beian:
576
+ # - name: 湘公网安备43048102000175号
577
+ # icon: https://ui.everfu.cn/28399dd1b7b415efb0b3d822c31f59af.png/cover
578
+ # url: https://beian.mps.gov.cn/#/query/webSearch
579
+ # - name: 湘ICP备2024080357号-1
580
+ # url: https://beian.miit.gov.cn/
581
+
574
582
  # 页脚信息文字
575
583
  # 请不要删除主题信息,这是对作者的尊重
576
584
  links:
@@ -890,6 +898,8 @@ music:
890
898
  volume: 0.8
891
899
  # 是否自动播放
892
900
  mutex: true
901
+ # 播放方式:list / random
902
+ order: list
893
903
  # --------------------------- end ---------------------------
894
904
 
895
905
  # --------------------------- start ---------------------------
@@ -936,7 +946,7 @@ busuanzi_use: 0
936
946
 
937
947
  # --------------------------- start ---------------------------
938
948
  # This part is only supported in mainland China, and we will consider supporting ChatGPT Key in the future.
939
- # 该部分仅支持中国大陆,后续会考虑支持 ChatGPT Key。
949
+ # 该部分仅支持中国大陆
940
950
  tianli_talk:
941
951
  enable: false
942
952
  title: 智能客服与搜索 # title
@@ -51,10 +51,23 @@ div#footer-bar
51
51
  div.footer-bar-left
52
52
  if moment(theme.aside.siteinfo.runtime).year() === new Date().getFullYear()
53
53
  div.copyright © #{moment(theme.aside.siteinfo.runtime).year()} By&nbsp;
54
- a.footer-bar-link(href=url_for("/"))= config.author
54
+ a.footer-bar-link(href=url_for("/"))
55
+ img.author-avatar(src=url_for(theme.site.icon))
56
+ = config.author
55
57
  else
56
58
  div.copyright © #{moment(theme.aside.siteinfo.runtime).year()} - #{new Date().getFullYear()} By&nbsp;
57
- a.footer-bar-link(href=url_for("/"))= config.author
59
+ a.footer-bar-link(href=url_for("/"))
60
+ img.author-avatar(src=url_for(theme.site.icon))
61
+ = config.author
62
+ if theme.footer.beian
63
+ .beian-group
64
+ - var beian = theme.footer.beian || []
65
+ each item in beian
66
+ a.footer-bar-link(href=url_for(item.url), title=item.name)
67
+ if item.icon
68
+ img.beian-icon(src=url_for(item.icon), alt=item.name)
69
+ span.beian-name= item.name
70
+
58
71
  div.footer-bar-right
59
72
  each item in theme.footer.links
60
73
  a.footer-bar-link(href=url_for(item.url), alt=item.name)!= item.name
@@ -1,11 +1,11 @@
1
1
  if theme.music.enable
2
2
  #Music-bg
3
3
  #Music-page
4
- meting-js(id=theme.music.id server=theme.music.server type=theme.music.type mutex=theme.music.mutex ? "true" : "false" volume=theme.music.volume preload="none" data-lrctype="0" order="random")
4
+ meting-js(id=theme.music.id server=theme.music.server type=theme.music.type mutex=theme.music.mutex ? "true" : "false" volume=theme.music.volume preload="none" data-lrctype="0" order=theme.music.order)
5
5
  .Music-loading
6
6
  div APlayer加载中...
7
7
  script(pjax).
8
8
  (async function () {
9
9
  if (typeof initializeMusicPlayer === "undefined") await utils.getScript('!{url_for(theme.cdn.music_js)}').then(() => initializeMusicPlayer())
10
10
  else initializeMusicPlayer()
11
- })()
11
+ })()
@@ -9,7 +9,7 @@ if site.data.about.rewardList && site.data.about.award.enable
9
9
  .author-content-item-description
10
10
  != award.description
11
11
  .reward-list-all
12
- each reward in site.data.about.rewardList
12
+ each reward in site.data.about.rewardList.sort((a, b) => b.time - a.time) || []
13
13
  - sum += reward.money
14
14
  .reward-list-item
15
15
  .reward-list-item-name= reward.name
@@ -25,7 +25,7 @@ if site.data.about.likes
25
25
  - const likes = site.data.about.likes
26
26
  .author-content
27
27
  each like in likes
28
- .author-content-item(class=like.type, style=`background: url(${like.bg}) no-repeat center;`)
28
+ .author-content-item(class=like.type, style=`background: url(${like.bg}) no-repeat center; background-size: cover;`)
29
29
  .card-content
30
30
  .author-content-item-tips= like.tips
31
31
  span.author-content-item-title= like.title
@@ -14,34 +14,29 @@ if tenyear
14
14
  .end-time#tenyear-end-time= new Date(tenyear.end).toLocaleDateString()
15
15
 
16
16
  script.
17
- const tenYear = () => {
18
- const progressElement = document.querySelector(".progress");
19
- const pastTimeElement = document.querySelector(".past-time");
20
- const percentageLabelElement = document.querySelector(".percentage-label");
21
- const startTimeElement = document.getElementById("tenyear-start-time");
22
- const endTimeElement = document.getElementById("tenyear-end-time");
17
+ function updateTenYearProgress() {
18
+ let progressElement = document.querySelector(".progress");
19
+ let pastTimeElement = document.querySelector(".past-time");
20
+ let percentageLabelElement = document.querySelector(".percentage-label");
21
+ let startTimeElement = document.getElementById("tenyear-start-time");
22
+ let endTimeElement = document.getElementById("tenyear-end-time");
23
+ let startTime = new Date(startTimeElement.textContent).getTime();
24
+ let endTime = new Date(endTimeElement.textContent).getTime();
23
25
 
24
- const startTime = new Date(startTimeElement.textContent).getTime();
25
- const endTime = new Date(endTimeElement.textContent).getTime();
26
+ const currentTime = new Date().getTime();
27
+ const progress = ((currentTime - startTime) / (endTime - startTime) * 100);
28
+ const progressPercentage = Math.min(progress, 100) + "%";
26
29
 
27
- const updateProgress = () => {
28
- const currentTime = new Date().getTime();
29
- const progress = ((currentTime - startTime) / (endTime - startTime) * 100);
30
- const progressPercentage = Math.min(progress, 100) + "%";
31
-
32
- pastTimeElement.style.setProperty("--past-time-percentage", progress + "%");
33
- progressElement.style.setProperty("--progress-percentage", progressPercentage);
34
- if (progress > 5) {
35
- percentageLabelElement.textContent = `${progress.toFixed(0)}%`;
36
- percentageLabelElement.style.left = `calc(${progress}% - 35px)`;
37
- }
38
- };
30
+ pastTimeElement.style.setProperty("--past-time-percentage", progress + "%");
31
+ progressElement.style.setProperty("--progress-percentage", progressPercentage);
32
+ if (progress > 5) {
33
+ percentageLabelElement.textContent = `${progress.toFixed(0)}%`;
34
+ percentageLabelElement.style.left = `calc(${progress}% - 35px)`;
35
+ }
39
36
 
40
37
  percentageLabelElement.style.visibility = "visible";
41
- updateProgress();
42
- };
38
+ }
43
39
 
44
40
  if (document.getElementById("tenyear")) {
45
- tenYear();
46
- window.Pjax.on('complete', tenYear);
41
+ updateTenYearProgress();
47
42
  }
@@ -2,10 +2,13 @@
2
2
  each item in data.link_list
3
3
  .flink-list-item
4
4
  if item.tag
5
- span.site-card-tag(class=item.color)= item.tag
6
- i.light
5
+ if item.color == 'vip' || item.color == 'speed'
6
+ span.site-card-tag(class=item.color)= item.tag
7
+ i.light
8
+ else
9
+ span.site-card-tag(style=`background-color: ${item.color};`)= item.tag
7
10
  a.cf-friends-link(href=url_for(item.link), title=item.name)
8
11
  img.flink-avatar.cf-friends-avatar(alt=item.name, src=item.avatar + (data.suffix || ''))
9
12
  .flink-item-info
10
13
  span.flink-item-name.cf-friends-name= item.name
11
- span.flink-item-desc(title=item.descr)= item.descr
14
+ span.flink-item-desc(title=item.descr)= item.descr
package/layout/post.pug CHANGED
@@ -13,7 +13,7 @@ block content
13
13
  .post-tools-right
14
14
  .tag_share
15
15
  .post-meta__tag-list
16
- each data in page.tags.data
16
+ each data in page.tags.data || []
17
17
  a(href=url_for(data.path)).post-meta__tags
18
18
  span.tags-punctuation
19
19
  i.solitude.fa-solid.fa-hashtag
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hexo-theme-solitude",
3
- "version": "2.1.8",
3
+ "version": "2.1.10",
4
4
  "description": "A beautiful, powerful, and efficient Hexo theme developed by everfu.",
5
5
  "main": "package.json",
6
6
  "scripts": {
@@ -7,7 +7,7 @@
7
7
  .post &
8
8
  padding 1rem 2rem
9
9
  +maxWidth768()
10
- padding .5rem
10
+ padding .5rem .5rem 1rem .5rem
11
11
 
12
12
  iframe
13
13
  border-radius 12px
@@ -66,7 +66,7 @@
66
66
  font-size .9rem
67
67
  line-height 1.7
68
68
  font-weight 400
69
- margin 1rem 0
69
+ margin .5rem 0
70
70
  text-align left
71
71
  letter-spacing .6px
72
72
 
@@ -135,16 +135,14 @@
135
135
  padding 0.2em 0.2em 0.2em 1.4em
136
136
 
137
137
  &:before
138
- margin 0
139
- top .9em
140
- width .2em
141
- height .2em
142
- border-radius 50%
138
+ top .78em
139
+ width .42em
140
+ height .42em
141
+ border-radius .42em
143
142
  background 0 0
143
+ border .21em solid var(--efu-lighttext)
144
144
  content ""
145
- line-height .2em
146
- border 0.21em solid var(--efu-lighttext)
147
- background var(--efu-lighttext)
145
+ line-height .42em
148
146
 
149
147
  ol
150
148
  > li:before
@@ -164,7 +164,6 @@
164
164
  margin-left 8px
165
165
 
166
166
  /#footer-bar
167
- padding 1rem
168
167
  color var(--efu-fontcolor)
169
168
  margin-top 1rem
170
169
  background var(--efu-secondbg)
@@ -183,31 +182,70 @@
183
182
  flex-wrap wrap
184
183
  align-items center
185
184
  line-height 1
185
+ padding 1rem 1.5rem
186
+ +maxWidth768()
187
+ justify-content center
188
+ gap 8px
186
189
 
187
190
  .footer-bar-left
188
191
  display flex
189
- flex-wrap wrap
190
- min-height 32px
191
- align-items center
192
+ gap 8px
193
+ flex-direction column
194
+ +maxWidth768()
195
+ align-items center
192
196
 
193
197
  .copyright
194
198
  display flex
195
199
  flex-direction row
196
200
  align-items center
197
- padding 0 8px
198
- margin 0 4px
199
201
 
200
202
  .footer-bar-link
201
203
  margin 0
204
+ .beian-group
205
+ display flex
206
+ gap 8px
207
+ flex-wrap wrap
208
+ +maxWidth768()
209
+ justify-content center
210
+
211
+ a:hover
212
+ background 0 0
213
+ color var(--efu-main)
214
+
215
+ .beian-icon
216
+ height 14px
217
+ min-width 13px
218
+ min-height 14px
219
+
220
+ .footer-bar-link
221
+ font-size 12px
222
+ font-weight 400
223
+ color var(--efu-secondtext)
224
+ padding 0
225
+ margin 0
226
+ display flex
227
+ align-items center
228
+ gap 4px
229
+
202
230
 
203
231
  .footer-bar-link
204
232
  margin 0 4px
205
233
  color var(--efu-fontcolor)
206
234
  font-size .8rem
207
- padding 8px
208
- border-radius 12px
209
235
  font-weight 700
210
236
  white-space nowrap
237
+ padding 8px
238
+ border-radius 32px
239
+ line-height 1
240
+ display flex
241
+ align-items center
242
+ gap 4px
243
+
244
+ .author-avatar
245
+ width 20px
246
+ border-radius 20px
247
+ min-height 20px
248
+ min-width 20px
211
249
 
212
250
  &.cc
213
251
  margin-right 0
@@ -91,7 +91,6 @@
91
91
  transition .3s
92
92
  position relative
93
93
  box-shadow var(--efu-shadow-border)
94
- min-width fit-content
95
94
 
96
95
  +maxWidth1200()
97
96
  width 200px
@@ -101,6 +101,7 @@ body[data-type=music]
101
101
  &.aplayer-list-light
102
102
  background var(--efu-black-op)
103
103
  border-radius 6px
104
+ margin 0 .5rem
104
105
  height 60px
105
106
  display flex
106
107
  flex-direction column
package/source/js/main.js CHANGED
@@ -759,7 +759,7 @@ window.refreshFn = () => {
759
759
  if (covercolor.enable) coverColor();
760
760
  if (PAGE_CONFIG.toc) toc.init();
761
761
  if (lure) tabs.lureAddListener();
762
-
762
+ page === 'music' && initializeMusicPlayer();
763
763
  forPostFn();
764
764
  };
765
765
 
@@ -16,9 +16,13 @@ class MusicPlayer {
16
16
  addEventListeners() {
17
17
  document.addEventListener("keydown", this.handleKeydown.bind(this));
18
18
  const aplayerList = document.querySelector(".aplayer-list");
19
- document.querySelector(".aplayer-lrc")?.addEventListener("click", () => {
20
- aplayerList.classList.toggle("aplayer-list-hide");
21
- });
19
+ const aplayerLrc = document.querySelector(".aplayer-lrc");
20
+ if (aplayerLrc && !aplayerLrc.dataset.clickBound) {
21
+ aplayerLrc.addEventListener("click", () => {
22
+ aplayerList.classList.toggle("aplayer-list-hide");
23
+ });
24
+ aplayerLrc.dataset.clickBound = true;
25
+ }
22
26
  }
23
27
 
24
28
  changeMusicBg(isChangeBg = true) {
@@ -40,6 +44,7 @@ class MusicPlayer {
40
44
 
41
45
  setLoadingScreen(loadingElement, backgroundElement) {
42
46
  const timer = setInterval(() => {
47
+ this.addEventListeners();
43
48
  const musicCover = document.querySelector("#Music-page .aplayer-pic");
44
49
  if (musicCover) {
45
50
  loadingElement.style.display = "none";
@@ -135,10 +135,12 @@ window.oncontextmenu = (ele) => {
135
135
 
136
136
  rm.menuItems.paste.style.display = (tagName === "input" || tagName === "textarea") ? "flex" : "none";
137
137
 
138
- if (cls.match(/aplayer/)) {
139
- rm.menuItems.music.forEach(item => item.style.display = "flex");
140
- } else {
141
- rm.menuItems.music.forEach(item => item.style.display = "none");
138
+ if (GLOBAL_CONFIG.right_menu.music) {
139
+ if (cls.match(/aplayer/)) {
140
+ rm.menuItems.music.forEach(item => item.style.display = "flex");
141
+ } else {
142
+ rm.menuItems.music.forEach(item => item.style.display = "none");
143
+ }
142
144
  }
143
145
 
144
146
  Array.from(display ? rm.menuItems.other : rm.menuItems.plugin).forEach(item => item.style.display = "none");