hexo-theme-redefine-x 2.8.5

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.
Files changed (319) hide show
  1. package/.github/ISSUE_TEMPLATE/bug-chinese.yml +115 -0
  2. package/.github/ISSUE_TEMPLATE/bug-english.yml +106 -0
  3. package/.github/ISSUE_TEMPLATE/enhancement-chinese.yml +55 -0
  4. package/.github/ISSUE_TEMPLATE/enhancement-english.yml +55 -0
  5. package/.github/workflows/build-and-commit.yml +49 -0
  6. package/.github/workflows/npm-publish.yml +34 -0
  7. package/.github/workflows/stale-issues.yml +20 -0
  8. package/CHANGELOG_REDEFINE_X.md +236 -0
  9. package/CODE_OF_CONDUCT.md +128 -0
  10. package/CONTRIBUTING.md +51 -0
  11. package/DONATION.md +82 -0
  12. package/LICENSE +674 -0
  13. package/README.md +135 -0
  14. package/README_zh-CN.md +138 -0
  15. package/README_zh-TW.md +137 -0
  16. package/TODO.md +215 -0
  17. package/_config.yml +489 -0
  18. package/languages/en.yml +93 -0
  19. package/languages/es.yml +92 -0
  20. package/languages/fr.yml +92 -0
  21. package/languages/ja.yml +92 -0
  22. package/languages/zh-CN.yml +95 -0
  23. package/languages/zh-TW.yml +94 -0
  24. package/layout/404.ejs +1 -0
  25. package/layout/archive.ejs +1 -0
  26. package/layout/category.ejs +1 -0
  27. package/layout/components/comments/comment.ejs +22 -0
  28. package/layout/components/comments/giscus.ejs +42 -0
  29. package/layout/components/comments/gitalk.ejs +47 -0
  30. package/layout/components/comments/twikoo.ejs +50 -0
  31. package/layout/components/comments/waline.ejs +34 -0
  32. package/layout/components/footer/footer.ejs +99 -0
  33. package/layout/components/header/head.ejs +222 -0
  34. package/layout/components/header/navbar.ejs +163 -0
  35. package/layout/components/header/preloader.ejs +148 -0
  36. package/layout/components/header/progress-bar.ejs +12 -0
  37. package/layout/components/plugins/aplayer.ejs +3 -0
  38. package/layout/components/scripts.ejs +90 -0
  39. package/layout/components/sidebar/author.ejs +6 -0
  40. package/layout/components/sidebar/avatar.ejs +3 -0
  41. package/layout/components/sidebar/statistics.ejs +14 -0
  42. package/layout/components/swup.ejs +27 -0
  43. package/layout/index.ejs +1 -0
  44. package/layout/layout.ejs +13 -0
  45. package/layout/page.ejs +57 -0
  46. package/layout/pages/archive/archive.ejs +3 -0
  47. package/layout/pages/bookmarks/bookmarks.ejs +68 -0
  48. package/layout/pages/category/categories.ejs +11 -0
  49. package/layout/pages/category/category-detail.ejs +6 -0
  50. package/layout/pages/friends/friends-link.ejs +59 -0
  51. package/layout/pages/home/home-article.ejs +52 -0
  52. package/layout/pages/home/home-background.ejs +33 -0
  53. package/layout/pages/home/home-banner.ejs +234 -0
  54. package/layout/pages/home/home-content.ejs +62 -0
  55. package/layout/pages/home/home-sidebar.ejs +78 -0
  56. package/layout/pages/masonry/masonry.ejs +28 -0
  57. package/layout/pages/notfound/notfound.ejs +8 -0
  58. package/layout/pages/page-template.ejs +23 -0
  59. package/layout/pages/post/article-content.ejs +153 -0
  60. package/layout/pages/post/article-copyright.ejs +69 -0
  61. package/layout/pages/post/article-info.ejs +78 -0
  62. package/layout/pages/post/post-tools.ejs +17 -0
  63. package/layout/pages/post/toc.ejs +15 -0
  64. package/layout/pages/shuoshuo/essays.ejs +23 -0
  65. package/layout/pages/tag/tag-detail.ejs +6 -0
  66. package/layout/pages/tag/tags.ejs +24 -0
  67. package/layout/post.ejs +1 -0
  68. package/layout/tag.ejs +1 -0
  69. package/layout/tags.ejs +1 -0
  70. package/layout/utils/image-viewer.ejs +3 -0
  71. package/layout/utils/local-search.ejs +20 -0
  72. package/layout/utils/paginator.ejs +8 -0
  73. package/layout/utils/posts-list.ejs +28 -0
  74. package/layout/utils/side-tools.ejs +51 -0
  75. package/package.json +45 -0
  76. package/scripts/config-export.js +66 -0
  77. package/scripts/data-handle.js +37 -0
  78. package/scripts/events/404.js +16 -0
  79. package/scripts/events/welcome.js +141 -0
  80. package/scripts/filters/delete-mask-handle.js +27 -0
  81. package/scripts/filters/encrypt.js +202 -0
  82. package/scripts/filters/img-handle.js +9 -0
  83. package/scripts/filters/lazyload-handle.js +350 -0
  84. package/scripts/filters/lib/hbe.default.js +15 -0
  85. package/scripts/filters/link-handle.js +42 -0
  86. package/scripts/filters/stylus-handle.js +9 -0
  87. package/scripts/filters/table-handle.js +11 -0
  88. package/scripts/helpers/meta-helpers.js +38 -0
  89. package/scripts/helpers/page-helpers.js +153 -0
  90. package/scripts/helpers/recommendation-helpers.js +367 -0
  91. package/scripts/helpers/theme-helpers.js +251 -0
  92. package/scripts/helpers/waline-helpers.js +33 -0
  93. package/scripts/modules/btn.js +85 -0
  94. package/scripts/modules/btns.js +71 -0
  95. package/scripts/modules/folding.js +34 -0
  96. package/scripts/modules/note-large.js +72 -0
  97. package/scripts/modules/note.js +64 -0
  98. package/scripts/modules/tabs.js +99 -0
  99. package/source/assets/hbe.style.css +220 -0
  100. package/source/assets/odometer-theme-minimal.css +81 -0
  101. package/source/css/build/tailwind.css +2 -0
  102. package/source/css/common/animated.styl +71 -0
  103. package/source/css/common/basic.styl +239 -0
  104. package/source/css/common/codeblock/code-block.styl +158 -0
  105. package/source/css/common/codeblock/code-theme.styl +82 -0
  106. package/source/css/common/codeblock/highlight.styl +189 -0
  107. package/source/css/common/codeblock/hljs-themes/dark/a11y-dark.styl +18 -0
  108. package/source/css/common/codeblock/hljs-themes/dark/agate.styl +18 -0
  109. package/source/css/common/codeblock/hljs-themes/dark/atom-one-dark.styl +18 -0
  110. package/source/css/common/codeblock/hljs-themes/dark/github-dark.styl +18 -0
  111. package/source/css/common/codeblock/hljs-themes/dark/monokai-sublime.styl +18 -0
  112. package/source/css/common/codeblock/hljs-themes/dark/night-owl.styl +18 -0
  113. package/source/css/common/codeblock/hljs-themes/dark/nord.styl +18 -0
  114. package/source/css/common/codeblock/hljs-themes/dark/tokyo-night-dark.styl +18 -0
  115. package/source/css/common/codeblock/hljs-themes/dark/vs2015.styl +18 -0
  116. package/source/css/common/codeblock/hljs-themes/light/atom-one-light.styl +18 -0
  117. package/source/css/common/codeblock/hljs-themes/light/default.styl +18 -0
  118. package/source/css/common/codeblock/hljs-themes/light/github.styl +18 -0
  119. package/source/css/common/colors.styl +112 -0
  120. package/source/css/common/markdown.styl +337 -0
  121. package/source/css/common/redefine-theme.styl +65 -0
  122. package/source/css/common/theme.styl +72 -0
  123. package/source/css/common/variables.styl +145 -0
  124. package/source/css/layout/_modules/aplayer.styl +799 -0
  125. package/source/css/layout/_modules/buttons.styl +42 -0
  126. package/source/css/layout/_modules/folding.styl +180 -0
  127. package/source/css/layout/_modules/notes.styl +181 -0
  128. package/source/css/layout/_modules/tabs.styl +105 -0
  129. package/source/css/layout/_partials/404.styl +14 -0
  130. package/source/css/layout/_partials/archive-list.styl +49 -0
  131. package/source/css/layout/_partials/article-copyright-info.styl +27 -0
  132. package/source/css/layout/_partials/article-meta-info.styl +62 -0
  133. package/source/css/layout/_partials/comments/comment.styl +11 -0
  134. package/source/css/layout/_partials/comments/gitalk.styl +529 -0
  135. package/source/css/layout/_partials/comments/twikoo.styl +62 -0
  136. package/source/css/layout/_partials/comments/waline.styl +1151 -0
  137. package/source/css/layout/_partials/footer.styl +59 -0
  138. package/source/css/layout/_partials/home-banner.styl +48 -0
  139. package/source/css/layout/_partials/image-viewer.styl +37 -0
  140. package/source/css/layout/_partials/local-search.styl +137 -0
  141. package/source/css/layout/_partials/navbar.styl +309 -0
  142. package/source/css/layout/_partials/page-template.styl +147 -0
  143. package/source/css/layout/_partials/paginator.styl +65 -0
  144. package/source/css/layout/_partials/post-tools.styl +43 -0
  145. package/source/css/layout/_partials/progress-bar.styl +33 -0
  146. package/source/css/layout/_partials/side-tools.styl +87 -0
  147. package/source/css/layout/_partials/tagcloud.styl +136 -0
  148. package/source/css/layout/_partials/toc.styl +105 -0
  149. package/source/css/layout/animations.styl +42 -0
  150. package/source/css/layout/archive-content.styl +8 -0
  151. package/source/css/layout/article-content.styl +257 -0
  152. package/source/css/layout/bookmarks.styl +8 -0
  153. package/source/css/layout/category-content.styl +21 -0
  154. package/source/css/layout/category-list.styl +119 -0
  155. package/source/css/layout/home-content.styl +114 -0
  156. package/source/css/layout/home-sidebar.styl +126 -0
  157. package/source/css/layout/page.styl +144 -0
  158. package/source/css/layout/tag-content.styl +30 -0
  159. package/source/css/style.styl +26 -0
  160. package/source/css/tailwind.source.css +236 -0
  161. package/source/fontawesome/all.min.css +6 -0
  162. package/source/fontawesome/brands.min.css +6 -0
  163. package/source/fontawesome/duotone.min.css +6 -0
  164. package/source/fontawesome/fontawesome.min.css +6 -0
  165. package/source/fontawesome/light.min.css +6 -0
  166. package/source/fontawesome/regular.min.css +6 -0
  167. package/source/fontawesome/sharp-solid.min.css +6 -0
  168. package/source/fontawesome/solid.min.css +6 -0
  169. package/source/fontawesome/svg-with-js.min.css +6 -0
  170. package/source/fontawesome/thin.min.css +6 -0
  171. package/source/fontawesome/v4-font-face.min.css +6 -0
  172. package/source/fontawesome/v4-shims.min.css +6 -0
  173. package/source/fontawesome/v5-font-face.min.css +6 -0
  174. package/source/fonts/Chillax/Chillax-Variable.eot +0 -0
  175. package/source/fonts/Chillax/Chillax-Variable.ttf +0 -0
  176. package/source/fonts/Chillax/Chillax-Variable.woff +0 -0
  177. package/source/fonts/Chillax/Chillax-Variable.woff2 +0 -0
  178. package/source/fonts/Chillax/chillax.css +39 -0
  179. package/source/fonts/Geist/GeistVF.ttf +0 -0
  180. package/source/fonts/Geist/GeistVF.woff +0 -0
  181. package/source/fonts/Geist/GeistVF.woff2 +0 -0
  182. package/source/fonts/Geist/geist.css +16 -0
  183. package/source/fonts/GeistMono/GeistMonoVF.ttf +0 -0
  184. package/source/fonts/GeistMono/GeistMonoVF.woff +0 -0
  185. package/source/fonts/GeistMono/GeistMonoVF.woff2 +0 -0
  186. package/source/fonts/GeistMono/geist-mono.css +16 -0
  187. package/source/images/bookmark-placeholder.svg +9 -0
  188. package/source/images/loading.svg +5 -0
  189. package/source/images/redefine-avatar.svg +1 -0
  190. package/source/images/redefine-favicon.svg +1 -0
  191. package/source/images/redefine-logo.svg +1 -0
  192. package/source/images/redefine-logo.webp +0 -0
  193. package/source/images/redefine-og.webp +0 -0
  194. package/source/images/wallhaven-wqery6-dark.webp +0 -0
  195. package/source/images/wallhaven-wqery6-light.webp +0 -0
  196. package/source/js/build/layouts/bookmarkNav.js +2 -0
  197. package/source/js/build/layouts/bookmarkNav.js.map +1 -0
  198. package/source/js/build/layouts/categoryList.js +2 -0
  199. package/source/js/build/layouts/categoryList.js.map +1 -0
  200. package/source/js/build/layouts/essays.js +2 -0
  201. package/source/js/build/layouts/essays.js.map +1 -0
  202. package/source/js/build/layouts/lazyload.js +2 -0
  203. package/source/js/build/layouts/lazyload.js.map +1 -0
  204. package/source/js/build/layouts/navbarShrink.js +2 -0
  205. package/source/js/build/layouts/navbarShrink.js.map +1 -0
  206. package/source/js/build/layouts/toc.js +2 -0
  207. package/source/js/build/layouts/toc.js.map +1 -0
  208. package/source/js/build/libs/APlayer.min.js +2 -0
  209. package/source/js/build/libs/Swup.min.js +2 -0
  210. package/source/js/build/libs/SwupPreloadPlugin.min.js +1 -0
  211. package/source/js/build/libs/SwupProgressPlugin.min.js +1 -0
  212. package/source/js/build/libs/SwupScriptsPlugin.min.js +1 -0
  213. package/source/js/build/libs/SwupScrollPlugin.min.js +1 -0
  214. package/source/js/build/libs/SwupSlideTheme.min.js +1 -0
  215. package/source/js/build/libs/Typed.min.js +10 -0
  216. package/source/js/build/libs/anime.min.js +8 -0
  217. package/source/js/build/libs/mermaid.min.js +2314 -0
  218. package/source/js/build/libs/minimasonry.min.js +1 -0
  219. package/source/js/build/libs/moment-with-locales.min.js +2 -0
  220. package/source/js/build/libs/moment.min.js +2 -0
  221. package/source/js/build/libs/odometer.min.js +2 -0
  222. package/source/js/build/libs/pangu.min.js +9 -0
  223. package/source/js/build/libs/pjax.min.js +1 -0
  224. package/source/js/build/libs/waline.js +84 -0
  225. package/source/js/build/main.js +2 -0
  226. package/source/js/build/main.js.map +1 -0
  227. package/source/js/build/plugins/aplayer.js +2 -0
  228. package/source/js/build/plugins/aplayer.js.map +1 -0
  229. package/source/js/build/plugins/hbe.js +2 -0
  230. package/source/js/build/plugins/hbe.js.map +1 -0
  231. package/source/js/build/plugins/masonry.js +2 -0
  232. package/source/js/build/plugins/masonry.js.map +1 -0
  233. package/source/js/build/plugins/mermaid.js +2 -0
  234. package/source/js/build/plugins/mermaid.js.map +1 -0
  235. package/source/js/build/plugins/pangu.js +2 -0
  236. package/source/js/build/plugins/pangu.js.map +1 -0
  237. package/source/js/build/plugins/tabs.js +2 -0
  238. package/source/js/build/plugins/tabs.js.map +1 -0
  239. package/source/js/build/plugins/typed.js +2 -0
  240. package/source/js/build/plugins/typed.js.map +1 -0
  241. package/source/js/build/tools/codeBlock.js +2 -0
  242. package/source/js/build/tools/codeBlock.js.map +1 -0
  243. package/source/js/build/tools/imageViewer.js +2 -0
  244. package/source/js/build/tools/imageViewer.js.map +1 -0
  245. package/source/js/build/tools/lightDarkSwitch.js +2 -0
  246. package/source/js/build/tools/lightDarkSwitch.js.map +1 -0
  247. package/source/js/build/tools/localSearch.js +2 -0
  248. package/source/js/build/tools/localSearch.js.map +1 -0
  249. package/source/js/build/tools/runtime.js +2 -0
  250. package/source/js/build/tools/runtime.js.map +1 -0
  251. package/source/js/build/tools/scrollTopBottom.js +2 -0
  252. package/source/js/build/tools/scrollTopBottom.js.map +1 -0
  253. package/source/js/build/tools/tocToggle.js +2 -0
  254. package/source/js/build/tools/tocToggle.js.map +1 -0
  255. package/source/js/build/utils.js +2 -0
  256. package/source/js/build/utils.js.map +1 -0
  257. package/source/js/build.js +148 -0
  258. package/source/js/layouts/bookmarkNav.js +65 -0
  259. package/source/js/layouts/categoryList.js +53 -0
  260. package/source/js/layouts/essays.js +25 -0
  261. package/source/js/layouts/lazyload.js +199 -0
  262. package/source/js/layouts/navbarShrink.js +135 -0
  263. package/source/js/layouts/toc.js +115 -0
  264. package/source/js/libs/APlayer.min.js +2 -0
  265. package/source/js/libs/APlayer.min.js.map +1 -0
  266. package/source/js/libs/Swup.min.js +2 -0
  267. package/source/js/libs/Swup.min.js.map +1 -0
  268. package/source/js/libs/SwupPreloadPlugin.min.js +1 -0
  269. package/source/js/libs/SwupPreloadPlugin.min.js.map +1 -0
  270. package/source/js/libs/SwupProgressPlugin.min.js +1 -0
  271. package/source/js/libs/SwupScriptsPlugin.min.js +1 -0
  272. package/source/js/libs/SwupScrollPlugin.min.js +1 -0
  273. package/source/js/libs/SwupScrollPlugin.min.js.map +1 -0
  274. package/source/js/libs/SwupSlideTheme.min.js +1 -0
  275. package/source/js/libs/Typed.min.js +10 -0
  276. package/source/js/libs/anime.min.js +8 -0
  277. package/source/js/libs/mermaid.min.js +2314 -0
  278. package/source/js/libs/mermaid.min.js.map +7 -0
  279. package/source/js/libs/minimasonry.min.js +1 -0
  280. package/source/js/libs/moment-with-locales.min.js +2 -0
  281. package/source/js/libs/moment.min.js +2 -0
  282. package/source/js/libs/odometer.min.js +2 -0
  283. package/source/js/libs/pangu.min.js +9 -0
  284. package/source/js/libs/pjax.min.js +1 -0
  285. package/source/js/libs/waline.js +84 -0
  286. package/source/js/libs/waline.js.map +1 -0
  287. package/source/js/main.js +95 -0
  288. package/source/js/plugins/aplayer.js +33 -0
  289. package/source/js/plugins/hbe.js +350 -0
  290. package/source/js/plugins/masonry.js +115 -0
  291. package/source/js/plugins/mermaid.js +7 -0
  292. package/source/js/plugins/pangu.js +12 -0
  293. package/source/js/plugins/tabs.js +29 -0
  294. package/source/js/plugins/typed.js +62 -0
  295. package/source/js/tools/codeBlock.js +48 -0
  296. package/source/js/tools/imageViewer.js +194 -0
  297. package/source/js/tools/lightDarkSwitch.js +165 -0
  298. package/source/js/tools/localSearch.js +327 -0
  299. package/source/js/tools/runtime.js +28 -0
  300. package/source/js/tools/scrollTopBottom.js +34 -0
  301. package/source/js/tools/tocToggle.js +58 -0
  302. package/source/js/utils.js +383 -0
  303. package/source/webfonts/fa-brands-400.ttf +0 -0
  304. package/source/webfonts/fa-brands-400.woff2 +0 -0
  305. package/source/webfonts/fa-duotone-900.ttf +0 -0
  306. package/source/webfonts/fa-duotone-900.woff2 +0 -0
  307. package/source/webfonts/fa-light-300.ttf +0 -0
  308. package/source/webfonts/fa-light-300.woff2 +0 -0
  309. package/source/webfonts/fa-regular-400.ttf +0 -0
  310. package/source/webfonts/fa-regular-400.woff2 +0 -0
  311. package/source/webfonts/fa-sharp-solid-900.ttf +0 -0
  312. package/source/webfonts/fa-sharp-solid-900.woff2 +0 -0
  313. package/source/webfonts/fa-solid-900.ttf +0 -0
  314. package/source/webfonts/fa-solid-900.woff2 +0 -0
  315. package/source/webfonts/fa-thin-100.ttf +0 -0
  316. package/source/webfonts/fa-thin-100.woff2 +0 -0
  317. package/source/webfonts/fa-v4compatibility.ttf +0 -0
  318. package/source/webfonts/fa-v4compatibility.woff2 +0 -0
  319. package/vercel.json +7 -0
