hexo-theme-shokax 0.4.5 → 0.4.6-beta2

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 (183) hide show
  1. package/CODE_OF_CONDUCT.md +128 -128
  2. package/CONTRIBUTING.md +58 -58
  3. package/LICENSE +660 -660
  4. package/LICENSE-shoka +21 -21
  5. package/README.md +99 -98
  6. package/README_en.MD +91 -90
  7. package/UsageRestrictions.md +25 -25
  8. package/_config.yml +381 -388
  9. package/_images.yml +9 -9
  10. package/eslint.config.mjs +55 -55
  11. package/index.html +231 -0
  12. package/languages/README.md +19 -19
  13. package/languages/default.yml +1 -1
  14. package/languages/en.yml +153 -153
  15. package/languages/ja.yml +153 -153
  16. package/languages/zh-CN.yml +153 -153
  17. package/languages/zh-HK.yml +153 -153
  18. package/languages/zh-TW.yml +153 -153
  19. package/layout/_alternate/atom.ejs +30 -30
  20. package/layout/_alternate/json.ejs +16 -16
  21. package/layout/_alternate/rss.ejs +34 -34
  22. package/layout/_mixin/breadcrumb.pug +33 -33
  23. package/layout/_mixin/card.pug +38 -38
  24. package/layout/_mixin/comment.pug +6 -6
  25. package/layout/_mixin/postmeta.pug +29 -29
  26. package/layout/_mixin/segment.pug +35 -35
  27. package/layout/_mixin/sidebar.pug +40 -40
  28. package/layout/_mixin/widgets.pug +28 -28
  29. package/layout/_partials/footer.pug +43 -43
  30. package/layout/_partials/head/head.pug +55 -56
  31. package/layout/_partials/head/head_com.pug +24 -24
  32. package/layout/_partials/head/pwa.pug +18 -18
  33. package/layout/_partials/header.pug +18 -18
  34. package/layout/_partials/layout.pug +140 -140
  35. package/layout/_partials/loading.pug +13 -13
  36. package/layout/_partials/pagination.pug +4 -4
  37. package/layout/_partials/post/copyright.pug +20 -20
  38. package/layout/_partials/post/footer.pug +17 -17
  39. package/layout/_partials/post/nav.pug +13 -13
  40. package/layout/_partials/post/post.pug +41 -41
  41. package/layout/_partials/post/reward.pug +18 -18
  42. package/layout/_partials/sidebar/menu.pug +37 -37
  43. package/layout/_partials/sidebar/overview.pug +42 -42
  44. package/layout/_partials/third-party/baidu-analytics.pug +11 -11
  45. package/layout/_partials/third-party/clarity.pug +8 -8
  46. package/layout/_partials/third-party/google-analytics.pug +9 -9
  47. package/layout/archive.pug +118 -118
  48. package/layout/category.pug +59 -59
  49. package/layout/index.pug +33 -33
  50. package/layout/page.pug +55 -55
  51. package/layout/post.pug +36 -36
  52. package/layout/tag.pug +43 -43
  53. package/meta.json +6431 -0
  54. package/package.json +72 -70
  55. package/scripts/helpers/engine.js +10 -0
  56. package/scripts/plugin/check.js +2 -2
  57. package/scripts/tags/links.js +4 -4
  58. package/source/assets/algolia_logo.svg +9 -9
  59. package/source/assets/logo.svg +16 -16
  60. package/source/css/_colors.styl +207 -207
  61. package/source/css/_common/components/components.styl +6 -6
  62. package/source/css/_common/components/highlight/highlight.styl +357 -357
  63. package/source/css/_common/components/highlight/operation.styl +21 -21
  64. package/source/css/_common/components/pages/collapse.styl +119 -119
  65. package/source/css/_common/components/pages/home.styl +391 -391
  66. package/source/css/_common/components/pages/pages.styl +56 -56
  67. package/source/css/_common/components/pages/tag-cloud.styl +12 -12
  68. package/source/css/_common/components/post/breadcrumb.styl +39 -39
  69. package/source/css/_common/components/post/copyright.styl +41 -41
  70. package/source/css/_common/components/post/expand.styl +263 -263
  71. package/source/css/_common/components/post/footer.styl +11 -11
  72. package/source/css/_common/components/post/header.styl +79 -79
  73. package/source/css/_common/components/post/nav.styl +64 -64
  74. package/source/css/_common/components/post/post.styl +29 -29
  75. package/source/css/_common/components/post/reward.styl +50 -50
  76. package/source/css/_common/components/post/rtl.styl +12 -12
  77. package/source/css/_common/components/post/tags.styl +39 -39
  78. package/source/css/_common/components/tags/collapse.styl +72 -72
  79. package/source/css/_common/components/tags/container.styl +49 -49
  80. package/source/css/_common/components/tags/label.styl +12 -12
  81. package/source/css/_common/components/tags/links.styl +77 -77
  82. package/source/css/_common/components/tags/list.styl +131 -131
  83. package/source/css/_common/components/tags/note.styl +70 -70
  84. package/source/css/_common/components/tags/player.styl +361 -361
  85. package/source/css/_common/components/tags/quiz.styl +200 -200
  86. package/source/css/_common/components/tags/tabs.styl +89 -89
  87. package/source/css/_common/components/tags/tags.styl +9 -9
  88. package/source/css/_common/components/third-party/loading.styl +222 -222
  89. package/source/css/_common/components/third-party/mermaid/class.styl +90 -90
  90. package/source/css/_common/components/third-party/mermaid/flowchart.styl +72 -72
  91. package/source/css/_common/components/third-party/mermaid/gantt.styl +251 -251
  92. package/source/css/_common/components/third-party/mermaid/git.styl +7 -7
  93. package/source/css/_common/components/third-party/mermaid/mermaid.styl +37 -37
  94. package/source/css/_common/components/third-party/mermaid/pie.styl +9 -9
  95. package/source/css/_common/components/third-party/mermaid/sequence.styl +95 -95
  96. package/source/css/_common/components/third-party/mermaid/state.styl +130 -130
  97. package/source/css/_common/components/third-party/pace.styl +18 -18
  98. package/source/css/_common/components/third-party/search.styl +167 -167
  99. package/source/css/_common/components/third-party/theme.styl +151 -151
  100. package/source/css/_common/components/third-party/third-party.styl +22 -22
  101. package/source/css/_common/components/third-party/widgets.styl +57 -57
  102. package/source/css/_common/outline/footer/footer.styl +67 -67
  103. package/source/css/_common/outline/header/brand.styl +77 -77
  104. package/source/css/_common/outline/header/header.styl +20 -20
  105. package/source/css/_common/outline/header/image.styl +85 -85
  106. package/source/css/_common/outline/header/menu.styl +117 -117
  107. package/source/css/_common/outline/header/nav.styl +81 -81
  108. package/source/css/_common/outline/header/right.styl +15 -15
  109. package/source/css/_common/outline/header/tool.styl +207 -207
  110. package/source/css/_common/outline/header/waves.styl +57 -57
  111. package/source/css/_common/outline/mobile.styl +46 -46
  112. package/source/css/_common/outline/outline.styl +78 -78
  113. package/source/css/_common/outline/sidebar/author.styl +59 -59
  114. package/source/css/_common/outline/sidebar/dimmer.styl +23 -23
  115. package/source/css/_common/outline/sidebar/menu.styl +63 -63
  116. package/source/css/_common/outline/sidebar/quick.styl +43 -43
  117. package/source/css/_common/outline/sidebar/related.styl +56 -56
  118. package/source/css/_common/outline/sidebar/sidebar.styl +80 -80
  119. package/source/css/_common/outline/sidebar/social.styl +69 -69
  120. package/source/css/_common/outline/sidebar/state.styl +37 -37
  121. package/source/css/_common/outline/sidebar/tab.styl +71 -71
  122. package/source/css/_common/outline/sidebar/toc.styl +47 -47
  123. package/source/css/_common/scaffolding/animate.styl +322 -322
  124. package/source/css/_common/scaffolding/base.styl +190 -190
  125. package/source/css/_common/scaffolding/buttons.styl +48 -48
  126. package/source/css/_common/scaffolding/divider.styl +36 -36
  127. package/source/css/_common/scaffolding/iconfont.styl +443 -443
  128. package/source/css/_common/scaffolding/normalize.styl +273 -273
  129. package/source/css/_common/scaffolding/pagination.styl +81 -81
  130. package/source/css/_common/scaffolding/ribbon.styl +38 -38
  131. package/source/css/_common/scaffolding/scaffolding.styl +14 -14
  132. package/source/css/_common/scaffolding/scrollbar.styl +37 -37
  133. package/source/css/_common/scaffolding/tables.styl +50 -50
  134. package/source/css/_common/scaffolding/tip.styl +19 -19
  135. package/source/css/_common/scaffolding/toggles.styl +59 -59
  136. package/source/css/_iconfont.styl +455 -455
  137. package/source/css/_mixins.styl +148 -148
  138. package/source/css/_variables.styl +89 -89
  139. package/source/css/app.styl +41 -41
  140. package/source/css/mermaid.styl +5 -5
  141. package/source/css/optimize.styl +5 -5
  142. package/source/js/_app/components/comments.js +59 -0
  143. package/source/js/_app/components/comments.ts +88 -89
  144. package/source/js/_app/components/sidebar.js +244 -0
  145. package/source/js/_app/components/sidebar.ts +239 -239
  146. package/source/js/_app/components/tcomments.js +47 -0
  147. package/source/js/_app/components/tcomments.ts +54 -54
  148. package/source/js/_app/globals/globalVars.ts +99 -99
  149. package/source/js/_app/globals/handles.js +105 -0
  150. package/source/js/_app/globals/handles.ts +124 -124
  151. package/source/js/_app/globals/themeColor.ts +63 -63
  152. package/source/js/_app/globals/thirdparty.ts +63 -63
  153. package/source/js/_app/globals/tools.ts +75 -75
  154. package/source/js/_app/library/anime.ts +110 -110
  155. package/source/js/_app/library/declare.d.ts +128 -130
  156. package/source/js/_app/library/dom.ts +28 -28
  157. package/source/js/_app/library/loadFile.js +43 -0
  158. package/source/js/_app/library/loadFile.ts +47 -50
  159. package/source/js/_app/library/proto.ts +137 -137
  160. package/source/js/_app/library/scriptPjax.ts +72 -72
  161. package/source/js/_app/library/storage.ts +12 -12
  162. package/source/js/_app/library/vue.js +52 -0
  163. package/source/js/_app/library/vue.ts +49 -49
  164. package/source/js/_app/page/common.js +45 -0
  165. package/source/js/_app/page/common.ts +43 -43
  166. package/source/js/_app/page/fancybox.js +70 -0
  167. package/source/js/_app/page/fancybox.ts +72 -72
  168. package/source/js/_app/page/post.js +253 -0
  169. package/source/js/_app/page/post.ts +266 -266
  170. package/source/js/_app/page/search.js +111 -0
  171. package/source/js/_app/page/search.ts +115 -115
  172. package/source/js/_app/page/tab.ts +60 -60
  173. package/source/js/_app/pjax/domInit.js +80 -0
  174. package/source/js/_app/pjax/domInit.ts +97 -97
  175. package/source/js/_app/pjax/refresh.js +137 -0
  176. package/source/js/_app/pjax/refresh.ts +140 -138
  177. package/source/js/_app/pjax/siteInit.js +115 -0
  178. package/source/js/_app/pjax/siteInit.ts +106 -104
  179. package/source/js/_app/player.js +777 -0
  180. package/source/js/_app/player.ts +798 -798
  181. package/toolbox/compiler.mjs +73 -0
  182. package/toolbox/hoistdep.mjs +6 -0
  183. package/toolbox/lib.mjs +43 -0
