hexo-theme-solitude 1.11.3 → 1.12.1

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 (73) hide show
  1. package/.github/logo.svg +18 -42
  2. package/CONTRIBUTING.md +1 -1
  3. package/README.md +7 -19
  4. package/README_en-US.md +16 -26
  5. package/README_zh-Hant.md +15 -25
  6. package/SECURITY.md +1 -1
  7. package/_config.yml +52 -37
  8. package/languages/default.yml +15 -0
  9. package/languages/en.yml +15 -1
  10. package/languages/zh-CN.yml +14 -0
  11. package/languages/zh-TW.yml +14 -0
  12. package/layout/includes/body/mode.pug +3 -3
  13. package/layout/includes/console.pug +4 -3
  14. package/layout/includes/inject/body.pug +2 -3
  15. package/layout/includes/inject/head.pug +3 -2
  16. package/layout/includes/widgets/aside/asideNewstComments.pug +9 -0
  17. package/layout/includes/widgets/aside/asideSwitch.pug +2 -0
  18. package/layout/includes/widgets/home/carousel.pug +18 -1
  19. package/layout/includes/widgets/home/postList.pug +4 -3
  20. package/layout/includes/widgets/post/copyright.pug +46 -0
  21. package/layout/includes/widgets/post/postMeta.pug +1 -1
  22. package/layout/includes/widgets/post/postNav.pug +4 -4
  23. package/layout/includes/widgets/third-party/comments/comment.pug +3 -1
  24. package/layout/includes/widgets/third-party/comments/giscus.pug +60 -0
  25. package/layout/includes/widgets/third-party/comments/js.pug +3 -1
  26. package/layout/includes/widgets/third-party/news-comment/artalk.pug +10 -12
  27. package/layout/includes/widgets/third-party/news-comment/newest-comment.pug +6 -5
  28. package/layout/includes/widgets/third-party/news-comment/twikoo.pug +10 -9
  29. package/layout/includes/widgets/third-party/news-comment/valine.pug +9 -7
  30. package/layout/includes/widgets/third-party/news-comment/waline.pug +9 -7
  31. package/layout/post.pug +0 -22
  32. package/package.json +3 -3
  33. package/plugins.yml +6 -1
  34. package/scripts/event/merge_config.js +17 -16
  35. package/scripts/event/welcome.js +1 -1
  36. package/scripts/filter/default.js +2 -2
  37. package/scripts/filter/post_image.js +13 -0
  38. package/scripts/helper/page.js +6 -2
  39. package/source/css/_highlight/color.styl +69 -131
  40. package/source/css/_highlight/highlight/diff.styl +34 -62
  41. package/source/css/_highlight/index.styl +1 -1
  42. package/source/css/_highlight/prismjs/diff.styl +60 -59
  43. package/source/css/_layout/article-container.styl +1 -5
  44. package/source/css/_layout/aside.styl +52 -5
  45. package/source/css/_layout/console.styl +3 -78
  46. package/source/css/_page/_home/carousel.styl +2 -0
  47. package/source/css/_page/message.styl +2 -1
  48. package/source/css/_page/music.styl +8 -1
  49. package/source/css/_page/other.styl +1 -0
  50. package/source/css/_post/commentBarrage.styl +2 -11
  51. package/source/css/_post/copyright.styl +129 -2
  52. package/source/css/_post/meta.styl +4 -44
  53. package/source/css/_post/pagination.styl +13 -0
  54. package/source/css/_post/postAI.styl +2 -3
  55. package/source/css/_post/relatedPost.styl +115 -129
  56. package/source/css/_post/tools.styl +168 -271
  57. package/source/css/third_party/snackbar.min.css +1 -1
  58. package/source/img/404.avif +0 -0
  59. package/source/img/avatar.avif +0 -0
  60. package/source/img/default.avif +0 -0
  61. package/source/img/error_load.avif +0 -0
  62. package/source/img/happy-sticker.avif +0 -0
  63. package/source/img/loading.avif +0 -0
  64. package/source/img/recent_c.avif +0 -0
  65. package/source/js/main.js +98 -277
  66. package/source/js/music.js +1 -0
  67. package/source/js/right_menu.js +163 -136
  68. package/source/img/404.webp +0 -0
  69. package/source/img/avatar.png +0 -0
  70. package/source/img/default.png +0 -0
  71. package/source/img/error_load.webp +0 -0
  72. package/source/img/happy-sticker.png +0 -0
  73. package/source/img/loading.gif +0 -0
