hexo-theme-linen 1.0.13 → 1.0.15
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/layout/post.ejs
CHANGED
|
@@ -114,6 +114,7 @@ var series = site.posts.filter(item=>item.series && item.series === page?.series
|
|
|
114
114
|
const currentIndex = series.findIndex(item=>item.source === page.source);
|
|
115
115
|
const previousPost = series[currentIndex - 1] || null;
|
|
116
116
|
const nextPost = series[currentIndex + 1] || null;
|
|
117
|
+
const seriesInfo = getSeriesInfo(page?.series);
|
|
117
118
|
%>
|
|
118
119
|
<div class="series-nav">
|
|
119
120
|
<div class="series-name">
|
|
@@ -150,7 +151,9 @@ const nextPost = series[currentIndex + 1] || null;
|
|
|
150
151
|
</div>
|
|
151
152
|
<div class="series-items">
|
|
152
153
|
<% series.forEach((item, index) => { %>
|
|
153
|
-
<a class="series-item-link<%-item.source === page.source ? ' active': ''%>" href="<%=url_for(item.path)%>"
|
|
154
|
+
<a class="series-item-link<%-item.source === page.source ? ' active': ''%>" href="<%=url_for(item.path)%>">
|
|
155
|
+
<span class="item-index"><%-`${seriesInfo?.noOrder === 'asc' ? index + 1 : series.length - index}. `%></span><%=item.title%><% if (item.subTitle) { %><span class="sub-title"><%=item.subTitle%></span><% } %>
|
|
156
|
+
</a>
|
|
154
157
|
<% }); %>
|
|
155
158
|
</div>
|
|
156
159
|
</div>
|
package/package.json
CHANGED
package/scripts/helpers/tools.js
CHANGED
|
@@ -49,6 +49,14 @@ hexo.extend.helper.register("take", function (arr, n = 1) {
|
|
|
49
49
|
return pageTitle;
|
|
50
50
|
});
|
|
51
51
|
|
|
52
|
+
hexo.extend.helper.register("getSeriesInfo", function (seriesName) {
|
|
53
|
+
const seriesInfo = getFile(
|
|
54
|
+
path.join(hexo.base_dir, "assets-db/series.json"),
|
|
55
|
+
{},
|
|
56
|
+
);
|
|
57
|
+
return seriesInfo?.[seriesName] || {};
|
|
58
|
+
});
|
|
59
|
+
|
|
52
60
|
hexo.extend.helper.register("getTranslationPage", function () {
|
|
53
61
|
try {
|
|
54
62
|
const page = this.page;
|
|
@@ -63,11 +71,11 @@ hexo.extend.helper.register("take", function (arr, n = 1) {
|
|
|
63
71
|
? "zh-CN"
|
|
64
72
|
: "en";
|
|
65
73
|
const categoriesInfo = getFile(
|
|
66
|
-
path.join(hexo.base_dir, "assets-db/
|
|
74
|
+
path.join(hexo.base_dir, "assets-db/categories.json"),
|
|
67
75
|
{},
|
|
68
76
|
);
|
|
69
77
|
const tagsInfo = getFile(
|
|
70
|
-
path.join(hexo.base_dir, "assets-db/
|
|
78
|
+
path.join(hexo.base_dir, "assets-db/tags.json"),
|
|
71
79
|
{},
|
|
72
80
|
);
|
|
73
81
|
let hasTranslatation = Object.keys(
|
|
@@ -623,6 +623,23 @@ body {
|
|
|
623
623
|
display: none;
|
|
624
624
|
}
|
|
625
625
|
}
|
|
626
|
+
&:has(> span.break-on-mobile) {
|
|
627
|
+
&::after {
|
|
628
|
+
display: none;
|
|
629
|
+
}
|
|
630
|
+
.break-on-mobile {
|
|
631
|
+
&::after {
|
|
632
|
+
content: "";
|
|
633
|
+
display: inline-block;
|
|
634
|
+
width: 1em;
|
|
635
|
+
height: 1em;
|
|
636
|
+
background-image: url("/img/icons/redirect.svg");
|
|
637
|
+
background-size: cover;
|
|
638
|
+
vertical-align: middle;
|
|
639
|
+
margin-bottom: 0.25em;
|
|
640
|
+
}
|
|
641
|
+
}
|
|
642
|
+
}
|
|
626
643
|
}
|
|
627
644
|
|
|
628
645
|
hr {
|