@@ -1,42 +1,42 @@
1
- div(class="author" itemprop="author" itemscope itemtype="http://schema.org/Person")
2
- img(loading="lazy" decoding="async" class="image" itemprop="image" alt=author
3
- src=url_for(theme.statics + theme.assets + '/'+ theme.sidebar.avatar))
4
- p(class="name" itemprop="name")
5
- != author
6
- div(class="description" itemprop="description")
7
- != description
8
-
9
- nav(class="state")
10
- if config.archive_dir !== '/' && site.posts.length > 0
11
- div(class="item posts")
12
- a(href=url_for(config.archive_dir + '/'))
13
- span(class="count")
14
- != site.posts.length
15
- span(class="name")
16
- != __('state.posts')
17
- if config.category_dir !== '/' && site.categories.length > 0
18
- div(class="item categories")
19
- a(href=url_for(config.category_dir + '/'))
20
- span(class="count")
21
- != site.categories.length
22
- span(class="name")
23
- != __('state.categories')
24
- if config.tag_dir !== '/' && site.tags.length > 0
25
- div(class="item tags")
26
- a(href=url_for(config.tag_dir + '/'))
27
- span(class="count")
28
- != site.tags.length
29
- span(class="name")
30
- != __('state.tags')
31
-
32
- div(class="social")
33
- if theme.social
34
- each link, name in theme.social
35
- - var sidebarURL = link.split('||')[0].trim()
36
- - var sidebarIcon = '<i class="ic i-' + link.split('||')[1].trim() + '"></i>'
37
- != _url(sidebarURL, sidebarIcon, {title: sidebarURL, class: 'item ' + name})
38
-
39
- != shokax_inject('sidebar')
40
-
41
- div(class="menu")
42
- != partial('_partials/sidebar/menu.pug')
1
+ div(class="author" itemprop="author" itemscope itemtype="http://schema.org/Person")
2
+ img(loading="lazy" decoding="async" class="image" itemprop="image" alt=author
3
+ src=url_for(theme.statics + theme.assets + '/'+ theme.sidebar.avatar))
4
+ p(class="name" itemprop="name")
5
+ != author
6
+ div(class="description" itemprop="description")
7
+ != description
8
+
9
+ nav(class="state")
10
+ if config.archive_dir !== '/' && site.posts.length > 0
11
+ div(class="item posts")
12
+ a(href=url_for(config.archive_dir + '/'))
13
+ span(class="count")
14
+ != site.posts.length
15
+ span(class="name")
16
+ != __('state.posts')
17
+ if config.category_dir !== '/' && site.categories.length > 0
18
+ div(class="item categories")
19
+ a(href=url_for(config.category_dir + '/'))
20
+ span(class="count")
21
+ != site.categories.length
22
+ span(class="name")
23
+ != __('state.categories')
24
+ if config.tag_dir !== '/' && site.tags.length > 0
25
+ div(class="item tags")
26
+ a(href=url_for(config.tag_dir + '/'))
27
+ span(class="count")
28
+ != site.tags.length
29
+ span(class="name")
30
+ != __('state.tags')
31
+
32
+ div(class="social")
33
+ if theme.social
34
+ each link, name in theme.social
35
+ - var sidebarURL = link.split('||')[0].trim()
36
+ - var sidebarIcon = '<i class="ic i-' + link.split('||')[1].trim() + '"></i>'
37
+ != _url(sidebarURL, sidebarIcon, {title: sidebarURL, class: 'item ' + name})
38
+
39
+ != shokax_inject('sidebar')
40
+
41
+ div(class="menu")
42
+ != partial('_partials/sidebar/menu.pug')
@@ -1,11 +1,11 @@
1
- - var hmSrc = `https://hm.baidu.com/hm.js?${ theme.visitor.baiduAnalytics }`
2
- if theme.visitor.baiduAnalytics
3
- script(data-pjax=true).
4
- var _hmt = _hmt || [];
5
- (function () {
6
- const hm = document.createElement("script");
7
- hm.src = "#{hmSrc}"
8
- hm.async = true;
9
- const s = document.getElementsByTagName("script")[0];
10
- s.parentNode.insertBefore(hm, s);
11
- })();
1
+ - var hmSrc = `https://hm.baidu.com/hm.js?${ theme.visitor.baiduAnalytics }`
2
+ if theme.visitor.baiduAnalytics
3
+ script(data-pjax=true).
4
+ var _hmt = _hmt || [];
5
+ (function () {
6
+ const hm = document.createElement("script");
7
+ hm.src = "#{hmSrc}"
8
+ hm.async = true;
9
+ const s = document.getElementsByTagName("script")[0];
10
+ s.parentNode.insertBefore(hm, s);
11
+ })();
@@ -1,8 +1,8 @@
1
- - var code = theme?.visitor?.clarity
2
- if code
3
- script.
4
- (function(c,l,a,r,i,t,y){
5
- c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
6
- t=l.createElement(r);t.async=true;t.src="https://www.clarity.ms/tag/"+i;
7
- y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
8
- })(window, document, "clarity", "script", "#{code}");
1
+ - var code = theme?.visitor?.clarity
2
+ if code
3
+ script.
4
+ (function(c,l,a,r,i,t,y){
5
+ c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
6
+ t=l.createElement(r);t.async=true;t.src="https://www.clarity.ms/tag/"+i;
7
+ y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
8
+ })(window, document, "clarity", "script", "#{code}");
@@ -1,10 +1,10 @@
1
- - var googleId = theme.visitor.googleAnalytics
2
- if googleId
3
- script(async, src=`https://www.googletagmanager.com/gtag/js?id=${ googleId }`)
4
- script(data-pjax=true).
5
- window.dataLayer = window.dataLayer || [];
6
- function gtag() {
7
- dataLayer.push(arguments);
8
- }
9
- gtag('js', new Date());
1
+ - var googleId = theme.visitor.googleAnalytics
2
+ if googleId
3
+ script(async, src=`https://www.googletagmanager.com/gtag/js?id=${ googleId }`)
4
+ script(data-pjax=true).
5
+ window.dataLayer = window.dataLayer || [];
6
+ function gtag() {
7
+ dataLayer.push(arguments);
8
+ }
9
+ gtag('js', new Date());
10
10
  gtag('config', '#{googleId}');