@@ -1,79 +1,80 @@
1
1
  pre[class*='language-']
2
- .token
3
- &.function,
4
- &.punctuation
5
- color $highlight-blue
6
2
 
7
- .token.comment,
8
- .token.prolog,
9
- .token.doctype,
10
- .token.cdata
11
- color $highlight-comment
3
+ .keyword
4
+ .function
5
+ color $highlight-variable-light
12
6
 
13
- .token.namespace
14
- opacity: .7
7
+ .operator
8
+ color $highlight-variable-light
15
9
 
16
- .token.operator,
17
- .token.boolean,
18
- .token.number
19
- color: $highlight-orange
10
+ .number
11
+ color $highlight-number-light
20
12
 
21
- .token.property
22
- color: $highlight-yellow
13
+ .property
14
+ .class-name
15
+ .title
16
+ color $highlight-title-light
23
17
 
24
- .token.tag
25
- color: $highlight-blue
18
+ .string
19
+ color $highlight-string-light
20
+
21
+ .parameter
22
+ color $highlight-parameter-light
26
23
 
27
- .token.string
28
- color: $highlight-green
24
+ .blockquote
25
+ cikir $highlight-emphasis-light
29
26
 
30
- .token.selector
31
- color: $highlight-deletion
27
+ .comment
28
+ color $highlight-comment-light
32
29
 
33
- .token.attr-name
34
- color: $highlight-orange
30
+ .atrule
31
+ color $highlight-emphasis-light
35
32
 
36
- .token.entity,
37
- .token.url,
38
- .language-css .token.string,
39
- .style .token.string
40
- color: $highlight-aqua
33
+ .boolean
34
+ color $highlight-important-light
41
35
 
42
- .token.attr-value,
43
- .token.keyword,
44
- .token.control,
45
- .token.directive,
46
- .token.unit
47
- color: $highlight-yellow
36
+ .deleted
37
+ color $highlight-deleted
48
38
 
49
- .token.statement,
50
- .token.regex,
51
- .token.atrule
52
- color: $highlight-aqua
39
+ .inserted
40
+ color $highlight-inserted
53
41
 
54
- .token.placeholder,
55
- .token.variable
56
- color: $highlight-blue
42
+ [data-theme='dark'] &
43
+ .keyword
44
+ .function
45
+ color $highlight-variable-dark
57
46
 
58
- .token.deleted
59
- color: var(--efu-red)
47
+ .operator
48
+ color $highlight-variable-dark
60
49
 
61
- .token.inserted
62
- color: var(--efu-green)
50
+ .number
51
+ color $highlight-number-dark
63
52
 
64
- .token.italic
65
- font-style: italic
53
+ .property
54
+ .class-name
55
+ .title
56
+ color $highlight-title-dark
66
57
 
67
- .token.important,
68
- .token.bold
69
- font-weight: bold
58
+ .string
59
+ color $highlight-string-dark
60
+
61
+ .parameter
62
+ color $highlight-parameter-dark
70
63
 
71
- .token.important
72
- color: $highlight-orange
64
+ .blockquote
65
+ color $highlight-emphasis-dark
73
66
 
74
- .token.entity
75
- cursor: help
67
+ .comment
68
+ color $highlight-comment-dark
76
69
 
