hexo-theme-stellar 1.9.0 → 1.11.0

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 (69) hide show
  1. package/_config.yml +60 -52
  2. package/_data/widgets.yml +46 -0
  3. package/languages/en.yml +0 -6
  4. package/languages/zh-CN.yml +0 -6
  5. package/languages/zh-TW.yml +0 -6
  6. package/layout/404.ejs +1 -1
  7. package/layout/_partial/main/footer.ejs +6 -17
  8. package/layout/_partial/main/header/index.ejs +1 -1
  9. package/layout/_partial/main/navbar/list_post.ejs +2 -2
  10. package/layout/_partial/plugins/comments/valine/script.ejs +1 -1
  11. package/layout/_partial/scripts/index.ejs +5 -3
  12. package/layout/_partial/sidebar/index.ejs +9 -7
  13. package/layout/_partial/sidebar/logo.ejs +1 -1
  14. package/layout/_partial/sidebar/widgets/ghrepo.ejs +53 -0
  15. package/layout/_partial/sidebar/widgets/ghuser.ejs +53 -0
  16. package/layout/_partial/sidebar/widgets/toc.ejs +1 -1
  17. package/layout/post.ejs +1 -1
  18. package/layout/wiki.ejs +1 -1
  19. package/package.json +1 -1
  20. package/scripts/events/lib/config.js +26 -10
  21. package/scripts/tags/about.js +12 -13
  22. package/scripts/tags/folders.js +55 -0
  23. package/scripts/tags/friends.js +2 -3
  24. package/scripts/tags/ghcard.js +2 -2
  25. package/scripts/tags/lib/users.js +1 -2
  26. package/scripts/tags/sites.js +2 -3
  27. package/scripts/tags/timeline.js +32 -25
  28. package/source/css/_common/base.styl +5 -9
  29. package/source/css/_common/button.styl +1 -1
  30. package/source/css/_common/device.styl +2 -2
  31. package/source/css/_common/highlight.styl +4 -3
  32. package/source/css/_common/html.styl +2 -0
  33. package/source/css/_common/loading.styl +5 -0
  34. package/source/css/_common/pre.styl +6 -0
  35. package/source/css/_custom.styl +36 -23
  36. package/source/css/_defines/const.styl +1 -0
  37. package/source/css/_defines/theme.styl +13 -13
  38. package/source/css/_layout/layout.styl +2 -2
  39. package/source/css/_layout/main.styl +2 -2
  40. package/source/css/_layout/md.styl +36 -2
  41. package/source/css/_layout/partial/footer.styl +3 -7
  42. package/source/css/_layout/partial/navbar.styl +1 -1
  43. package/source/css/_layout/partial/paginator.styl +4 -0
  44. package/source/css/_layout/partial/related.styl +2 -0
  45. package/source/css/_layout/sidebar/ghrepo.styl +30 -0
  46. package/source/css/_layout/sidebar/ghuser.styl +80 -0
  47. package/source/css/_layout/sidebar/sidebar.styl +2 -3
  48. package/source/css/_layout/tag-plugins/about.styl +14 -16
  49. package/source/css/_layout/tag-plugins/common.styl +1 -1
  50. package/source/css/_layout/tag-plugins/folders.styl +62 -0
  51. package/source/css/_layout/tag-plugins/friends.styl +3 -6
  52. package/source/css/_layout/tag-plugins/inline-labels.styl +1 -0
  53. package/source/css/_layout/tag-plugins/link.styl +2 -1
  54. package/source/css/_layout/tag-plugins/note.styl +8 -0
  55. package/source/css/_layout/tag-plugins/poetry.styl +1 -1
  56. package/source/css/_layout/tag-plugins/quot.styl +7 -6
  57. package/source/css/_layout/tag-plugins/sites.styl +2 -6
  58. package/source/css/_layout/tag-plugins/tabs.styl +5 -0
  59. package/source/css/_layout/tag-plugins/timeline.styl +108 -6
  60. package/source/css/_layout/tag-plugins/toc.styl +1 -1
  61. package/source/css/_plugins/comments/twikoo.styl +2 -2
  62. package/source/css/_plugins/comments/waline.styl +1 -1
  63. package/source/js/main.js +13 -15
  64. package/source/js/plugins/friends.js +1 -2
  65. package/source/js/plugins/ghinfo.js +73 -0
  66. package/source/js/plugins/sites.js +1 -1
  67. package/source/js/plugins/timeline.js +144 -0
  68. package/layout/_partial/sidebar/widgets/repo_info.ejs +0 -72
  69. package/source/css/_layout/sidebar/repo_info.styl +0 -28