@@ -0,0 +1,337 @@
1
+ .markdown-body
2
+ font-family $english-font-family, $chinese-font-family, sans-serif
3
+ font-size $default-article-font-size
4
+
5
+ blockquote
6
+ p, ul, ol
7
+ padding 5px 5px 5px 10px
8
+
9
+ box-sizing border-box
10
+ margin 20px 0
11
+ color var(--default-text-color)
12
+ background var(--third-background-color)
13
+ padding 0 1rem 0 0.5rem
14
+ border-radius 0 $redefine-border-radius-medium $redefine-border-radius-medium 0
15
+ position relative
16
+ border-left 5px solid var(--default-text-color)
17
+
18
+ p
19
+ line-height $default-line-height
20
+ color var(--default-text-color)
21
+ font-weight 400
22
+ margin-bottom 1rem
23
+ margin-top 0
24
+
25
+ a
26
+ position relative
27
+ outline 0
28
+ text-decoration underline
29
+ overflow-wrap break-word
30
+ cursor pointer
31
+ // border-bottom 1px solid var(--third-text-color)
32
+ box-sizing border-box
33
+ padding-bottom 2px
34
+ text-underline-offset 2px
35
+ text-decoration-color var(--fourth-text-color)
36
+ transition: text-decoration-color 0.2s ease
37
+
38
+ &.link
39
+ padding-right 0.1em
40
+
41
+ .fas, .far, fab
42
+ margin 0 2px 0 6px
43
+ position relative
44
+ color var(--third-text-color)
45
+ font-size 0.88rem
46
+
47
+ .link-icon
48
+ transition transform 0.2s ease
49
+
50
+ &:hover,
51
+ &:focus
52
+ text-decoration underline !important
53
+ text-decoration-color var(--primary-color) !important
54
+
55
+ .link-icon
56
+ transform translate(0.1em, -0.1em)
57
+
58
+ &::after
59
+ background var(--primary-color)
60
+ text-decoration underline
61
+
62
+
63
+
64
+ strong
65
+ color var(--default-text-color)
66
+
67
+ hr
68
+ margin 2rem 0
69
+ border 0
70
+ border-top 2px solid var(--shadow-color-1)
71
+
72
+ em
73
+ color var(--default-text-color)
74
+
75
+ ul > li, ol > li
76
+ margin-left 20px
77
+ line-height 2rem
78
+
79
+ ul
80
+ margin-bottom 1.2rem
81
+
82
+ li
83
+ list-style disc
84
+
85
+ ul
86
+ li
87
+ list-style circle
88
+
89
+ ul
90
+ li
91
+ list-style square
92
+
93
+ ol
94
+ margin-bottom 1.2rem
95
+
96
+ li
97
+ list-style decimal
98
+
99
+ ul
100
+ li
101
+ list-style disc
102
+
103
+ ul
104
+ li
105
+ list-style circle
106
+
107
+ ol
108
+ li
109
+ list-style upper-alpha
110
+
111
+ ol
112
+ li
113
+ list-style upper-roman
114
+
115
+ li
116
+ color var(--default-text-color)
117
+
118
+ h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6
119
+ font-family $english-font-family, $chinese-font-family, sans-serif
120
+ color var(--second-text-color)
121
+ line-height $default-line-height
122
+
123
+ +redefine-tablet()
124
+ line-height: $default-line-height * 0.96
125
+
126
+ h1, .h1
127
+ font-size 3.2rem
128
+ font-weight 650
129
+ border-bottom solid 2px var(--fourth-text-color)
130
+ margin-top $h1-heading-margin-top
131
+ margin-bottom 1rem
132
+ letter-spacing -0.025em
133
+ line-height 1.2
134
+
135
+ +redefine-tablet()
136
+ font-size 1.7rem
137
+ line-height 1.2
138
+
139
+ h2, .h2
140
+ font-size 2.5rem
141
+ font-weight 650
142
+ padding 3px 0
143
+ border-bottom solid 2px var(--fourth-text-color)
144
+ margin-top $h2-heading-margin-top
145
+ margin-bottom 1rem
146
+ letter-spacing -0.025em
147
+ line-height 1.1
148
+
149
+ +redefine-tablet()
150
+ font-size 1.6rem
151
+ line-height 1.1
152
+
153
+ h3, .h3
154
+ font-size 1.8rem
155
+ font-weight 600
156
+ margin-top $h3-heading-margin-top
157
+ margin-bottom 0.75rem
158
+ letter-spacing -0.025em
159
+ line-height 1.3
160
+
161
+ +redefine-tablet()
162
+ font-size 1.5rem
163
+ line-height 1.2
164
+
165
+ h4, .h4
166
+ font-size 1.5rem
167
+ font-weight 600
168
+ margin-top $h4-heading-margin-top
169
+ margin-bottom 0.75rem
170
+ line-height 1.4
171
+
172
+ +redefine-tablet()
173
+ font-size 1.4rem
174
+ line-height 1.3
175
+
176
+ h5, .h5
177
+ font-size 1.28rem
178
+ font-weight 600
179
+ margin-top $h5-heading-margin-top
180
+ margin-bottom 0.5rem
181
+ line-height 1.3
182
+
183
+ +redefine-tablet()
184
+ font-size 1.18rem
185
+ line-height 1.2
186
+
187
+ h6, .h6
188
+ font-size 1.2rem
189
+ font-weight 600
190
+ margin-top $h6-heading-margin-top
191
+ margin-bottom 0.5rem
192
+ line-height 1.2
193
+
194
+ +redefine-tablet()
195
+ font-size 1.1rem
196
+ line-height 1.1
197
+
198
+
199
+ img
200
+ box-sizing border-box
201
+ border-radius $usr-img-border-radius
202
+ max-width 100%
203
+ cursor zoom-in
204
+ display block
205
+ transition-t('padding, margin', '0, 0', '0.2, 0.2', 'linear, linear')
206
+
207
+ if (hexo-config('articles.style.image_alignment') == 'center')
208
+ margin 1rem auto 1rem
209
+ else
210
+ margin 1rem 0 1rem
211
+
212
+
213
+ del.mask
214
+ text-decoration none !important
215
+ transition .2s cubic-bezier(.25, .46, .45, .94) color, .2s cubic-bezier(.25, .46, .45, .94) background
216
+
217
+ *
218
+ transition .35s cubic-bezier(.25, .46, .45, .94) opacity
219
+
220
+ &:not(:hover)
221
+ color transparent !important
222
+ background #000 !important
223
+
224
+ *
225
+ opacity 0 !important
226
+
227
+ &, *
228
+ border none !important
229
+
230
+
231
+
232
+ & > table,
233
+ .tab-pane > table
234
+ border-spacing 0
235
+ border-collapse collapse
236
+ width 100%
237
+ overflow auto
238
+ margin-bottom 1.2rem
239
+ margin-top 1rem
240
+ box-shadow var(--redefine-box-shadow-flat)
241
+ border-radius $redefine-border-radius-medium
242
+
243
+ thead
244
+ th
245
+ border-bottom 1px solid var(--shadow-color-1)
246
+ background-color var(--third-background-color) !important
247
+
248
+ &:first-child
249
+ border-top-left-radius $redefine-border-radius-medium
250
+
251
+ &:last-child
252
+ border-top-right-radius $redefine-border-radius-medium
253
+
254
+ tbody
255
+ tr
256
+ &:last-child
257
+ td
258
+ &:first-child
259
+ border-bottom-left-radius $redefine-border-radius-medium
260
+
261
+ &:last-child
262
+ border-bottom-right-radius $redefine-border-radius-medium
263
+
264
+ td, th
265
+ padding 8px 16px
266
+ // border 1px solid var(--border-color)
267
+ border-left 1px solid var(--shadow-color-1)
268
+
269
+ &:first-child
270
+ border-left none
271
+
272
+ tr
273
+ background-color var(--background-color)
274
+ // border 1px solid var(--fourth-text-color)
275
+
276
+ tr:nth-child(2n)
277
+ background-color var(--second-background-color)
278
+
279
+ mjx-container
280
+ display inline
281
+ overflow-x auto
282
+ white-space nowrap
283
+ margin 0 0.2rem
284
+
285
+ &:hover::-webkit-scrollbar-thumb
286
+ border 3px solid rgba(183, 183, 183, 0.3)
287
+
288
+ &::-webkit-scrollbar
289
+ width 6px
290
+ height 6px
291
+ transition all 0.2s ease
292
+ display block
293
+
294
+ &::-webkit-scrollbar-track
295
+ background transparent
296
+ border none
297
+
298
+ &::-webkit-scrollbar-thumb
299
+ border-radius 20px
300
+ border 3px solid rgba(183, 183, 183, 0)
301
+ transition all 0.2s ease
302
+
303
+ svg
304
+ display inline-block /* Allow content to be centered properly */
305
+
306
+
307
+ mjx-container[display="true"]
308
+ display block
309
+ justify-content center
310
+ vertical-align baseline
311
+ overflow-x auto
312
+ text-align center
313
+ white-space nowrap
314
+ scrollbar-width: thin // For Firefox, if needed
315
+ padding-bottom 8px
316
+
317
+ &:hover::-webkit-scrollbar-thumb
318
+ border 3px solid rgba(183, 183, 183, 0.3)
319
+
320
+ &::-webkit-scrollbar
321
+ width 6px
322
+ height 6px
323
+ transition all 0.2s ease
324
+ display block
325
+
326
+ &::-webkit-scrollbar-track
327
+ background transparent
328
+ border none
329
+
330
+ &::-webkit-scrollbar-thumb
331
+ border-radius 20px
332
+ border 3px solid rgba(183, 183, 183, 0)
333
+ transition all 0.2s ease
334
+
335
+
336
+ svg
337
+ display inline-block
@@ -0,0 +1,65 @@
1
+ redefine-tablet()
2
+ @media (max-width $media-max-width)
3
+ {block}
4
+
5
+ redefine-mobile()
6
+ @media (max-width $media-max-width-mobile)
7
+ {block}
8
+
9
+ hover-style(isTransform, scaleX, scaleY)
10
+ box-shadow var(--redefine-box-shadow)
11
+
12
+ if (isTransform)
13
+ transition-t('transform', '0', '0.2', 'linear')
14
+
15
+ &:hover
16
+ if (hexo-config('global.hover.scale') && isTransform)
17
+ transform scaleX(scaleX) scaleY(scaleX)
18
+
19
+ if (hexo-config('global.hover.shadow'))
20
+ box-shadow var(--redefine-box-shadow-hover)
21
+
22
+ redefine-container(isTransform, scaleX, scaleY, padding, marginBottomValue)
23
+ padding padding
24
+ border-radius $redefine-border-radius-large
25
+ box-sizing border-box
26
+ background var(--background-color)
27
+
28
+ if (marginBottomValue != 0)
29
+ margin-bottom marginBottomValue
30
+
31
+ +redefine-tablet()
32
+ margin-bottom: marginBottomValue * 0.8
33
+
34
+ +redefine-mobile()
35
+ margin-bottom: marginBottomValue * 0.6
36
+
37
+ hover-style(isTransform, scaleX, scaleY)
38
+
39
+ +redefine-tablet()
40
+ padding: padding - 4
41
+ border-radius: $redefine-border-radius-large
42
+
43
+ +redefine-mobile()
44
+ padding: padding - 8
45
+ border-radius: $redefine-border-radius-large
46
+
47
+
48
+ .redefine-box-shadow
49
+ box-shadow var(--redefine-box-shadow)
50
+
51
+ .redefine-box-shadow-flat
52
+ box-shadow var(--redefine-box-shadow-flat)
53
+
54
+ @media (min-width: 640px)
55
+ .redefine-box-shadow:hover
56
+ box-shadow var(--redefine-box-shadow-hover)
57
+
58
+ .redefine-box-shadow-flat:hover
59
+ box-shadow var(--redefine-box-shadow)
60
+
61
+ .ellipsis
62
+ overflow hidden
63
+ text-overflow ellipsis
64
+ white-space nowrap
65
+ width 100%
@@ -0,0 +1,72 @@
1
+ @require "./colors.styl"
2
+ // ========================================================================================
3
+ // LIGHT/DARK MODE SWITCH
4
+ // ========================================================================================
5
+ root-color(mode) {
6
+ --background-color mode == 'light' ? $background-color : $dark-background-color
7
+ --background-color-transparent mode == 'light' ? $background-color-transparent : $dark-background-color-transparent
8
+ --background-color-transparent-15 mode == 'light' ? $background-color-transparent-15 : $dark-background-color-transparent-15
9
+ --background-color-transparent-40 mode == 'light' ? $background-color-transparent-40 : $dark-background-color-transparent-40
10
+ --background-color-transparent-80 mode == 'light' ? $background-color-transparent-80 : $dark-background-color-transparent-80
11
+ --second-background-color mode == 'light' ? $second-background-color : $dark-second-background-color
12
+ --third-background-color mode == 'light' ? $third-background-color : $dark-third-background-color
13
+ --third-background-color-transparent mode == 'light' ? $third-background-color-transparent : $dark-third-background-color-transparent
14
+ --primary-color mode == 'light' ? $primary-color : $dark-primary-color
15
+ --first-text-color mode == 'light' ? $first-text-color : $dark-first-text-color
16
+ --second-text-color mode == 'light' ? $second-text-color : $dark-second-text-color
17
+ --third-text-color mode == 'light' ? $third-text-color : $dark-third-text-color
18
+ --fourth-text-color mode == 'light' ? $fourth-text-color : $dark-fourth-text-color
19
+ --default-text-color mode == 'light' ? $default-text-color : $dark-default-text-color
20
+ --invert-text-color mode == 'light' ? $invert-text-color : $dark-invert-text-color
21
+ --border-color mode == 'light' ? $border-color : $dark-border-color
22
+ --selection-color mode == 'light' ? $selection-color : $dark-selection-color
23
+ --shadow-color-1 mode == 'light' ? $shadow-color-1 : $dark-shadow-color-1
24
+ --shadow-color-2 mode == 'light' ? $shadow-color-2 : $dark-shadow-color-2
25
+ --shadow-hover-color mode == 'light' ? $shadow-hover-color : $dark-shadow-hover-color
26
+ --scrollbar-color mode == 'light' ? $scrollbar-color : $dark-scrollbar-color
27
+ --scrollbar-color-hover mode == 'light' ? $scrollbar-color-hover : $dark-scrollbar-color-hover
28
+ --scroll-bar-bg-color mode == 'light' ? $scroll-bar-bg-color : $dark-scroll-bar-bg-color
29
+ --link-color mode == 'light' ? $link-color : $dark-link-color
30
+ --copyright-info-color mode == 'light' ? $copyright-info-color : $dark-copyright-info-color
31
+ --avatar-background-color mode == 'light' ? $avatar-background-color : $dark-avatar-background-color
32
+ --pjax-progress-bar-color : mode == 'light' ? $pjax-progress-bar-color : $dark-pjax-progress-bar-color
33
+ --archive-timeline-last-child-color : mode == 'light' ? $archive-timeline-last-child-color : $dark-archive-timeline-last-child-color
34
+
35
+ --note-blue-title-bg : mode == 'light' ? $note-blue-title-bg : $dark-note-blue-title-bg
36
+ --note-red-title-bg : mode == 'light' ? $note-red-title-bg : $dark-note-red-title-bg
37
+ --note-cyan-title-bg : mode == 'light' ? $note-cyan-title-bg : $dark-note-cyan-title-bg
38
+ --note-green-title-bg : mode == 'light' ? $note-green-title-bg : $dark-note-green-title-bg
39
+ --note-yellow-title-bg : mode == 'light' ? $note-yellow-title-bg : $dark-note-yellow-title-bg
40
+ --note-gray-title-bg : mode == 'light' ? $note-gray-title-bg : $dark-note-gray-title-bg
41
+ --note-type-title-bg : mode == 'light' ? $note-type-title-bg : $dark-note-type-title-bg
42
+ --note-black-title-bg : mode == 'light' ? $note-black-title-bg : $dark-note-black-title-bg
43
+ --note-purple-title-bg : mode == 'light' ? $note-purple-title-bg : $dark-note-purple-title-bg
44
+
45
+ --home-banner-text-color mode == 'light' ? $home-banner-text-color : $home-banner-text-color-dark
46
+ --home-banner-icons-container-border-color mode == 'light' ? $home-banner-icons-container-border-color : $home-banner-icons-container-border-color-dark
47
+ --home-banner-icons-container-background-color mode == 'light' ? $home-banner-icons-container-background-color : $home-banner-icons-container-background-color-dark
48
+
49
+ --redefine-box-shadow : var(--shadow-color-2) 0px 6px 24px 0px, var(--shadow-color-1) 0px 0px 0px 1px
50
+ --redefine-box-shadow-hover : var(--shadow-color-2) 0px 6px 24px 0px, var(--shadow-color-1) 0px 0px 0px 1px, var(--shadow-color-1) 0px 0px 0px 1px inset
51
+ --redefine-box-shadow-flat : var(--shadow-color-2) 0px 1px 4px 0px, var(--shadow-color-1) 0px 0px 0px 1px
52
+ --redefine-box-shadow-flat-hover : var(--shadow-color-2) 0px 1px 4px 0px, var(--shadow-color-1) 0px 0px 0px 1px, var(--shadow-color-1) 0px 0px 0px 1px inset
53
+
54
+ --mermaid-theme : mode == 'light' ? $mermaid-theme : $dark-mermaid-theme
55
+
56
+ }
57
+
58
+
59
+ $temp-mode = hexo-config('colors.default_mode')
60
+ $default-mode = $temp-mode == 'dark' ? 'dark' : 'light'
61
+
62
+ :root {
63
+ root-color($default-mode)
64
+ }
65
+
66
+ .light {
67
+ root-color('light')
68
+ }
69
+
70
+ .dark {
71
+ root-color('dark')
72
+ }
@@ -0,0 +1,145 @@
1
+ @require './theme.styl'
2
+
3
+ // ========================================================================================
4
+ // REDEFINE THEME VARIABLE
5
+ // ========================================================================================
6
+
7
+
8
+ // ========================================================================================
9
+ // LAYOUT
10
+ // ========================================================================================
11
+ $navbar-height = 70px; // navbar height
12
+ $navbar-shrink-height = $navbar-height * 0.72; // navbar shrink height
13
+ $scroll-progress-bar-height = 2px; // scroll progress bar height
14
+ $main-content-width = 80%; // main content width (PC)
15
+ $main-content-width-tablet = 86%; // main content width (tablet)
16
+ $main-content-width-mobile = 90%; // main content width (mobile)
17
+ $post-tool-button-width = 38px; // post tool button width
18
+ $spacing-unit = 38px; // component-spacing-value (PC)
19
+
20
+ // main content max width
21
+ $temp-content-max-width = hexo-config('global.content_max_width')
22
+ $content-max-width = $temp-content-max-width ? convert($temp-content-max-width) : 1000px
23
+ $has-toc-content-max-width = $content-max-width * 1.2
24
+
25
+ $navbar-width-home-data = hexo-config('navbar.width.home')
26
+ $navbar-width-home = $navbar-width-home-data ? convert($navbar-width-home-data) : 1200px
27
+ $navbar-width-pages-data = hexo-config('navbar.width.pages')
28
+ $navbar-width-pages = $navbar-width-pages-data ? convert($navbar-width-pages-data) : 1000px
29
+
30
+
31
+ // ========================================================================================
32
+ // TITLES
33
+ // ========================================================================================
34
+
35
+ $h1-heading-margin-top-data = hexo-config('articles.style.headings_top_spacing.h1')
36
+ $h1-heading-margin-top = $h1-heading-margin-top-data ? convert($h1-heading-margin-top-data) : 3.2rem
37
+ $h2-heading-margin-top-data = hexo-config('articles.style.headings_top_spacing.h2')
38
+ $h2-heading-margin-top = $h2-heading-margin-top-data ? convert($h2-heading-margin-top-data) : 2.4rem
39
+ $h3-heading-margin-top-data = hexo-config('articles.style.headings_top_spacing.h3')
40
+ $h3-heading-margin-top = $h3-heading-margin-top-data ? convert($h3-heading-margin-top-data) : 1.9rem
41
+ $h4-heading-margin-top-data = hexo-config('articles.style.headings_top_spacing.h4')
42
+ $h4-heading-margin-top = $h4-heading-margin-top-data ? convert($h4-heading-margin-top-data) : 1.6rem
43
+ $h5-heading-margin-top-data = hexo-config('articles.style.headings_top_spacing.h5')
44
+ $h5-heading-margin-top = $h5-heading-margin-top-data ? convert($h5-heading-margin-top-data) : 1.4rem
45
+ $h6-heading-margin-top-data = hexo-config('articles.style.headings_top_spacing.h6')
46
+ $h6-heading-margin-top = $h6-heading-margin-top-data ? convert($h6-heading-margin-top-data) : 1.3rem
47
+
48
+
49
+ // ========================================================================================
50
+ // MEDIA
51
+ // ========================================================================================
52
+ $media-max-width = 768px; // media query max width (tablet)
53
+ $media-max-width-mobile = 640px; // media query max width (mobile)
54
+
55
+ redefine-tablet() {
56
+ @media (max-width $media-max-width){
57
+ {block}
58
+ }
59
+ }
60
+
61
+ redefine-mobile() {
62
+ @media (max-width $media-max-width-mobile){
63
+ {block}
64
+ }
65
+ }
66
+
67
+ // ========================================================================================
68
+ // Z-INDEX
69
+ // ========================================================================================
70
+ $z-index-1 = 1001
71
+ $z-index-2 = 1002
72
+ $z-index-3 = 1003
73
+ $z-index-4 = 1004
74
+ $z-index-5 = 1005
75
+ $z-index-6 = 1006
76
+ $z-index-7 = 1007
77
+ $z-index-8 = 1008
78
+ $z-index-9 = 1009
79
+
80
+
81
+ // ========================================================================================
82
+ // BORDER RADIUS
83
+ // ========================================================================================
84
+
85
+ $redefine-border-radius-none = 0px
86
+ $redefine-border-radius-xsmall = 4px
87
+ $redefine-border-radius-xsmall-top = 4px 4px 0px 0px
88
+ $redefine-border-radius-xsmall-bottom = 0px 0px 4px 4px
89
+ $redefine-border-radius-small = 9px
90
+ $redefine-border-radius-small-top = 9px 9px 0px 0px
91
+ $redefine-border-radius-small-bottom = 0px 0px 9px 9px
92
+ $redefine-border-radius-medium = 14px
93
+ $redefine-border-radius-medium-top = 14px 14px 0px 0px
94
+ $redefine-border-radius-medium-bottom = 0px 0px 14px 14px
95
+ $redefine-border-radius-large = 18px
96
+ $redefine-border-radius-large-top = 18px 18px 0px 0px
97
+ $redefine-border-radius-large-bottom = 0px 0px 18px 18px
98
+ $redefine-border-radius-xlarge = 24px
99
+ $redefine-border-radius-xlarge-top = 24px 24px 0px 0px
100
+ $redefine-border-radius-xlarge-bottom = 0px 0px 24px 24px
101
+ $redefine-border-radius-xxlarge = 48px
102
+ $redefine-border-radius-xxlarge-top = 48px 48px 0px 0px
103
+ $redefine-border-radius-xxlarge-bottom = 0px 0px 48px 48px
104
+ $redefine-border-radius-full = 50%
105
+ $redefine-border-radius-full-top = 50% 50% 0px 0px
106
+ $redefine-border-radius-full-bottom = 0px 0px 50% 50%
107
+
108
+ $temp-usr-img-border-radius = hexo-config('articles.style.image_border_radius')
109
+ $usr-img-border-radius = $temp-usr-img-border-radius ? convert($temp-usr-img-border-radius) : $redefine-border-radius-medium
110
+
111
+ // ========================================================================================
112
+ // MERMAID THEME
113
+ // ========================================================================================
114
+ $mermaid-theme = hexo-config('mermaid.theme.light')
115
+ $dark-mermaid-theme = hexo-config('mermaid.theme.dark')
116
+
117
+
118
+
119
+ // ========================================================================================
120
+ // FONT VARIABLES
121
+ // ========================================================================================
122
+
123
+ if hexo-config('global.fonts.chinese.enable') {
124
+ $temp-chinese-font-family = hexo-config('global.fonts.chinese.family')
125
+ $chinese-font-family = $temp-chinese-font-family ? $temp-chinese-font-family : 'PingFang SC'
126
+ } else {
127
+ $chinese-font-family = -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Microsoft YaHei', 'Heiti SC', 'WenQuanYi Micro Hei', sans-serif;
128
+ }
129
+
130
+ if hexo-config('global.fonts.english.enable') {
131
+ $temp-english-font-family = hexo-config('global.fonts.english.family')
132
+ $english-font-family = $temp-english-font-family ? $temp-english-font-family : 'Geist Variable'
133
+ } else {
134
+ $english-font-family = 'Geist Variable'
135
+ }
136
+
137
+ $default-font-family = Geist Variable, Noto Sans SC, -apple-system, system-ui, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial
138
+ $default-font-size = 16px
139
+ $temp-default-article-font-size = hexo-config('articles.style.font_size')
140
+ $temp-default-line-height = hexo-config('articles.style.line_height')
141
+ $default-article-font-size = $temp-default-article-font-size ? convert($temp-default-article-font-size) : 16px
142
+ $default-line-height = $temp-default-line-height ? $temp-default-line-height : 1.5
143
+ $default-font-weight = 400
144
+
145
+