77
- pre > code.highlight
78
- outline: .4em solid $highlight-orange
79
- outline-offset: .4em
70
+ .atrule
71
+ color $highlight-emphasis-dark
72
+
73
+ .boolean
74
+ color $highlight-important-dark
75
+
76
+ .deleted
77
+ color $highlight-deleted
78
+
79
+ .inserted
80
+ color $highlight-inserted
@@ -193,11 +193,7 @@
193
193
  border-top 1px dashed var(--efu-theme-op)
194
194
  padding-top 1rem
195
195
 
196
- h3
197
- font-size 1.1rem
198
- line-height 1.3
199
-
200
- h4
196
+ h3, h4
201
197
  font-size 1.1rem
202
198
  line-height 1.3
203
199
 
@@ -631,9 +631,9 @@ if hexo-config('aside.card.style') == 2
631
631
  gap .5rem
632
632
  z-index 1
633
633
  if hexo-config('aside.position') == 0
634
- right 1rem
635
- else
636
- left 1rem
634
+ right 1rem
635
+ else
636
+ left 1rem
637
637
 
638
638
  .headline
639
639
  color var(--efu-gray)
@@ -777,7 +777,7 @@ if hexo-config('aside.card.style') == 2
777
777
  hr
778
778
  display flex
779
779
  position relative
780
- margin 1rem 0
780
+ margin .5rem 0
781
781
  border 1px dashed var(--efu-theme-op)
782
782
 
783
783
  .item-headline
@@ -1047,4 +1047,51 @@ backcolor = convert(hexo-config('aside.flip.backcolor'))
1047
1047
  background-size 100%
1048
1048
 
1049
1049
  .card-widget.card-adsense
1050
- padding 0
1050
+ padding 0
1051
+
1052
+ if hexo-config('aside.newest_comment.enable')
1053
+ .card-recent-comment
1054
+ .recent-comment-more
1055
+ margin-left auto
1056
+ margin-right .5rem
1057
+ &:hover
1058
+ color var(--efu-lighttext)
1059
+ transition .3s
1060
+ .aside-list-item
1061
+ padding: .5rem
1062
+ width: 100%
1063
+ display: flex
1064
+ flex-direction: row
1065
+ height: 80px
1066
+ transition: .3s
1067
+ position: relative
1068
+ &:not(:last-child)
1069
+ border-bottom 1px dashed rgba(255, 255, 255, .1)
1070
+
1071
+ .thumbnail img
1072
+ width: 60px
1073
+ height: 60px
1074
+ margin-right: 8px
1075
+ border-radius: 12px
1076
+
1077
+ .content
1078
+ max-width: calc(100% - 68px)
1079
+ line-height 1.5
1080
+
1081
+ .comment
1082
+ overflow hidden
1083
+ text-overflow ellipsis
1084
+ display -webkit-box
1085
+ font-size 14px
1086
+ -webkit-line-clamp 2
1087
+ transition .3s
1088
+ -webkit-box-orient vertical
1089
+ cursor pointer
1090
+ &:hover
1091
+ color var(--efu-lighttext)
1092
+ transition .3s
1093
+
1094
+ .datetime
1095
+ font-size 12px
1096
+ color var(--efu-secondtext)
1097
+ margin-top auto
@@ -116,50 +116,6 @@
116
116
  display flex
117
117
  align-items center
118
118
 
119
- .aside-list-item
120
- .thumbnail
121
- display flex
122
- align-items center
123
-
124
- &:hover
125
- .thumbnail
126
- color var(--efu-white)
127
-
128
- .content
129
- display flex
130
- flex-direction column
131
- height 100%
132
- margin-top .5rem
133
-
134
- .comment
135
- -webkit-line-clamp 2
136
- display -webkit-box
137
- overflow hidden
138
- -webkit-box-orient vertical
139
- line-height 24px
140
- font-size 14px
141
-
142
- &::before
143
- content ''
144
- width 100%
145
- height 100%
146
- position absolute
147
- top 0
148
- left 0
149
-
150
- &:hover
151
- .comment
152
- color var(--efu-white)
153
-
154
- time
155
- font-size 12px
156
- color var(--efu-secondtext)
157
- margin-top auto
158
-
159
- &:hover
160
- time
161
- color var(--efu-white)
162
-
163
119
  .aside-list