@@ -10,30 +10,29 @@
10
10
  'use strict';
11
11
 
12
12
  hexo.extend.tag.register('about', function(args, content) {
13
- args = hexo.args.map(args, ['avatar', 'height']);
13
+ args = hexo.args.map(args, ['avatar', 'height', 'border']);
14
14
  var rows = hexo.render.renderSync({text: content, engine: 'markdown'}).split('\n');
15
15
  var el = '';
16
16
  // wrapper
17
17
  el += '<div class="tag-plugin about">';
18
18
  el += '<div class="about-header">';
19
19
  // avatar
20
- if (args.avatar) {
20
+ var avatar_url = args.avatar;
21
+ if (args.avatar === undefined) {
22
+ avatar_url = hexo.config.avatar;
23
+ }
24
+ if (avatar_url) {
21
25
  el += '<div class="avatar">'
22
- el += '<img src="' + args.avatar + '"';
26
+ el += '<img src="' + avatar_url + '"';
27
+ if (args.border && args.border.length > 0) {
28
+ el += ' style="border-radius:' + args.border + '"';
29
+ }
23
30
  if (args.height && args.height.length > 0) {
24
- el += ' height="' + args.height + '"/>';
25
- } else {
26
- el += '/>';
31
+ el += ' height="' + args.height + '"';
27
32
  }
33
+ el += '/>';
28
34
  el += '</div>';
29
35
  }
30
- // title
31
- if (rows.length > 0) {
32
- // el += '<div class="title">';
33
- el += rows.shift();
34
- // el += '</div>';
35
- }
36
-
37
36
  el += '</div>';
38
37
 
39
38
  // content
@@ -0,0 +1,55 @@
1
+ /**
2
+ * folders.js v1 | https://github.com/xaoxuu/hexo-theme-stellar/
3
+ * 格式与官方标签插件一致使用空格分隔,中括号内的是可选参数(中括号不需要写出来)
4
+ *
5
+ * {% folders [color:white] %}
6
+ * <!-- folder title 1 -->
7
+ * body 1
8
+ * <!-- folder title 2 -->
9
+ * body 2
10
+ * {% endtable %}
11
+ */
12
+
13
+ 'use strict';
14
+
15
+ hexo.extend.tag.register('folders', function(args, content) {
16
+ args = hexo.args.map(args, ['color']);
17
+ var el = '';
18
+ el += '<div class="tag-plugin folders"';
19
+ el += ' ' + hexo.args.joinTags(args, ['color']).join(' ');
20
+ el += '>';
21
+
22
+ var arr = content.split(/<!--\s*(.*?)\s*-->/g).filter((item, i) => {
23
+ return item.trim().length > 0;
24
+ });
25
+ if (arr.length > 0) {
26
+ var nodes = [];
27
+ arr.forEach((item, i) => {
28
+ if (item.startsWith('folder ')) {
29
+ nodes.push({
30
+ header: item.substring(7)
31
+ });
32
+ } else if (nodes.length > 0) {
33
+ var node = nodes[nodes.length-1];
34
+ if (node.body == undefined) {
35
+ node.body = item;
36
+ } else {
37
+ node.body += '\n' + item;
38
+ }
39
+ }
40
+ });
41
+ nodes.forEach((node, i) => {
42
+ el += '<details class="folder" index="' + (i) + '">';
43
+ // summary
44
+ el += '<summary><span>' + (node.header || '') + '</span></summary>';
45
+ // content
46
+ el += '<div class="body">';
47
+ el += hexo.render.renderSync({text: node.body, engine: 'markdown'}).split('\n').join('');
48
+ el += '</div></details>';
49
+ });
50
+ }
51
+
52
+ el += '</div>';
53
+
54
+ return el;
55
+ }, {ends: true});
@@ -65,9 +65,8 @@ hexo.extend.tag.register('friends', function(args) {
65
65
  el += groupHeader(group);
66
66
  }
67
67
  if (group.repo) {
68
- el += '<div class="friendsjs-wrap"';
69
- el += ' id="friends-api"';
70
- el += ' api="' + (group.api || 'https://issues-api.vercel.app') + '/v1/' + group.repo + '"';
68
+ el += '<div class="stellar-friends-api"';
69
+ el += ' api="' + (group.api || 'https://issues-api.xaoxuu.com') + '/v1/' + group.repo + '"';
71
70
  el += '>';
72
71
  el += '<div class="group-body"></div>';
73
72
  el += '</div>';
@@ -24,10 +24,10 @@ hexo.extend.tag.register('ghcard', function(args) {
24
24
  if (path.includes('/')) {
25
25
  // is repo
26
26
  const ps = path.split('/');
27
- url += 'https://github-readme-stats.vercel.app/api/pin/?username=' + ps[0] + '&repo=' + ps[1];
27
+ url += 'https://github-readme-stats.xaoxuu.com/api/pin/?username=' + ps[0] + '&repo=' + ps[1];
28
28
  } else {
29
29
  // is user
30
- url += 'https://github-readme-stats.vercel.app/api/?username=' + path;
30
+ url += 'https://github-readme-stats.xaoxuu.com/api/?username=' + path;
31
31
  }
32
32
  url += '&' + hexo.args.joinURLParams(args, params);
33
33
  if (!url.includes('&show_owner=')) {
@@ -11,8 +11,7 @@ module.exports = ctx => function(args) {
11
11
  args = ctx.args.map(args, ['api']);
12
12
  var el = '<div class="tag-plugin users-wrap">';
13
13
 
14
- el += '<div class="friendsjs-wrap"';
15
- el += ' id="friends-api"';
14
+ el += '<div class="stellar-friends-api"';
16
15
  el += ' api="' + args.api + '"';
17
16
  el += '>';
18
17
  el += '<div class="group-body"></div>';
@@ -69,9 +69,8 @@ hexo.extend.tag.register('sites', function(args) {
69
69
  el += groupHeader(group);
70
70
  }
71
71
  if (group.repo) {
72
- el += '<div class="sitesjs-wrap"';
73
- el += ' id="sites-api"';
74
- el += ' api="' + (group.api || 'https://issues-api.vercel.app') + '/v1/' + group.repo + '"';
72
+ el += '<div class="stellar-sites-api"';
73
+ el += ' api="' + (group.api || 'https://issues-api.xaoxuu.com') + '/v1/' + group.repo + '"';
75
74
  el += '>';
76
75
  el += '<div class="group-body"></div>';
77
76
  el += '</div>';
@@ -36,36 +36,43 @@ function layoutNodeContent(content) {
36
36
 
37
37
 
38
38
  function postTimeline(args, content) {
39
+ args = hexo.args.map(args, ['api', 'user']);
39
40
  var el = '';
41
+
42
+ if (args.api && args.api.length > 0) {
43
+ el += '<div class="tag-plugin timeline stellar-timeline-api"';
44
+ el += ' ' + hexo.args.joinTags(args, ['api', 'user']).join(' ');
45
+ el += '>';
46
+ } else {
47
+ el += '<div class="tag-plugin timeline">';
48
+ }
49
+
40
50
  var arr = content.split(/<!--\s*(.*?)\s*-->/g).filter((item, i) => {
41
51
  return item.trim().length > 0;
42
52
  });
43
- if (arr.length < 1) {
44
- return el;
45
- }
46
- var nodes = [];
47
- arr.forEach((item, i) => {
48
- if (item.startsWith('node ')) {
49
- nodes.push({
50
- header: item
51
- });
52
- } else if (nodes.length > 0) {
53
- var node = nodes[nodes.length-1];
54
- if (node.body == undefined) {
55
- node.body = item;
56
- } else {
57
- node.body += '\n' + item;
53
+ if (arr.length > 0) {
54
+ var nodes = [];
55
+ arr.forEach((item, i) => {
56
+ if (item.startsWith('node ')) {
57
+ nodes.push({
58
+ header: item
59
+ });
60
+ } else if (nodes.length > 0) {
61
+ var node = nodes[nodes.length-1];
62
+ if (node.body == undefined) {
63
+ node.body = item;
64
+ } else {
65
+ node.body += '\n' + item;
66
+ }
58
67
  }
59
- }
60
- });
61
-
62
- el += '<div class="tag-plugin timeline">';
63
- nodes.forEach((node, i) => {
64
- el += '<div class="timenode" item="' + (i + 1) + '">';
65
- el += layoutNodeTitle(node.header.substring(5));
66
- el += layoutNodeContent(node.body);
67
- el += '</div>';
68
- });
68
+ });
69
+ nodes.forEach((node, i) => {
70
+ el += '<div class="timenode" index="' + (i) + '">';
71
+ el += layoutNodeTitle(node.header.substring(5));
72
+ el += layoutNodeContent(node.body);
73
+ el += '</div>';
74
+ });
75
+ }
69
76
 
70
77
  el += '</div>';
71
78
  return el;
@@ -12,15 +12,8 @@ a
12
12
  &:hover
13
13
  color: $color-hover
14
14
 
15
- // md > a
16
- p, li
17
- >a:not([class])
18
- margin: 0 1px
19
- padding: 4px
20
- border-radius: 4px
21
- &:hover
22
- color: darken($color-hover, 10)
23
- background: alpha($color-hover, 0.08)
15
+ p:not([class])
16
+ text-align: justify
24
17
 
25
18
  hr
26
19
  color: var(--text-meta)
@@ -60,3 +53,6 @@ table:not([class])
60
53
  trans()
61
54
  &:hover
62
55
  background: var(--block)
56
+
57
+ *[ff=title]
58
+ font-family: $ff-logo
@@ -14,7 +14,7 @@ a.button
14
14
  font-size: $fs-15
15
15
  &.theme
16
16
  background: $color-theme
17
- color: var(--site-bg)
17
+ color: var(--card)
18
18
  &:hover
19
19
  background: $color-hover
20
20
 
@@ -1,10 +1,10 @@
1
1
  .mobile-only
2
2
  display: none
3
- @media screen and (max-width: $device-tablet)
3
+ @media screen and (max-width: $device-mobile-max)
4
4
  display: block !important
5
5
 
6
6
  .mobile-hidden
7
- @media screen and (max-width: $device-tablet)
7
+ @media screen and (max-width: $device-mobile-max)
8
8
  display: none !important
9
9
 
10
10
  .float-panel
@@ -3,13 +3,14 @@ code
3
3
  -moz-osx-font-smoothing: auto
4
4
  color: var(--text-code)
5
5
  font-family: $ff-code
6
- word-break: break-all
6
+
7
+ p>code:not([class]),li>code:not([class])
7
8
  font-size: 85%
8
9
  background: var(--block)
9
10
  padding: .2em .4em
10
11
  border-radius: 4px
11
12
 
12
- article.md .highlight
13
+ article.md .highlight, pre:not([class]):has(>code)
13
14
  margin: var(--gap-p) 0
14
15
  border-radius: $border-block
15
16
  overflow: hidden
@@ -168,7 +169,7 @@ $hl-red = #EE2B29
168
169
  $hl-orange = #FB3F1B
169
170
  $hl-amber = #FD8607
170
171
  $hl-text = var(--text-p1)
171
- pre
172
+ .code>pre
172
173
  .code:before
173
174
  display: none
174
175
  // 行
@@ -5,6 +5,8 @@ html
5
5
  font-size: $fs-root
6
6
  -webkit-text-size-adjust: 100%
7
7
  -ms-text-size-adjust: 100%
8
+ if hexo-config('style.smooth_scroll')
9
+ scroll-behavior: smooth
8
10
  body
9
11
  background: var(--site-bg)
10
12
  margin: 0
@@ -13,3 +13,8 @@ svg.loading
13
13
  transform:rotate(0deg)
14
14
  to
15
15
  transform:rotate(360deg)
16
+
17
+ .loading-wrap
18
+ min-height: 50px
19
+ margin: 2rem 0
20
+ text-align: center
@@ -0,0 +1,6 @@
1
+ pre:not([class]):has(>code)
2
+ display: block
3
+ padding: 1rem
4
+ overflow: scroll
5
+ code
6
+ padding: 0
@@ -1,33 +1,30 @@
1
1
  @require('_defines/const')
2
2
 
3
3
  // 通用主题色
4
- $color-theme = #1BCDFC
5
- $color-link = #2196f3
6
- $color-button = #1BCDFC
7
- $color-hover = #ff5722
8
- $color-highlight = #ff5722
9
- $color-inner = #fff
10
- $color-cat = #FF7844
11
- $color-cat-hover = darken($color-cat, 20)
4
+ $color-theme = convert(hexo-config('style.color.common.theme'))
5
+ $color-accent = convert(hexo-config('style.color.common.accent'))
6
+ $color-link = convert(hexo-config('style.color.common.link'))
7
+ $color-button = convert(hexo-config('style.color.common.button'))
8
+ $color-hover = convert(hexo-config('style.color.common.hover'))
12
9
 
13
10
  // 浅色
14
- $light-site-bg = convert(hexo-config('style.theme.light'))
15
- $light-block = #f2f2f2
16
- $light-title = #000
17
- $light-text = #333
18
- $light-code = #111
19
- $light-card = white
11
+ $light-background = convert(hexo-config('style.color.light.background'))
12
+ $light-block = convert(hexo-config('style.color.light.block'))
13
+ $light-card = convert(hexo-config('style.color.light.card'))
14
+ $light-title = convert(hexo-config('style.color.light.title'))
15
+ $light-text = convert(hexo-config('style.color.light.text'))
16
+ $light-code = convert(hexo-config('style.color.light.code'))
20
17
 
21
18
  // 深色
22
- $dark-site-bg = convert(hexo-config('style.theme.dark'))
23
- $dark-block = darken(saturate($dark-site-bg, 40%), 2)
24
- $dark-title = #fff
25
- $dark-text = #eee
26
- $dark-code = #ff7043
27
- $dark-card = lighten(saturate($dark-site-bg, 50%), 10)
19
+ $dark-background = convert(hexo-config('style.color.dark.background'))
20
+ $dark-block = convert(hexo-config('style.color.dark.block'))
21
+ $dark-card = convert(hexo-config('style.color.dark.card'))
22
+ $dark-title = convert(hexo-config('style.color.dark.title'))
23
+ $dark-text = convert(hexo-config('style.color.dark.text'))
24
+ $dark-code = convert(hexo-config('style.color.dark.code'))
28
25
 
29
26
  // 移动端深色背景(OLED调成纯黑可以省电)
30
- $dark-site-bg-mobile = black
27
+ $dark-background-mobile = convert(hexo-config('style.color.dark.background-mobile'))
31
28
 
32
29
 
33
30
  // @font-face
@@ -38,11 +35,20 @@ $dark-site-bg-mobile = black
38
35
 
39
36
  $ff-body = system-ui, "Microsoft Yahei", "Segoe UI", -apple-system, Roboto, Ubuntu, "Helvetica Neue", Arial, "WenQuanYi Micro Hei", sans-serif
40
37
  $ff-code = Menlo, Monaco, Consolas, system-ui, "Courier New", monospace, sans-serif
41
-
42
38
  $ff-logo = $ff-body
43
39
 
40
+ if hexo-config('style.font-family.body')
41
+ $ff-body = convert(hexo-config('style.font-family.body'))
42
+
43
+ if hexo-config('style.font-family.code')
44
+ $ff-code = convert(hexo-config('style.font-family.code'))
45
+
46
+ if hexo-config('style.font-family.logo')
47
+ $ff-logo = convert(hexo-config('style.font-family.logo'))
48
+
49
+
44
50
  // font size
45
- $fs-root = 16px
51
+ $fs-root = convert(hexo-config('style.font-size'))
46
52
  $fs-15 = .9375rem
47
53
  $fs-14 = .875rem
48
54
  $fs-13 = .8125rem
@@ -76,6 +82,13 @@ $border-image = 6px
76
82
  @media screen and (min-width: $device-4k)
77
83
  --width-main: 860px
78
84
  --gap-l: 64px
85
+ // iPad 竖屏
86
+ @media screen and (max-width: $device-tablet)
87
+ --width-left: 220px
88
+ // iPad 竖屏
89
+ @media screen and (max-width: $device-mobile-max)
90
+ --width-left: 256px
91
+
79
92
 
80
93
 
81
94
  // shadow
@@ -2,6 +2,7 @@
2
2
  $device-mobile-375 = 375px
3
3
  $device-mobile-425 = 425px
4
4
  $device-mobile = 500px
5
+ $device-mobile-max = 667px
5
6
  $device-tablet = 768px
6
7
  $device-laptop = 1024px
7
8
  $device-desktop = 1440px
@@ -1,14 +1,14 @@
1
1
  :root
2
- --site-bg: $light-site-bg
2
+ --site-bg: $light-background
3
3
  --block: $light-block
4
4
  --block-border: darken($light-block, 5)
5
5
  --block-hover: darken($light-block, 2)
6
6
  --text-p0: $light-title
7
7
  --text-p1: $light-text
8
- --text-p2: mix($light-text, $light-site-bg, 80)
9
- --text-p3: mix($light-text, $light-site-bg, 60)
10
- --text-p4: mix($light-text, $light-site-bg, 35)
11
- --text-meta: mix($light-text, $light-site-bg, 20)
8
+ --text-p2: mix($light-text, $light-background, 80)
9
+ --text-p3: mix($light-text, $light-background, 60)
10
+ --text-p4: mix($light-text, $light-background, 35)
11
+ --text-meta: mix($light-text, $light-background, 20)
12
12
  --text-code: $light-code
13
13
  --card: $light-card
14
14
  --theme-highlight: darken($color-theme, 5)
@@ -16,22 +16,22 @@
16
16
 
17
17
  set_darkmode()
18
18
  :root
19
- --site-bg: $dark-site-bg
19
+ --site-bg: $dark-background
20
20
  --block: $dark-block
21
21
  --block-border: lighten($dark-block, 6)
22
22
  --block-hover: darken($dark-block, 4)
23
23
  --text-p0: $dark-title
24
- --text-p1: mix($dark-text, $dark-site-bg, 85)
25
- --text-p2: mix($dark-text, $dark-site-bg, 70)
26
- --text-p3: mix($dark-text, $dark-site-bg, 45)
27
- --text-p4: mix($dark-text, $dark-site-bg, 35)
28
- --text-meta: mix($dark-text, $dark-site-bg, 30)
24
+ --text-p1: mix($dark-text, $dark-background, 85)
25
+ --text-p2: mix($dark-text, $dark-background, 70)
26
+ --text-p3: mix($dark-text, $dark-background, 45)
27
+ --text-p4: mix($dark-text, $dark-background, 35)
28
+ --text-meta: mix($dark-text, $dark-background, 30)
29
29
  --text-code: $dark-code
30
30
  --card: $dark-card
31
31
  --theme-highlight: $color-theme
32
32
  --theme-bg: mix($color-theme, $dark-card, 10)
33
- @media screen and (max-width: $device-tablet)
34
- --site-bg: $dark-site-bg-mobile
33
+ @media screen and (max-width: $device-mobile-max)
34
+ --site-bg: $dark-background-mobile
35
35
  --card: darken($dark-card, 6)
36
36
  --block: darken($dark-block, 4)
37
37
  --block-border: lighten($dark-block, 2)
@@ -19,8 +19,8 @@
19
19
  max-width: var(--width-main)
20
20
 
21
21
 
22
- // iPad 竖屏
23
- @media screen and (max-width: $device-tablet)
22
+ // 手机布局
23
+ @media screen and (max-width: $device-mobile-max)
24
24
  .mobile-only
25
25
  display: block !important
26
26
  .l_body
@@ -3,8 +3,8 @@
3
3
  padding-bottom: "calc(1 * %s)" % var(--gap-l)
4
4
  @media screen and (min-width: 1400px)
5
5
  margin-left: "calc(2 * %s)" % var(--gap-l)
6
- margin-right: "calc(2 * %s + %s)" % (var(--gap-l) var(--width-left))
7
- @media screen and (min-width: $device-tablet)
6
+ margin-right: "calc(2 * %s + %s / 2)" % (var(--gap-l) var(--width-left))
7
+ @media screen and (min-width: $device-mobile-max)
8
8
  padding-top: "calc(2 * %s)" % var(--gap-l)
9
9
  header
10
10
  margin: 4rem 1rem 2rem
@@ -25,14 +25,16 @@ article.md.content
25
25
  >p:not([class])
26
26
  text-indent: 'calc(%s * 2)' % $fs-p
27
27
  text-align: justify
28
+ a
29
+ text-indent: 0
28
30
  h1,h2,h3,h4,h5,h6
29
31
  text-align: center
30
32
  >h2:not([class])
31
33
  align-self: center
32
34
  border-bottom-style: dashed
33
- border-bottom-color: $color-highlight
35
+ border-bottom-color: $color-accent
34
36
  >:first-child
35
- margin-top: 1rem
37
+ margin-top: 0
36
38
  h1:not(:first-child)
37
39
  margin-top: 2em
38
40
  h2:first-child
@@ -129,3 +131,35 @@ article.md img
129
131
  border-radius: $border-image
130
132
  margin: auto
131
133
  display: block
134
+
135
+ article.md
136
+ p:not([class]), li:not([class])
137
+ a:not([class])
138
+ position: relative
139
+ padding: 2px
140
+ text-decoration: none
141
+ display: inline-block
142
+ line-height: 1.2
143
+ &:after
144
+ content: ''
145
+ position: absolute
146
+ border-radius: 2px
147
+ bottom: 1px
148
+ left: 2px
149
+ right: 2px
150
+ height: 1px
151
+ opacity: 0.5
152
+ background: $color-link
153
+ trans1: all
154
+ &:hover
155
+ border-bottom: none
156
+ color: $color-link
157
+ // color: darken($color-hover, 10)
158
+ // background: alpha($color-hover, 0.08)
159
+ &:after
160
+ height: 100%
161
+ opacity: 0.2
162
+ bottom: 0
163
+ left: 0
164
+ right: 0
165
+ // background-color: alpha($color-hover, 0.08)
@@ -34,11 +34,7 @@
34
34
  .page-footer .text
35
35
  p
36
36
  margin: 4px 0
37
- line-height: 1.2
38
- a
37
+ line-height: 1.5
38
+ a:not([class])
39
39
  text-decoration: underline
40
- font-weight: 500
41
- margin: inherit
42
- padding: inherit
43
- &:hover
44
- background: inherit
40
+ font-weight: 500
@@ -54,6 +54,6 @@ nav.cap
54
54
  a+a
55
55
  margin-left: 4px
56
56
 
57
- @media screen and (max-width: $device-tablet)
57
+ @media screen and (max-width: $device-mobile-max)
58
58
  .nav-wrap
59
59
  margin-top: 0
@@ -12,6 +12,10 @@
12
12
  &:hover
13
13
  .paginator
14
14
  text-align: center
15
+ &.next
16
+ border-left: 1px dashed var(--block-border)
17
+ &.prev
18
+ border-right: 1px dashed var(--block-border)
15
19
  .current
16
20
  font-family: $ff-code
17
21
  color: var(--text-p3)
@@ -131,6 +131,8 @@
131
131
  text-decoration: underline
132
132
  &:hover
133
133
  color: $color-hover
134
+ &:after
135
+ display: none
134
136
  div.cmt-body
135
137
  min-height: 150px
136
138
  position: relative
@@ -0,0 +1,30 @@
1
+ .widget-wrap#repo-info
2
+ .widget-body
3
+ a.repo
4
+ display: block
5
+ border: 1px solid var(--block-border)
6
+ color: var(--text-p2)
7
+ background: var(--block)
8
+ border-radius: $border-block
9
+ >div
10
+ margin: 0.75rem 0.5rem
11
+ span
12
+ color: var(--text-p2)
13
+ &:hover
14
+ background: var(--block-hover)
15
+ a.repo
16
+ svg
17
+ margin-right: 4px
18
+ .flex-row
19
+ display: flex
20
+ align-items: center
21
+ .repo-name
22
+ font-size: $fs-14
23
+ font-weight: 700
24
+ .repo-desc
25
+ font-size: $fs-13
26
+ .grid
27
+ font-size: $fs-13
28
+ display: grid
29
+ grid-gap: 2px
30
+ grid-template-columns: repeat(auto-fill, "calc((100% - 2 * %s) / 3)" % 2px)