@@ -1,118 +1,118 @@
1
- extends _partials/layout.pug
2
-
3
- block title
4
- if is_month()
5
- != `${page.year}${__('symbol.year')}/${page.month}${__('symbol.month')}`
6
- else if is_year()
7
- != `${page.year}${__('symbol.year')}`
8
- != `${__('title.archive')}`
9
-
10
- block header
11
- h1(itemprop="name headline")
12
- if is_month()
13
- != _p('title.archive_in', page.year + __('symbol.year') + page.month + __('symbol.month'))
14
- else if is_year()
15
- != _p('title.archive_in', page.year + __('symbol.year'))
16
- else
17
- != __('title.archive')
18
-
19
- block content
20
- div(class="collapse wrap")
21
- h2(class="item header")
22
- if is_month()
23
- a(href=url_for(config.archive_dir))
24
- != __('title.all')
25
- small /
26
- a(href=url_for(config.archive_dir + '/' + page.year ))
27
- != `${page.year} ${__('symbol.year')}`
28
- small /
29
- != `${page.month}${__('symbol.month')}`
30
- small
31
- != __('title.archive')
32
- else if is_year()
33
- a(href=url_for(config.archive_dir))
34
- != __('title.all')
35
- small /
36
- != page.year + __('symbol.year')
37
- small
38
- != __('title.archive')
39
- else
40
- a(href=url_for(site.path))
41
- != __('menu.home')
42
- small /
43
- - var posts_length = site.posts.length,cheers
44
- if posts_length > 210
45
- - cheers = 'excellent'
46
- else if posts_length > 130
47
- - cheers = 'great'
48
- else if posts_length > 80
49
- - cheers = 'good'
50
- else if posts_length > 50
51
- - cheers = 'nice'
52
- else if posts_length > 30
53
- - cheers = 'ok'
54
- else
55
- - cheers = 'um'
56
- != _p('counter.archive_posts', site.posts.length)
57
- small(class="cheers")
58
- != __('cheers.' + cheers)
59
- != ' '
60
- != __('keep_on')
61
-
62
- - var current_year = '1970'
63
- - var current_month = '01'
64
- - var count_post = 1
65
- each post in page.posts.toArray()
66
- - var year = date(post.date, 'YYYY')
67
- - var month = date(post.date, 'MM')
68
- if !is_year()
69
- if year !== current_year || month !== current_month
70
- if current_year !== '1970'
71
- small (#{count_post})
72
- </h3>
73
- <h3 class="item section">
74
- a(href=url_for(config.archive_dir + '/' + year )) #{year} #{__('symbol.year')}
75
- small /
76
- a(href=url_for(config.archive_dir + '/' + year + '/' + month)) #{ month } #{__('symbol.month')}
77
- - current_year = year
78
- - current_month = month
79
- - count_post = 1
80
- else
81
- - count_post = count_post + 1
82
- else
83
- if year !== current_year && !is_year()
84
- - current_year = year
85
- h3(class="item section")
86
- a(href=url_for(config.archive_dir + '/' + year )) #{ year } #{__('symbol.year')}
87
- if month !== current_month && is_year() && !is_month()
88
- - current_month = month
89
- h3(class="item section")
90
- a(href=url_for(config.archive_dir + '/' + year + '/' + month)) #{ month } #{__('symbol.month')}
91
- article(class="item normal" itemscope itemtype="http://schema.org/Article")
92
- div(class="meta")
93
- time(
94
- itemprop="dateCreated"
95
- datetime=moment(post.date).format()
96
- content=date(post.date, config.date_format)
97
- ) #{date(post.date, 'MM-DD')}
98
- if post.categories && post.categories.length
99
- - var cat_length = post.categories.length
100
- each cat,index in post.categories.toArray()
101
- if index === cat_length && cat.name !== page.category
102
- span
103
- a(href=url_for(cat.path)) #{cat.name}
104
- div(class="title")
105
- if post.link
106
- - var postTitleIcon = '<i class="ic i-link-alt"></i>'
107
- - var postText = post.title || post.link
108
- != _url(post.link, postText + postTitleIcon, {class: 'external', itemprop: 'url'})
109
- else
110
- - var postTitle = post.title || __('post.untitled')
111
- a(href=url_for(post.path) itemprop="url")
112
- span(itemprop="name") #{postTitle}
113
- if !is_year()
114
- small (#{count_post})
115
- </h3>
116
-
117
- include _partials/pagination.pug
118
-
1
+ extends _partials/layout.pug
2
+
3
+ block title
4
+ if is_month()
5
+ != `${page.year}${__('symbol.year')}/${page.month}${__('symbol.month')}`
6
+ else if is_year()
7
+ != `${page.year}${__('symbol.year')}`
8
+ != `${__('title.archive')}`
9
+
10
+ block header
11
+ h1(itemprop="name headline")
12
+ if is_month()
13
+ != _p('title.archive_in', page.year + __('symbol.year') + page.month + __('symbol.month'))
14
+ else if is_year()
15
+ != _p('title.archive_in', page.year + __('symbol.year'))
16
+ else
17
+ != __('title.archive')
18
+
19
+ block content
20
+ div(class="collapse wrap")
21
+ h2(class="item header")
22
+ if is_month()
23
+ a(href=url_for(config.archive_dir))
24
+ != __('title.all')
25
+ small /
26
+ a(href=url_for(config.archive_dir + '/' + page.year ))
27
+ != `${page.year} ${__('symbol.year')}`
28
+ small /
29
+ != `${page.month}${__('symbol.month')}`
30
+ small
31
+ != __('title.archive')
32
+ else if is_year()
33
+ a(href=url_for(config.archive_dir))
34
+ != __('title.all')
35
+ small /
36
+ != page.year + __('symbol.year')
37
+ small
38
+ != __('title.archive')
39
+ else
40
+ a(href=url_for(site.path))
41
+ != __('menu.home')
42
+ small /
43
+ - var posts_length = site.posts.length,cheers
44
+ if posts_length > 210
45
+ - cheers = 'excellent'
46
+ else if posts_length > 130
47
+ - cheers = 'great'
48
+ else if posts_length > 80
49
+ - cheers = 'good'
50
+ else if posts_length > 50
51
+ - cheers = 'nice'
52
+ else if posts_length > 30
53
+ - cheers = 'ok'
54
+ else
55
+ - cheers = 'um'
56
+ != _p('counter.archive_posts', site.posts.length)
57
+ small(class="cheers")
58
+ != __('cheers.' + cheers)
59
+ != ' '
60
+ != __('keep_on')
61
+
62
+ - var current_year = '1970'
63
+ - var current_month = '01'
64
+ - var count_post = 1
65
+ each post in page.posts.toArray()
66
+ - var year = date(post.date, 'YYYY')
67
+ - var month = date(post.date, 'MM')
68
+ if !is_year()
69
+ if year !== current_year || month !== current_month
70
+ if current_year !== '1970'
71
+ small (#{count_post})
72
+ </h3>
73
+ <h3 class="item section">
74
+ a(href=url_for(config.archive_dir + '/' + year )) #{year} #{__('symbol.year')}
75
+ small /
76
+ a(href=url_for(config.archive_dir + '/' + year + '/' + month)) #{ month } #{__('symbol.month')}
77
+ - current_year = year
78
+ - current_month = month
79
+ - count_post = 1
80
+ else
81
+ - count_post = count_post + 1
82
+ else
83
+ if year !== current_year && !is_year()
84
+ - current_year = year
85
+ h3(class="item section")
86
+ a(href=url_for(config.archive_dir + '/' + year )) #{ year } #{__('symbol.year')}
87
+ if month !== current_month && is_year() && !is_month()
88
+ - current_month = month
89
+ h3(class="item section")
90
+ a(href=url_for(config.archive_dir + '/' + year + '/' + month)) #{ month } #{__('symbol.month')}
91
+ article(class="item normal" itemscope itemtype="http://schema.org/Article")
92
+ div(class="meta")
93
+ time(
94
+ itemprop="dateCreated"
95
+ datetime=moment(post.date).format()
96
+ content=date(post.date, config.date_format)
97
+ ) #{date(post.date, 'MM-DD')}
98
+ if post.categories && post.categories.length
99
+ - var cat_length = post.categories.length
100
+ each cat,index in post.categories.toArray()
101
+ if index === cat_length && cat.name !== page.category
102
+ span
103
+ a(href=url_for(cat.path)) #{cat.name}
104
+ div(class="title")
105
+ if post.link
106
+ - var postTitleIcon = '<i class="ic i-link-alt"></i>'
107
+ - var postText = post.title || post.link
108
+ != _url(post.link, postText + postTitleIcon, {class: 'external', itemprop: 'url'})
109
+ else
110
+ - var postTitle = post.title || __('post.untitled')
111
+ a(href=url_for(post.path) itemprop="url")
112
+ span(itemprop="name") #{postTitle}
113
+ if !is_year()
114
+ small (#{count_post})
115
+ </h3>
116
+
117
+ include _partials/pagination.pug
118
+
@@ -1,59 +1,59 @@
1
- extends ./_partials/layout.pug
2
-
3
- block title
4
- != `${__('title.category')}${__('symbol.colon')}${page.category}`
5
-
6
- block header
7
- h1(itemprop="name headline")
8
- != _p('title.category_in', page.title)
9
-
10
- block content
11
- div(class="collapse wrap")
12
- - var prev = _category_prev(page.category)
13
- h2(class="item header")
14
- a(href=url_for(config.category_dir)) #{__('title.all')}
15
- if prev
16
- small /
17
- != prev
18
- small /
19
- != page.title
20
- small #{__('title.category')}
21
- - var posts = page.posts
22
- - var current = "c"
23
- - var lastcat = ""
24
- - var lastcatslug = ""
25
- each post in posts.toArray()
26
- if post.categories && post.categories.length
27
- - var cat_length = post.categories.length
28
- each cat,index in post.categories.toArray()
29
- if cat.name === page.title
30
- - lastcat = ""
31
- - lastcatslug = ""
32
- else
33
- - lastcat += `<a href=${url_for(cat.path)}>${cat.name}</a><small>`
34
- if index >= post.categories.toArray().length - 1
35
- - lastcat = lastcat+' ( '+cat.length+' ) '+`</small>`
36
- else
37
- - lastcat = lastcat+'/'+`</small>`
38
- - lastcatslug = lastcatslug + cat.slug
39
- if lastcat && lastcatslug && lastcatslug !== current
40
- h3(class="item section")
41
- !=lastcat
42
- - current = lastcatslug
43
- article(class="item normal" itemscope itemtype="http://schema.org/Article")
44
- div(class="meta")
45
- time(
46
- itemprop="dateCreated"
47
- datetime=moment(post.date).format()
48
- content=date(post.date, config.date_format)
49
- ) #{date(post.date, 'MM-DD')}
50
- div(class="title")
51
- if post.link
52
- - var postTitleIcon = '<i class="ic i-link-alt"></i>'
53
- - var postText = post.title || post.link
54
- != _url(post.link, postText + postTitleIcon, {class: 'external', itemprop: 'url'})
55
- else
56
- a(href=url_for(post.path) itemprop="url")
57
- span(itemprop="name")
58
- != post.title || __('post.untitled')
59
- include _partials/pagination.pug
1
+ extends ./_partials/layout.pug
2
+
3
+ block title
4
+ != `${__('title.category')}${__('symbol.colon')}${page.category}`
5
+
6
+ block header
7
+ h1(itemprop="name headline")
8
+ != _p('title.category_in', page.title)
9
+
10
+ block content
11
+ div(class="collapse wrap")
12
+ - var prev = _category_prev(page.category)
13
+ h2(class="item header")
14
+ a(href=url_for(config.category_dir)) #{__('title.all')}
15
+ if prev
16
+ small /
17
+ != prev
18
+ small /
19
+ != page.title
20
+ small #{__('title.category')}
21
+ - var posts = page.posts
22
+ - var current = "c"
23
+ - var lastcat = ""
24
+ - var lastcatslug = ""
25
+ each post in posts.toArray()
26
+ if post.categories && post.categories.length
27
+ - var cat_length = post.categories.length
28
+ each cat,index in post.categories.toArray()
29
+ if cat.name === page.title
30
+ - lastcat = ""
31
+ - lastcatslug = ""
32
+ else
33
+ - lastcat += `<a href=${url_for(cat.path)}>${cat.name}</a><small>`
34
+ if index >= post.categories.toArray().length - 1
35
+ - lastcat = lastcat+' ( '+cat.length+' ) '+`</small>`
36
+ else
37
+ - lastcat = lastcat+'/'+`</small>`
38
+ - lastcatslug = lastcatslug + cat.slug
39
+ if lastcat && lastcatslug && lastcatslug !== current
40
+ h3(class="item section")
41
+ !=lastcat
42
+ - current = lastcatslug
43
+ article(class="item normal" itemscope itemtype="http://schema.org/Article")
44
+ div(class="meta")
45
+ time(
46
+ itemprop="dateCreated"
47
+ datetime=moment(post.date).format()
48
+ content=date(post.date, config.date_format)
49
+ ) #{date(post.date, 'MM-DD')}
50
+ div(class="title")
51
+ if post.link
52
+ - var postTitleIcon = '<i class="ic i-link-alt"></i>'
53
+ - var postText = post.title || post.link
54
+ != _url(post.link, postText + postTitleIcon, {class: 'external', itemprop: 'url'})
55
+ else
56
+ a(href=url_for(post.path) itemprop="url")
57
+ span(itemprop="name")
58
+ != post.title || __('post.untitled')
59
+ include _partials/pagination.pug
package/layout/index.pug CHANGED
@@ -1,33 +1,33 @@
1
- extends _partials/layout.pug
2
- include _mixin/card.pug
3
- include _mixin/postmeta.pug
4
- include _mixin/segment.pug
5
-
6
- block content
7
- div(class="index wrap")
8
- if page.current === 1
9
- if page.sticky.length > 0
10
- h2(class="divider")
11
- != __('index.sticky')
12
- - var sticky = page.sticky.toArray()
13
- div(class="segments sticky")
14
- each post in sticky
15
- +SMRender(post, false)
16
- if page.catlist.length > 0
17
- h2(class="divider")
18
- != __('index.category')
19
- div(class="cards")
20
- each cat in page.catlist
21
- +CardRender(cat)
22
- - var pagePosts = page?.posts?.length
23
- if pagePosts > 0
24
- - var posts = page.posts.toArray()
25
- if page.current === 1
26
- h2(class="divider")
27
- != __('index.posts')
28
- div(class="segments posts")
29
- each post in posts
30
- +SMRender(post, true)
31
- include _partials/pagination.pug
32
-
33
-
1
+ extends _partials/layout.pug
2
+ include _mixin/card.pug
3
+ include _mixin/postmeta.pug
4
+ include _mixin/segment.pug
5
+
6
+ block content
7
+ div(class="index wrap")
8
+ if page.current === 1
9
+ if page.sticky.length > 0
10
+ h2(class="divider")
11
+ != __('index.sticky')
12
+ - var sticky = page.sticky.toArray()
13
+ div(class="segments sticky")
14
+ each post in sticky
15
+ +SMRender(post, false)
16
+ if page.catlist.length > 0
17
+ h2(class="divider")
18
+ != __('index.category')
19
+ div(class="cards")
20
+ each cat in page.catlist
21
+ +CardRender(cat)
22
+ - var pagePosts = page?.posts?.length
23
+ if pagePosts > 0
24
+ - var posts = page.posts.toArray()
25
+ if page.current === 1
26
+ h2(class="divider")
27
+ != __('index.posts')
28
+ div(class="segments posts")
29
+ each post in posts
30
+ +SMRender(post, true)
31
+ include _partials/pagination.pug
32
+
33
+