164
120
  display flex
165
121
  flex-wrap wrap
@@ -183,8 +139,10 @@
183
139
  [data-theme="dark"] &
184
140
  background var(--efu-orange)
185
141
  color var(--efu-white)
142
+
186
143
  .button-group
187
144
  gap .5rem
145
+
188
146
  .console-btn-item
189
147
  &:hover
190
148
  span
@@ -349,37 +307,4 @@
349
307
 
350
308
  #consoleHideAside
351
309
  +maxWidth768()
352
- display none
353
-
354
- #card-newest-comments
355
- .aside-list-item
356
- background: var(--efu-card-bg)
357
- border-radius: 12px
358
- border: var(--style-border)
359
- padding: 12px 16px
360
- width: 49%
361
- display: flex
362
- flex-direction: column
363
- height: 150px
364
- transition: .3s
365
- position: relative
366
- cursor pointer
367
-
368
- &:hover
369
- background: var(--efu-main)
370
- color: var(--efu-white)
371
-
372
- &:not(:last-child)
373
- margin-bottom: .5rem
374
-
375
- .thumbnail img
376
- width: 20px
377
- height: 20px
378
- margin-right: 8px
379
- border-radius: 20px
380
-
381
- .name
382
- text-overflow: ellipsis
383
- overflow: hidden
384
- white-space: nowrap
385
- font-weight: 700
310
+ display none
@@ -36,6 +36,8 @@ div#swiper_container
36
36
  #swiperBox.recent-post-item
37
37
  width 100%
38
38
  margin-top 0
39
+ flex 1 1 100%
40
+ max-width none
39
41
  +maxWidth798()
40
42
  display none
41
43
 
@@ -59,5 +59,6 @@
59
59
  overflow hidden
60
60
  text-overflow ellipsis
61
61
 
62
- .hide
62
+ #barrage.hide
63
+ z-index -1
63
64
  opacity 0
@@ -26,10 +26,13 @@ body[data-type=music]
26
26
  height 200%
27
27
  top -50%
28
28
  left -50%
29
+ background-position 0 0
29
30
  background-size 40%
30
31
  transition 0.6s
31
-
32
+ background-color rgba(0, 0, 0, 0.4)
33
+
32
34
  &:before
35
+ display none
33
36
  content ''
34
37
  background rgba(0, 0, 0, 0.4)
35
38
  backdrop-filter blur(200px)
@@ -41,6 +44,10 @@ body[data-type=music]
41
44
  width 200%
42
45
  height 200%
43
46
 
47
+ &.show
48
+ &:before
49
+ display block
50
+
44
51
  #Music-page
45
52
  max-width 1400px
46
53
 
@@ -92,6 +92,7 @@ div#banners
92
92
  +maxWidth600()
93
93
  opacity 0.06
94
94
  filter blur(8px)
95
+ z-index -1
95
96
 
96
97
  &.nowrapMove
97
98
  padding-bottom 2rem
@@ -117,23 +117,14 @@
117
117
  max-width 270px
118
118
 
119
119
  img:not(.tk-owo-emotion)
120
- display none
120
+ display none
121
121
  img.tk-owo-emotion
122
122
  width 16px
123
123
  padding 0
124
124
  margin 0
125
125
  transform translateY(2px)
126
126
 
127
- pre
128
- display none
129
-
130
- li
131
- display none
132
-
133
- blockquote
134
- display none
135
-
136
- br
127
+ pre, li, blockquote, br
137
128
  display none
138
129
 
139
130
  &::-webkit-scrollbar
@@ -4,7 +4,7 @@
4
4
  border-width 1px
5
5
  transition 0.3s
6
6
  position relative
7
- margin 80px 0 30px
7
+ margin 80px 0 .5rem
8
8
  border-radius 12px
9
9
  padding 34px 0 20px 0
10
10
  border var(--style-border-always)
