hexo-theme-solitude 1.6.1 → 1.7.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.
- package/README.md +1 -1
- package/README_zh-cn.md +1 -1
- package/README_zh-tw.md +1 -1
- package/SECURITY.md +5 -5
- package/_config.yml +30 -15
- package/languages/en.yml +20 -2
- package/languages/zh-CN.yml +25 -1
- package/languages/zh-TW.yml +25 -1
- package/layout/category.pug +1 -1
- package/layout/includes/console.pug +8 -7
- package/layout/includes/head/config.pug +66 -40
- package/layout/includes/inject/body.pug +7 -3
- package/layout/includes/inject/head.pug +35 -1
- package/layout/includes/widgets/post/copyright.pug +5 -5
- package/layout/includes/widgets/post/postMeta.pug +8 -1
- package/layout/includes/widgets/third-party/comments/comment.pug +5 -7
- package/layout/includes/widgets/third-party/comments/valine.pug +44 -0
- package/layout/includes/widgets/third-party/comments/waline.pug +40 -12
- package/layout/includes/widgets/third-party/news-comment/newest-comment.pug +5 -3
- package/layout/includes/widgets/third-party/news-comment/twikoo.pug +12 -10
- package/layout/includes/widgets/third-party/news-comment/valine.pug +79 -0
- package/layout/includes/widgets/third-party/news-comment/waline.pug +25 -20
- package/layout/page.pug +3 -0
- package/layout/tag.pug +1 -1
- package/package.json +1 -1
- package/plugins.yml +15 -3
- package/scripts/event/cdn.js +7 -2
- package/scripts/event/init.js +4 -2
- package/scripts/event/merge_config.js +6 -5
- package/scripts/helper/related_post.js +2 -2
- package/scripts/tags/tabs.js +1 -1
- package/source/css/_comments/{index.styl → comment.styl} +4 -24
- package/source/css/_comments/valine.styl +245 -0
- package/source/css/_global/index.styl +3 -0
- package/source/css/_highlight/highlight/index.styl +1 -1
- package/source/css/_page/index.styl +1 -4
- package/source/css/_post/content.styl +13 -7
- package/source/css/_post/copyright.styl +4 -1
- package/source/css/index.styl +1 -3
- package/source/js/commentBarrage/twikoo.js +4 -4
- package/source/js/commentBarrage/valine.js +156 -0
- package/source/js/commentBarrage/waline.js +3 -3
- package/source/js/main.js +28 -33
- package/source/js/third_party/efu_ai.min.js +6 -0
- package/source/js/utils.js +14 -1
- package/source/css/_comments/waline.styl +0 -455
- package/source/js/third_party/sco-ai.min.js +0 -8
@@ -1,17 +1,45 @@
|
|
1
|
-
- const { envId, option } = theme.comment.waline
|
1
|
+
- const { envId, option ,pageview } = theme.comment.waline
|
2
|
+
- const { lazyload, count } = theme.comment
|
2
3
|
|
3
4
|
script.
|
4
5
|
async function initComment() {
|
5
|
-
|
6
|
-
|
7
|
-
serverURL: '!{envId}',
|
8
|
-
pageview: !{theme.post.meta.pv},
|
9
|
-
dark: 'html[data-theme="dark"]',
|
10
|
-
path: window.location.pathname,
|
11
|
-
search: false,
|
12
|
-
comment: #{theme.post.meta.comment && is_post()},
|
13
|
-
}, !{JSON.stringify(option)}))
|
6
|
+
const isLazyLoad = !!{lazyload};
|
7
|
+
let walineInitFunction = window.walineFn || null;
|
14
8
|
|
15
|
-
|
16
|
-
|
9
|
+
async function initWaline(Fn) {
|
10
|
+
const walineOptions = {
|
11
|
+
el: '#comment',
|
12
|
+
serverURL: '!{envId}',
|
13
|
+
pageview: !isLazyLoad,
|
14
|
+
dark: 'html[data-theme="dark"]',
|
15
|
+
path: window.location.pathname,
|
16
|
+
comment: !isLazyLoad,
|
17
|
+
...!{JSON.stringify(option)}
|
18
|
+
};
|
19
|
+
const walineInstance = Fn(walineOptions);
|
20
|
+
|
21
|
+
utils.addGlobalFn('pjax', () => walineInstance.destroy(), 'destroyWaline');
|
22
|
+
}
|
23
|
+
|
24
|
+
async function loadWalineCSSAndJS() {
|
25
|
+
if (!walineInitFunction) {
|
26
|
+
await getCSS('!{url_for(theme.cdn.waline_css)}');
|
27
|
+
const {init} = await import('!{url_for(theme.cdn.waline_js)}');
|
28
|
+
walineInitFunction = init || Waline.init;
|
29
|
+
window.walineFn = walineInitFunction;
|
30
|
+
}
|
31
|
+
initWaline(walineInitFunction);
|
32
|
+
}
|
33
|
+
|
34
|
+
if (isLazyLoad) {
|
35
|
+
utils.loadComment(document.getElementById('comment'),loadWalineCSSAndJS);
|
36
|
+
} else {
|
37
|
+
await loadWalineCSSAndJS();
|
38
|
+
}
|
39
|
+
|
40
|
+
if (GLOBAL_CONFIG.lightbox) {
|
41
|
+
utils.lightbox(document.querySelectorAll('#comment .wl-content img:not(.wl-emoji)'));
|
42
|
+
}
|
43
|
+
|
44
|
+
sco.owoBig();
|
17
45
|
}
|
@@ -1,6 +1,8 @@
|
|
1
|
-
if theme.comment.enable && theme.comment.
|
1
|
+
if theme.comment.enable && theme.console_plus && theme.comment.newest_comment.enable
|
2
2
|
case theme.comment.type
|
3
3
|
when 'twikoo'
|
4
|
-
|
4
|
+
!=partial('includes/widgets/third-party/news-comment/twikoo',{}, {cache: true})
|
5
5
|
when 'waline'
|
6
|
-
|
6
|
+
!=partial('includes/widgets/third-party/news-comment/waline',{}, {cache: true})
|
7
|
+
when 'valine'
|
8
|
+
!=partial('includes/widgets/third-party/news-comment/valine',{}, {cache: true})
|
@@ -15,12 +15,12 @@ script.
|
|
15
15
|
return content.length > 150 ? content.substring(0, 150) + '...' : content;
|
16
16
|
}
|
17
17
|
|
18
|
-
const
|
19
|
-
const $dom = document.querySelector('#card-newest-comments .aside-list')
|
18
|
+
const $asideList = document.querySelector('#card-newest-comments .aside-list')
|
20
19
|
|
20
|
+
const getComment = () => {
|
21
21
|
const runTwikoo = () => {
|
22
22
|
twikoo.getRecentComments({
|
23
|
-
envId: GLOBAL_CONFIG.comment.
|
23
|
+
envId: GLOBAL_CONFIG.comment.url,
|
24
24
|
region: '',
|
25
25
|
pageSize: 6,
|
26
26
|
includeReply: true
|
@@ -32,18 +32,18 @@ script.
|
|
32
32
|
'url': `${e.url}#${e.id}`,
|
33
33
|
'date': new Date(e.created).toISOString()
|
34
34
|
}))
|
35
|
+
saveToLocal.set('twikoo-newest-comment', JSON.stringify(twikooArray), !{theme.comment.newest_comment.storage}/(60*24))
|
35
36
|
generateHtml(twikooArray)
|
36
37
|
}).catch(function (err) {
|
37
38
|
console.error(err)
|
38
|
-
$
|
39
|
+
$asideList.textContent = "!{_p('newest_comment.error')}"
|
39
40
|
})
|
40
41
|
}
|
41
42
|
runTwikoo()
|
42
43
|
}
|
43
44
|
|
44
45
|
const generateHtml = array => {
|
45
|
-
|
46
|
-
$dom.innerHTML = array.length ? array.map(item => `
|
46
|
+
$asideList.innerHTML = array.length ? array.map(item => `
|
47
47
|
<div class='aside-list-item'>
|
48
48
|
<a onclick='pjax.loadUrl("${item.url}")' class='thumbnail'>
|
49
49
|
<img src='${item.avatar}' alt='${item.nick}'>
|
@@ -54,15 +54,17 @@ script.
|
|
54
54
|
<time class="datetime" datetime="${item.date}"></time>
|
55
55
|
</div>
|
56
56
|
</div>
|
57
|
-
`).join('') : '
|
57
|
+
`).join('') : "!{_p('newest_comment.zero')}"
|
58
58
|
window.lazyLoadInstance && window.lazyLoadInstance.update()
|
59
|
-
window.pjax && window.pjax.refresh(
|
59
|
+
window.pjax && window.pjax.refresh()
|
60
60
|
utils && utils.changeTimeFormat()
|
61
61
|
}
|
62
62
|
|
63
63
|
const newestCommentInit = () => {
|
64
|
-
const
|
65
|
-
if (
|
64
|
+
const data = saveToLocal.get('twikoo-newest-comment')
|
65
|
+
if (data) {
|
66
|
+
generateHtml(JSON.parse(data))
|
67
|
+
} else {
|
66
68
|
getComment()
|
67
69
|
}
|
68
70
|
}
|
@@ -0,0 +1,79 @@
|
|
1
|
+
script.
|
2
|
+
window.addEventListener('load', () => {
|
3
|
+
const changeContent = (content) => {
|
4
|
+
if (content === '') return content;
|
5
|
+
|
6
|
+
const replacements = [
|
7
|
+
{regex: /<img.*?src="(.*?)"?[^\>]+>/ig, replacement: '[Image]'},
|
8
|
+
{regex: /<a[^>]+?href=["']?([^"']+)["']?[^>]*>([^<]+)<\/a>/gi, replacement: '[URL]'},
|
9
|
+
{regex: /```[\s\S]*?```/g, replacement: '[Code]'},
|
10
|
+
{regex: /<[^>]+>/g, replacement: ""}
|
11
|
+
];
|
12
|
+
|
13
|
+
content = replacements.reduce((str, {regex, replacement}) => str.replace(regex, replacement), content);
|
14
|
+
|
15
|
+
return content.length > 150 ? content.substring(0, 150) + '...' : content;
|
16
|
+
}
|
17
|
+
|
18
|
+
const $asideList = document.querySelector('#card-newest-comments .aside-list')
|
19
|
+
const newestCommentInit = () => {
|
20
|
+
const data = saveToLocal.get('valine-newest-comment')
|
21
|
+
if (data) {
|
22
|
+
generateHtml(JSON.parse(data))
|
23
|
+
} else {
|
24
|
+
getComment()
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
const getComment = async () => {
|
29
|
+
try {
|
30
|
+
const settings = {
|
31
|
+
"method": "GET",
|
32
|
+
"headers": {
|
33
|
+
"X-LC-Id": '!{theme.comment.valine.appId}',
|
34
|
+
"X-LC-Key": '!{theme.comment.valine.appKey}',
|
35
|
+
"Content-Type": "application/json"
|
36
|
+
},
|
37
|
+
}
|
38
|
+
|
39
|
+
const res = await fetch('!{theme.comment.valine.serverURLs}/1.1/classes/Comment?limit=8&order=-createdAt', settings)
|
40
|
+
const result = await res.json()
|
41
|
+
window.res = result
|
42
|
+
const valineArray = result.results.map(e => {
|
43
|
+
return {
|
44
|
+
'content': changeContent(e.comment),
|
45
|
+
'avatar': '!{theme.comment.avatar}' + '/avatar/' + md5(e.mail.toLowerCase()),
|
46
|
+
'nick': e.nick,
|
47
|
+
'url': e.url + '#' + e.objectId,
|
48
|
+
'date': e.updatedAt || e.createdAt
|
49
|
+
}
|
50
|
+
})
|
51
|
+
saveToLocal.set('valine-newest-comment', JSON.stringify(valineArray), !{theme.comment.newest_comment.storage} / (60 * 24))
|
52
|
+
generateHtml(valineArray)
|
53
|
+
} catch (err) {
|
54
|
+
console.error(err)
|
55
|
+
$asideList.textContent = "!{_p('newest_comment.error')}"
|
56
|
+
}
|
57
|
+
}
|
58
|
+
|
59
|
+
const generateHtml = array => {
|
60
|
+
const $dom = document.querySelector('#card-newest-comments .aside-list')
|
61
|
+
$dom.innerHTML = array.length ? array.map(item => `
|
62
|
+
<div class='aside-list-item'>
|
63
|
+
<a onclick='pjax.loadUrl("${item.url}")' class='thumbnail'>
|
64
|
+
<img src='${item.avatar}' alt='${item.nick}'>
|
65
|
+
<div class='name'><span>${item.nick}</span></div>
|
66
|
+
</a>
|
67
|
+
<div class='content'>
|
68
|
+
<a class='comment' onclick='pjax.loadUrl("${item.url}")'>${item.content}</a>
|
69
|
+
<time class="datetime" datetime="${item.date}"></time>
|
70
|
+
</div>
|
71
|
+
</div>
|
72
|
+
`).join('') : "!{_p('newest_comment.zero')}"
|
73
|
+
window.lazyLoadInstance && window.lazyLoadInstance.update()
|
74
|
+
window.pjax && window.pjax.refresh()
|
75
|
+
utils && utils.changeTimeFormat()
|
76
|
+
}
|
77
|
+
|
78
|
+
newestCommentInit()
|
79
|
+
})
|
@@ -17,28 +17,33 @@ script.
|
|
17
17
|
|
18
18
|
const $asideList = document.querySelector('#card-newest-comments .aside-list')
|
19
19
|
const newestCommentInit = () => {
|
20
|
-
|
20
|
+
const data = saveToLocal.get('waline-newest-comment')
|
21
|
+
if (data) {
|
22
|
+
generateHtml(JSON.parse(data))
|
23
|
+
} else {
|
21
24
|
getComment()
|
22
25
|
}
|
23
26
|
}
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
})
|
27
|
+
|
28
|
+
const getComment = async () => {
|
29
|
+
try {
|
30
|
+
const res = await fetch('!{theme.comment.waline.envId}/api/comment?type=recent&count=8', {method: 'GET'})
|
31
|
+
const result = await res.json()
|
32
|
+
const walineArray = result.data.map(e => {
|
33
|
+
return {
|
34
|
+
'content': changeContent(e.comment),
|
35
|
+
'avatar': e.avatar,
|
36
|
+
'nick': e.nick,
|
37
|
+
'url': e.url + '#' + e.objectId,
|
38
|
+
'date': e.time || e.insertedAt
|
39
|
+
}
|
40
|
+
})
|
41
|
+
saveToLocal.set('waline-newest-comment', JSON.stringify(walineArray), !{theme.comment.newest_comment.storage} / (60 * 24))
|
38
42
|
generateHtml(walineArray)
|
39
|
-
}
|
40
|
-
|
41
|
-
|
43
|
+
} catch (err) {
|
44
|
+
console.error(err)
|
45
|
+
$asideList.textContent = "!{_p('newest_comment.error')}"
|
46
|
+
}
|
42
47
|
}
|
43
48
|
|
44
49
|
const generateHtml = array => {
|
@@ -54,9 +59,9 @@ script.
|
|
54
59
|
<time class="datetime" datetime="${item.date}"></time>
|
55
60
|
</div>
|
56
61
|
</div>
|
57
|
-
`).join('') : '
|
62
|
+
`).join('') : "!{_p('newest_comment.zero')}"
|
58
63
|
window.lazyLoadInstance && window.lazyLoadInstance.update()
|
59
|
-
window.pjax && window.pjax.refresh(
|
64
|
+
window.pjax && window.pjax.refresh()
|
60
65
|
utils && utils.changeTimeFormat()
|
61
66
|
}
|
62
67
|
|
package/layout/page.pug
CHANGED
package/layout/tag.pug
CHANGED
@@ -10,7 +10,7 @@ block content
|
|
10
10
|
| #{tag.name}
|
11
11
|
span.tagsPageCount #{tag.length}
|
12
12
|
.recent-posts#recent-posts
|
13
|
-
each post in page.posts.find({ parent: { $exists: false } }).data
|
13
|
+
each post,index in page.posts.find({ parent: { $exists: false } }).data
|
14
14
|
include includes/widgets/home/postList
|
15
15
|
include includes/mixins/pagination
|
16
16
|
include includes/widgets/aside/aside
|
package/package.json
CHANGED
package/plugins.yml
CHANGED
@@ -15,10 +15,18 @@ twikoo:
|
|
15
15
|
file: dist/twikoo.all.min.js
|
16
16
|
version: 1.6.31
|
17
17
|
waline_js:
|
18
|
-
name: '
|
18
|
+
name: 'waline'
|
19
19
|
file: dist/waline.js
|
20
20
|
other_name: waline
|
21
|
-
version:
|
21
|
+
version: 3.1.3
|
22
|
+
waline_css:
|
23
|
+
name: 'waline'
|
24
|
+
file: dist/waline.css
|
25
|
+
version: 3.1.3
|
26
|
+
valine:
|
27
|
+
name: valine
|
28
|
+
file: dist/Valine.min.js
|
29
|
+
version: 1.5.1
|
22
30
|
sharejs:
|
23
31
|
name: butterfly-extsrc
|
24
32
|
file: sharejs/dist/js/social-share.min.js
|
@@ -97,4 +105,8 @@ fancyapps_css:
|
|
97
105
|
mermaid_js:
|
98
106
|
name: mermaid
|
99
107
|
file: dist/mermaid.min.js
|
100
|
-
version: 10.8.0
|
108
|
+
version: 10.8.0
|
109
|
+
blueimp_md5:
|
110
|
+
name: blueimp-md5
|
111
|
+
file: js/md5.min.js
|
112
|
+
version: 2.19.0
|
package/scripts/event/cdn.js
CHANGED
@@ -54,9 +54,9 @@ hexo.extend.filter.register('before_generate', () => {
|
|
54
54
|
file: 'js/tw_cn.js',
|
55
55
|
version
|
56
56
|
},
|
57
|
-
|
57
|
+
efu_ai: {
|
58
58
|
name: 'hexo-theme-solitude',
|
59
|
-
file: 'js/third_party/
|
59
|
+
file: 'js/third_party/efu_ai.min.js',
|
60
60
|
version
|
61
61
|
},
|
62
62
|
twikoo_commentBarrage: {
|
@@ -69,6 +69,11 @@ hexo.extend.filter.register('before_generate', () => {
|
|
69
69
|
file: 'js/commentBarrage/waline.js',
|
70
70
|
version
|
71
71
|
},
|
72
|
+
valine_commentBarrage: {
|
73
|
+
name: 'hexo-theme-solitude',
|
74
|
+
file: 'js/commentBarrage/valine.js',
|
75
|
+
version
|
76
|
+
},
|
72
77
|
waterfall: {
|
73
78
|
name: 'hexo-theme-solitude',
|
74
79
|
file: 'js/third_party/waterfall.min.js',
|
package/scripts/event/init.js
CHANGED
@@ -5,13 +5,15 @@ hexo.extend.filter.register('before_generate', () => {
|
|
5
5
|
const logger = hexo.log;
|
6
6
|
const config = hexo.config;
|
7
7
|
|
8
|
-
if (hexoVer <
|
9
|
-
logger.error('请把 Hexo 升级到
|
8
|
+
if (hexoVer < 7.0) {
|
9
|
+
logger.error('请把 Hexo 升级到 V7.0.0 或更高的版本!');
|
10
|
+
logger.error('Please upgrade your Hexo to V7.0.0 or higher!');
|
10
11
|
process.exit(-1);
|
11
12
|
}
|
12
13
|
|
13
14
|
if (Number(majorVer) < 14) {
|
14
15
|
logger.error('请将 Node.js 升级到 v14.0.0 或更高的版本!');
|
16
|
+
logger.error('Please upgrade Node.js to v14.0.0 or later!');
|
15
17
|
process.exit(-1);
|
16
18
|
}
|
17
19
|
});
|
@@ -129,7 +129,8 @@ hexo.extend.filter.register('before_generate', () => {
|
|
129
129
|
randompostjs: 'https://cdn.cbd.int/st-source/js/moment/random_post.min.js'
|
130
130
|
}, keyboard: {
|
131
131
|
enable: false, list: []
|
132
|
-
}
|
132
|
+
}
|
133
|
+
,lazyload: {
|
133
134
|
enable: false, field: 'site', placeholder: '/img/loading.gif', errorimg: '/img/error_load.png'
|
134
135
|
}, loading: {
|
135
136
|
fullpage: false, pace: true,
|
@@ -150,7 +151,7 @@ hexo.extend.filter.register('before_generate', () => {
|
|
150
151
|
enable: true,
|
151
152
|
copyright: {
|
152
153
|
enable: false,
|
153
|
-
|
154
|
+
limit: 50
|
154
155
|
}
|
155
156
|
}
|
156
157
|
, post_ai: {
|
@@ -164,7 +165,7 @@ hexo.extend.filter.register('before_generate', () => {
|
|
164
165
|
enable: false, per_page: false, copytex: false,
|
165
166
|
}, comment: {
|
166
167
|
enable: false,
|
167
|
-
type: '
|
168
|
+
type: '',
|
168
169
|
commentBarrage: false,
|
169
170
|
newComment: false,
|
170
171
|
randomInfoStart: [`baby's`, `little`, `my`,],
|
@@ -180,8 +181,8 @@ hexo.extend.filter.register('before_generate', () => {
|
|
180
181
|
font: {
|
181
182
|
'font-size': '16px',
|
182
183
|
'code-font-size': '16px',
|
183
|
-
'font-family': '
|
184
|
-
'code-font-family': '
|
184
|
+
'font-family': 'PingFang SC, Hiragino Sans GB,Microsoft YaHei',
|
185
|
+
'code-font-family': 'monospace, monospace',
|
185
186
|
},
|
186
187
|
extends: {
|
187
188
|
head: [], body: [],
|
@@ -5,7 +5,7 @@ hexo.extend.helper.register('related_posts', function (currentPost, allPosts) {
|
|
5
5
|
const config = hexo.theme.config
|
6
6
|
const limitNum = config.related_post.limit || 6
|
7
7
|
const dateType = config.related_post.date_type || 'created'
|
8
|
-
const headlineLang = this._p('
|
8
|
+
const headlineLang = this._p('star')
|
9
9
|
|
10
10
|
currentPost.tags.forEach(function (tag) {
|
11
11
|
allPosts.forEach(function (post) {
|
@@ -36,7 +36,7 @@ hexo.extend.helper.register('related_posts', function (currentPost, allPosts) {
|
|
36
36
|
relatedPosts.sort(compare('weight', dateType))
|
37
37
|
|
38
38
|
let result = '<div class="relatedPosts">'
|
39
|
-
result += `<div class="headline"><i class="solitude st-star-smile-fill"></i><span>${headlineLang}</span><div class="relatedPosts-link"><a onclick="event.preventDefault(); toRandomPost();" href="javascript:void(0);" rel="external nofollow" data-pjax-state=""
|
39
|
+
result += `<div class="headline"><i class="solitude st-star-smile-fill"></i><span>${headlineLang}</span><div class="relatedPosts-link"><a onclick="event.preventDefault(); toRandomPost();" href="javascript:void(0);" rel="external nofollow" data-pjax-state="">${this._p('random')}</a></div></div>`
|
40
40
|
result += '<div class="relatedPosts-list">'
|
41
41
|
|
42
42
|
for (let i = 0; i < Math.min(relatedPosts.length, limitNum); i++) {
|
package/scripts/tags/tabs.js
CHANGED
@@ -72,21 +72,6 @@ div#post-comment
|
|
72
72
|
a:hover
|
73
73
|
color var(--efu-main)
|
74
74
|
|
75
|
-
.comment-tips
|
76
|
-
background-color rgba(103, 194, 58, 0.13)
|
77
|
-
border var(--style-border-always)
|
78
|
-
border-color var(--efu-green)
|
79
|
-
color var(--efu-green)
|
80
|
-
border-radius 8px
|
81
|
-
padding 8px 12px
|
82
|
-
margin-top 0.5rem
|
83
|
-
display none
|
84
|
-
width 100%
|
85
|
-
|
86
|
-
&.show
|
87
|
-
display flex
|
88
|
-
font-weight 700
|
89
|
-
|
90
75
|
blockquote
|
91
76
|
background var(--efu-secondbg)
|
92
77
|
border var(--style-border)
|
@@ -104,14 +89,6 @@ div#post-comment
|
|
104
89
|
flex-wrap wrap
|
105
90
|
position relative
|
106
91
|
|
107
|
-
.comment-randomInfo
|
108
|
-
margin-left auto
|
109
|
-
font-size 13px
|
110
|
-
|
111
|
-
&:hover
|
112
|
-
a
|
113
|
-
color var(--efu-theme)
|
114
|
-
|
115
92
|
#owo-big
|
116
93
|
position fixed
|
117
94
|
align-items center
|
@@ -123,4 +100,7 @@ div#post-comment
|
|
123
100
|
transform translate(0, -105%)
|
124
101
|
overflow hidden
|
125
102
|
animation owoIn .3s cubic-bezier(.42,0,.3,1.11)
|
126
|
-
padding 1rem
|
103
|
+
padding 1rem
|
104
|
+
|
105
|
+
@import 'twikoo.styl' when hexo-config('comment.type') == 'twikoo'
|
106
|
+
@import 'valine.styl' when hexo-config('comment.type') == 'valine'
|