@@ -84,4 +84,131 @@
84
84
  background-color var(--efu-main)
85
85
  color var(--efu-white)
86
86
  cursor pointer
87
- border-radius 4px
87
+ border-radius 4px
88
+
89
+ .social-share
90
+ display flex
91
+ justify-content center
92
+ height 40px
93
+ margin .5rem auto
94
+ gap .5rem
95
+ flex-wrap wrap
96
+
97
+ .social-share-ico
98
+ display flex
99
+ justify-content center
100
+ align-items center
101
+ width 40px
102
+ height 40px
103
+ border-radius 12px
104
+ border var(--style-border)
105
+ cursor pointer
106
+ transition .3s
107
+
108
+ +maxWidth768()
109
+ &:nth-child(n+6)
110
+ display none
111
+
112
+ &:hover
113
+ color white
114
+
115
+ .icon-qq
116
+ color #56b6e7
117
+ border-color #56b6e7
118
+ &:hover
119
+ background-color #56b6e7
120
+
121
+ .icon-weibo
122
+ color #d44040
123
+ border-color #d44040
124
+
125
+ &:hover
126
+ background-color #d44040
127
+
128
+ .icon-facebook
129
+ color #415dc9
130
+ border-color #415dc9
131
+
132
+ &:hover
133
+ background-color #415dc9
134
+
135
+ .icon-twitter
136
+ color #56b6e7
137
+ border-color #56b6e7
138
+
139
+ &:hover
140
+ background-color #56b6e7
141
+
142
+ .icon-telegram
143
+ color #56b6e7
144
+ border-color #56b6e7
145
+
146
+ &:hover
147
+ background-color #56b6e7
148
+
149
+ .icon-linkedin
150
+ color #0077b5
151
+ border-color #0077b5
152
+
153
+ &:hover
154
+ background-color #0077b5
155
+ .icon-whatsapp
156
+ color #25d366
157
+ border-color #25d366
158
+
159
+ &:hover
160
+ background-color #25d366
161
+ .icon-link
162
+ color #425AEF
163
+ border-color #425AEF
164
+
165
+ &:hover
166
+ background-color #425AEF
167
+ .icon-qrcode
168
+ position relative
169
+ color #000
170
+ border-color #000
171
+
172
+ +maxWidth900()
173
+ display none
174
+
175
+ &:hover
176
+ background-color #000
177
+
178
+ .share-main
179
+ display flex
180
+
181
+ .share-main
182
+ display none
183
+ position absolute
184
+ bottom 1.7rem
185
+ z-index 100
186
+ padding-bottom 15px
187
+
188
+ &-all
189
+ padding 12px
190
+ border-radius 12px
191
+ background var(--efu-background)
192
+ animation donate_effcet 0.3s 0.1s ease both
193
+ flex-direction column
194
+ border var(--style-border-always)
195
+
196
+ .reward-dec
197
+ font-size 0.6rem
198
+ color var(--efu-fontcolor)!important
199
+ text-align center
200
+
201
+ #qrcode
202
+ width 150px
203
+ height 150px
204
+ min-width 150px
205
+ min-height 150px
206
+ background var(--efu-white)
207
+ padding 8px
208
+ border-radius 8px
209
+ margin-bottom 8px
210
+ border var(--style-border-always)
211
+
212
+ img
213
+ width 132px
214
+ height 132px
@@ -35,8 +35,6 @@
35
35
  +maxWidth768()
36
36
  height 15rem
37
37
 
38
- /*** 顶部背景 ***/
39
-
40
38
  .post-bg
41
39
  .main-hero-waves-area
42
40
  width 100%
@@ -109,22 +107,6 @@
109
107
  left 0
110
108
  box-shadow 110px -130px 300px 60px var(--efu-main) inset
111
109
 
112
- +minWidth1300()
113
- width 70%
114
- height 100%
115
- position relative
116
- overflow hidden
117
- margin 0 -20% 0 auto
118
- transform rotate(10deg) translateY(-8%) scale(1.8)
119
- filter blur(10px)
120
- opacity 0
121
-
122
- &.loaded
123
- display block
124
- opacity .5
125
- animation showCover 1s .3s backwards
126
- transform rotate(10deg) translateY(-10%) scale(2)
127
-
128
110
  +minWidth768()
129
111
  width 70%
130
112
  height 100%
@@ -154,10 +136,6 @@
154
136
  &.loaded
155
137
  display block
156
138
 
157
- /*** 顶部背景 end ***/
158
-
159
- /*** 顶部信息 ***/
160
-
161
139
  #post-info
162
140
  top 0
163
141
  position absolute
@@ -248,39 +226,21 @@
248
226
  display: flex
249
227
  align-items center
250
228
  line-height 1
229
+ margin 0 .5rem
251
230
 
252
231
  +maxWidth768()
253
232
  line-height 1.5
254
233
 
255
234
  > span:first-child
256
- margin-right .8rem
235
+ margin-left 0
257
236
 
258
- .post-meta-date
259
- margin-right .8rem
260
- opacity .6
261
-
262
- .post-meta-wordcount
237
+ .post-meta-date, .post-meta-wordcount, .post-meta-position, .post-meta-pv
263
238
  opacity .6
264
- margin-right 20px
265
-
266
- +maxWidth768()
267
- margin-left 0
268
-
269
- > span.word-count
270
- font-weight 800
271
-
272
- > span:nth-child(7)
273
- font-weight 800
274
239
 
275
240
  .post-meta-separator
276
- margin 0 10px
277
-
278
- .post-meta-position
279
- margin-right 12px
280
- opacity .6
241
+ margin 0 1rem 0 0
281
242
 
282
243
  .post-meta-pv
283
- opacity .6
284
244
  margin-right 8px
285
245
  padding 0 8px
286
246
  display flex
@@ -2,6 +2,10 @@
2
2
  overflow hidden
3
3
  position inherit
4
4
  border var(--style-border-always)
5
+
6
+ div:only-child
7
+ width 100%!important
8
+
5
9
  +minWidth1300()
6
10
  position fixed
7
11
  width 300px
@@ -15,6 +19,7 @@
15
19
  overflow hidden
16
20
  cursor pointer
17
21
  opacity 0
22
+
18
23
  +maxWidth768()
19
24
  border-radius 12px
20
25
  border var(--style-border-always)
@@ -23,18 +28,22 @@
23
28
  &.pagination-post
24
29
  margin-top 1.5rem
25
30
  background var(--efu-card-bg)
31
+
26
32
  +minWidth768()
27
33
  border-radius 12px
28
34
  margin-top 1rem
35
+
29
36
  +minWidth1300()
30
37
  margin-top 0
31
38
 
32
39
  .next-post, .prev-post, .next-post.pull-right, .prev-post.pull-left
33
40
  background var(--efu-secondbg)
41
+
34
42
  +minWidth1300()
35
43
  background var(--efu-maskbgdeep)
36
44
  backdrop-filter blur(5px)
37
45
  transform translateZ(0)
46
+
38
47
  +maxWidth768()
39
48
  background var(--efu-card-bg)
40
49
 
@@ -45,6 +54,7 @@
45
54
  .prev-post.pull-left
46
55
  +minWidth1300()
47
56
  display none
57
+
48
58
  +maxWidth768()
49
59
  border-bottom var(--style-border-always)
50
60
 
@@ -54,9 +64,11 @@
54
64
 
55
65
  .next-post, .prev-post
56
66
  width 50%
67
+
57
68
  +minWidth1300()
58
69
  text-align left
59
70
  position relative
71
+
60
72
  +maxWidth768()
61
73
  width 100%
62
74
 
@@ -136,6 +148,7 @@
136
148
  padding 1rem 2rem
137
149
  width 100%
138
150
  transform translate(0, -50%)
151
+
139
152
  +minWidth768()
140
153
  padding 1rem 1.5rem 1rem 1.5rem
141
154
  position relative