hexo-theme-lnote 1.2.4 → 1.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. package/README.md +122 -122
  2. package/_config.yml +19 -19
  3. package/config/links.yml +63 -63
  4. package/config/svg.yml +33 -33
  5. package/index.d.ts +4 -0
  6. package/languages/de.yml +69 -69
  7. package/languages/en.yml +73 -69
  8. package/languages/eo.yml +69 -69
  9. package/languages/es.yml +69 -69
  10. package/languages/ja.yml +69 -69
  11. package/languages/ru.yml +69 -69
  12. package/languages/zh-CN.yml +73 -69
  13. package/languages/zh-HK.yml +73 -69
  14. package/languages/zh-TW.yml +73 -69
  15. package/layout/404.ejs +8 -8
  16. package/layout/_partials/archive-list.ejs +17 -17
  17. package/layout/_partials/category-chains.ejs +19 -19
  18. package/layout/_partials/category-list.ejs +62 -62
  19. package/layout/_partials/comments/changyan.ejs +11 -11
  20. package/layout/_partials/comments/cusdis.ejs +25 -25
  21. package/layout/_partials/comments/discuss.ejs +17 -17
  22. package/layout/_partials/comments/disqus.ejs +32 -32
  23. package/layout/_partials/comments/giscus.ejs +36 -36
  24. package/layout/_partials/comments/gitalk.ejs +19 -19
  25. package/layout/_partials/comments/livere.ejs +10 -10
  26. package/layout/_partials/comments/remark42.ejs +29 -29
  27. package/layout/_partials/comments/twikoo.ejs +25 -25
  28. package/layout/_partials/comments/utterances.ejs +27 -27
  29. package/layout/_partials/comments/valine.ejs +23 -23
  30. package/layout/_partials/comments/waline.ejs +24 -24
  31. package/layout/_partials/comments.ejs +8 -8
  32. package/layout/_partials/css.ejs +9 -9
  33. package/layout/_partials/footer/beian.ejs +33 -33
  34. package/layout/_partials/footer/statistics.ejs +39 -39
  35. package/layout/_partials/footer.ejs +7 -7
  36. package/layout/_partials/head.ejs +46 -46
  37. package/layout/_partials/header/banner.ejs +24 -24
  38. package/layout/_partials/header/navigation.ejs +56 -56
  39. package/layout/_partials/header.ejs +4 -4
  40. package/layout/_partials/markdown-plugins.ejs +24 -24
  41. package/layout/_partials/paginator.ejs +14 -14
  42. package/layout/_partials/plugins/CSR.ejs +4 -0
  43. package/layout/_partials/plugins/analytics.ejs +75 -75
  44. package/layout/_partials/plugins/anchorjs.ejs +39 -39
  45. package/layout/_partials/plugins/code-widget.ejs +7 -7
  46. package/layout/_partials/plugins/encrypt.ejs +18 -18
  47. package/layout/_partials/plugins/fancybox.ejs +11 -11
  48. package/layout/_partials/plugins/highlight.ejs +13 -13
  49. package/layout/_partials/plugins/math.ejs +51 -51
  50. package/layout/_partials/plugins/mermaid.ejs +4 -4
  51. package/layout/_partials/plugins/nprogress.ejs +7 -7
  52. package/layout/_partials/plugins/typed.ejs +20 -20
  53. package/layout/_partials/post/category-bar.ejs +18 -18
  54. package/layout/_partials/post/copyright.ejs +50 -50
  55. package/layout/_partials/post/css.ejs +3 -3
  56. package/layout/_partials/post/meta-bottom.ejs +16 -16
  57. package/layout/_partials/post/meta-top.ejs +27 -27
  58. package/layout/_partials/post/scripts.ejs +8 -7
  59. package/layout/_partials/post/sidebar-left.ejs +1 -1
  60. package/layout/_partials/post/sidebar-right.ejs +2 -2
  61. package/layout/_partials/post/toc.ejs +6 -6
  62. package/layout/_partials/scripts.ejs +10 -10
  63. package/layout/_partials/search.ejs +19 -19
  64. package/layout/about.ejs +22 -22
  65. package/layout/archive.ejs +10 -10
  66. package/layout/categories.ejs +20 -20
  67. package/layout/category.ejs +12 -12
  68. package/layout/index.ejs +61 -61
  69. package/layout/layout.ejs +60 -60
  70. package/layout/links.ejs +31 -31
  71. package/layout/page.ejs +15 -15
  72. package/layout/post.ejs +77 -77
  73. package/layout/tag.ejs +12 -12
  74. package/layout/tags.ejs +26 -26
  75. package/package.json +74 -70
  76. package/scripts/index.js +1 -1
  77. package/source/css/_functions/base.styl +8 -8
  78. package/source/css/_mixins/base.styl +23 -23
  79. package/source/css/_pages/_about/about.styl +32 -32
  80. package/source/css/_pages/_archive/archive.styl +32 -32
  81. package/source/css/_pages/_base/_widget/anchorjs.styl +8 -8
  82. package/source/css/_pages/_base/_widget/banner.styl +29 -29
  83. package/source/css/_pages/_base/_widget/board.styl +11 -11
  84. package/source/css/_pages/_base/_widget/code-widget.styl +37 -36
  85. package/source/css/_pages/_base/_widget/copyright.styl +91 -90
  86. package/source/css/_pages/_base/_widget/footer.styl +65 -65
  87. package/source/css/_pages/_base/_widget/footnote.styl +26 -25
  88. package/source/css/_pages/_base/_widget/header.styl +173 -173
  89. package/source/css/_pages/_base/_widget/modal.styl +100 -100
  90. package/source/css/_pages/_base/_widget/navlink.styl +15 -15
  91. package/source/css/_pages/_base/_widget/ngrogress.styl +12 -12
  92. package/source/css/_pages/_base/_widget/noscript.styl +13 -12
  93. package/source/css/_pages/_base/_widget/pagination.styl +23 -23
  94. package/source/css/_pages/_base/_widget/qrcode.styl +17 -17
  95. package/source/css/_pages/_base/_widget/scroll-btn.styl +48 -48
  96. package/source/css/_pages/_base/_widget/text.styl +20 -19
  97. package/source/css/_pages/_base/_widget/toc.styl +75 -75
  98. package/source/css/_pages/_base/base.styl +67 -68
  99. package/source/css/_pages/_base/color-schema.styl +79 -75
  100. package/source/css/_pages/_base/inline.styl +51 -51
  101. package/source/css/_pages/_base/keyframes.styl +31 -31
  102. package/source/css/_pages/_base/print.styl +39 -38
  103. package/source/css/_pages/_category/category-bar.styl +58 -58
  104. package/source/css/_pages/_category/category-chain.styl +6 -6
  105. package/source/css/_pages/_category/category-list.styl +62 -62
  106. package/source/css/_pages/_index/index.styl +75 -75
  107. package/source/css/_pages/_links/links.styl +80 -79
  108. package/source/css/_pages/_post/comment.styl +28 -27
  109. package/source/css/_pages/_post/highlight.styl +76 -75
  110. package/source/css/_pages/_post/markdown.styl +96 -96
  111. package/source/css/_pages/_post/post-page.styl +179 -179
  112. package/source/css/_pages/_post/post-plugin.styl +10 -0
  113. package/source/css/_pages/_post/post-tag.styl +75 -29
  114. package/source/css/_pages/_tag/tags.styl +9 -9
  115. package/source/css/_pages/pages.styl +8 -8
  116. package/source/css/_variables/base.styl +72 -72
  117. package/source/css/gitalk.css +546 -546
  118. package/source/css/main.styl +19 -19
  119. package/source/img/chat/responder.jpg +0 -0
  120. package/source/img/chat/sender.jpg +0 -0
  121. package/source/img/default8.jpg +0 -0
  122. package/source/js/color-schema.js +279 -279
  123. package/source/js/events.js +72 -72
  124. package/source/js/img-lazyload.js +10 -10
  125. package/source/js/local-search.js +70 -70
  126. package/source/js/post/copying-code.js +34 -34
  127. package/source/js/post/enable.js +6 -6
  128. package/source/js/post/img-swipe-bf.js +47 -47
  129. package/source/js/post/img-swipe.js +84 -35
  130. package/source/js/post/mermaiding.js +9 -9
  131. package/source/js/post/play-imgs.js +58 -58
  132. package/source/js/post/toc.js +24 -24
  133. package/source/js/post/view-imgs.js +27 -27
  134. package/source/js/utils.js +245 -245
  135. package/source/xml/local-search.xml +45 -45
  136. package/templates/Chat.vue +52 -0
  137. package/templates/GroupImage.vue +36 -0
  138. package/templates/MenuNav.vue +39 -0
  139. package/templates/Note.vue +33 -0
  140. package/templates/Noun.vue +25 -0
  141. package/templates/NounContent.vue +29 -0
  142. package/templates/Tab.vue +40 -0
  143. package/templates/footer.ejs +12 -12
  144. package/templates/utils/uri.ts +40 -0
  145. package/source/css/_pages/_tag/tag.styl +0 -9
  146. package/templates/noun.vue +0 -18
@@ -1,23 +1,23 @@
1
- <% if (theme.valine.appId && theme.valine.appKey) { %>
2
- <div id="valine"></div>
3
- <script type="text/javascript">
4
- LNote.utils.loadComments('#valine', function() {
5
- LNote.utils.createScript('<%= url_join(theme.static_prefix.valine, 'Valine.min.js') %>', function() {
6
- var options = Object.assign(
7
- <%- JSON.stringify(theme.valine || {}) %>,
8
- {
9
- el: "#valine",
10
- path: <%= theme.valine.path %>
11
- }
12
- )
13
- new Valine(options);
14
- LNote.utils.waitElementVisible('#valine .vcontent', () => {
15
- var imgSelector = '#valine .vcontent img:not(.vemoji)';
16
- LNote.plugins.imageCaption(imgSelector);
17
- LNote.plugins.fancyBox(imgSelector);
18
- })
19
- });
20
- });
21
- </script>
22
- <noscript>Please enable JavaScript to view the comments</noscript>
23
- <% } %>
1
+ <% if (theme.valine.appId && theme.valine.appKey) { %>
2
+ <div id="valine"></div>
3
+ <script type="text/javascript">
4
+ LNote.utils.loadComments('#valine', function() {
5
+ LNote.utils.createScript('<%= url_join(theme.static_prefix.valine, 'Valine.min.js') %>', function() {
6
+ var options = Object.assign(
7
+ <%- JSON.stringify(theme.valine || {}) %>,
8
+ {
9
+ el: "#valine",
10
+ path: <%= theme.valine.path %>
11
+ }
12
+ )
13
+ new Valine(options);
14
+ LNote.utils.waitElementVisible('#valine .vcontent', () => {
15
+ var imgSelector = '#valine .vcontent img:not(.vemoji)';
16
+ LNote.plugins.imageCaption(imgSelector);
17
+ LNote.plugins.fancyBox(imgSelector);
18
+ })
19
+ });
20
+ });
21
+ </script>
22
+ <noscript>Please enable JavaScript to view the comments</noscript>
23
+ <% } %>
@@ -1,24 +1,24 @@
1
- <% if (theme.waline.serverURL) { %>
2
- <div id="waline"></div>
3
- <script type="text/javascript">
4
- LNote.utils.loadComments('#waline', function() {
5
- LNote.utils.createCssLink('<%= url_join(theme.static_prefix.waline, 'waline.min.css') %>')
6
- LNote.utils.createScript('<%= url_join(theme.static_prefix.waline, 'waline.min.js') %>', function() {
7
- var options = Object.assign(
8
- <%- JSON.stringify(theme.waline || {}) %>,
9
- {
10
- el: '#waline',
11
- path: <%= theme.waline.path %>
12
- }
13
- )
14
- Waline.init(options);
15
- LNote.utils.waitElementVisible('#waline .vcontent', () => {
16
- var imgSelector = '#waline .vcontent img:not(.vemoji)';
17
- LNote.plugins.imageCaption(imgSelector);
18
- LNote.plugins.fancyBox(imgSelector);
19
- })
20
- });
21
- });
22
- </script>
23
- <noscript>Please enable JavaScript to view the comments</noscript>
24
- <% } %>
1
+ <% if (theme.waline.serverURL) { %>
2
+ <div id="waline"></div>
3
+ <script type="text/javascript">
4
+ LNote.utils.loadComments('#waline', function() {
5
+ LNote.utils.createCssLink('<%= url_join(theme.static_prefix.waline, 'waline.min.css') %>')
6
+ LNote.utils.createScript('<%= url_join(theme.static_prefix.waline, 'waline.min.js') %>', function() {
7
+ var options = Object.assign(
8
+ <%- JSON.stringify(theme.waline || {}) %>,
9
+ {
10
+ el: '#waline',
11
+ path: <%= theme.waline.path %>
12
+ }
13
+ )
14
+ Waline.init(options);
15
+ LNote.utils.waitElementVisible('#waline .vcontent', () => {
16
+ var imgSelector = '#waline .vcontent img:not(.vemoji)';
17
+ LNote.plugins.imageCaption(imgSelector);
18
+ LNote.plugins.fancyBox(imgSelector);
19
+ })
20
+ });
21
+ });
22
+ </script>
23
+ <noscript>Please enable JavaScript to view the comments</noscript>
24
+ <% } %>
@@ -1,8 +1,8 @@
1
- <% if ((!is_post() && !is_page()) || (is_post() && theme.post.comments.enable && page.comments) || (is_page() && page.comments)) { %>
2
- <% var commentType = typeof page.comment === 'string' && page.comment !== '' ? page.comment : theme.post.comments.type %>
3
- <% if (commentType) { %>
4
- <article id="comments">
5
- <%- partial('_partials/comments/' + commentType) %>
6
- </article>
7
- <% } %>
8
- <% } %>
1
+ <% if ((!is_post() && !is_page()) || (is_post() && theme.post.comments.enable && page.comments) || (is_page() && page.comments)) { %>
2
+ <% var commentType = typeof page.comment === 'string' && page.comment !== '' ? page.comment : theme.post.comments.type %>
3
+ <% if (commentType) { %>
4
+ <article id="comments">
5
+ <%- partial('_partials/comments/' + commentType) %>
6
+ </article>
7
+ <% } %>
8
+ <% } %>
@@ -1,10 +1,10 @@
1
- <%- all_html_link('css') %>
2
- <%- partial('_partials/post/css.ejs') %>
3
-
4
- <%- css('//at.alicdn.com/t/font_1749284_hj8rtnfg7um.css') %>
5
-
6
- <%# if (theme.custom_css) { %>
7
- <%#- css(theme.custom_css) %>
8
- <%# } %>
9
-
1
+ <%- all_html_link('css') %>
2
+ <%- partial('_partials/post/css.ejs') %>
3
+
4
+ <%- css('//at.alicdn.com/t/font_1749284_hj8rtnfg7um.css') %>
5
+
6
+ <%# if (theme.custom_css) { %>
7
+ <%#- css(theme.custom_css) %>
8
+ <%# } %>
9
+
10
10
  <%- my_post_css(page) %>
@@ -1,33 +1,33 @@
1
- <div class="beian">
2
- <span>
3
- <a href="http://beian.miit.gov.cn/" target="_blank" rel="nofollow noopener">
4
- <%- theme.footer.beian.icp_text %>
5
- </a>
6
- </span>
7
- <% if(theme.footer.beian.police_text) { %>
8
- <% if(theme.footer.beian.police_code) { %>
9
- <span>
10
- <a
11
- href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=<%= theme.footer.beian.police_code %>"
12
- rel="nofollow noopener"
13
- class="beian-police"
14
- target="_blank"
15
- >
16
- <% if(theme.footer.beian.police_icon) { %>
17
- <span style="visibility: hidden; width: 0">|</span>
18
- <img src="<%= url_for(theme.footer.beian.police_icon) %>" alt="police-icon"/>
19
- <% } %>
20
- <span><%- theme.footer.beian.police_text %></span>
21
- </a>
22
- </span>
23
- <% } else { %>
24
- <span class="beian-police">
25
- <% if(theme.footer.beian.police_icon) { %>
26
- <span style="visibility: hidden; width: 0">|</span>
27
- <img src="<%= url_for(theme.footer.beian.police_icon) %>" alt="police-icon"/>
28
- <% } %>
29
- <span class="beian-police"><%- theme.footer.beian.police_text %></span>
30
- </span>
31
- <% } %>
32
- <% } %>
33
- </div>
1
+ <div class="beian">
2
+ <span>
3
+ <a href="http://beian.miit.gov.cn/" target="_blank" rel="nofollow noopener">
4
+ <%- theme.footer.beian.icp_text %>
5
+ </a>
6
+ </span>
7
+ <% if(theme.footer.beian.police_text) { %>
8
+ <% if(theme.footer.beian.police_code) { %>
9
+ <span>
10
+ <a
11
+ href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=<%= theme.footer.beian.police_code %>"
12
+ rel="nofollow noopener"
13
+ class="beian-police"
14
+ target="_blank"
15
+ >
16
+ <% if(theme.footer.beian.police_icon) { %>
17
+ <span style="visibility: hidden; width: 0">|</span>
18
+ <img src="<%= url_for(theme.footer.beian.police_icon) %>" alt="police-icon"/>
19
+ <% } %>
20
+ <span><%- theme.footer.beian.police_text %></span>
21
+ </a>
22
+ </span>
23
+ <% } else { %>
24
+ <span class="beian-police">
25
+ <% if(theme.footer.beian.police_icon) { %>
26
+ <span style="visibility: hidden; width: 0">|</span>
27
+ <img src="<%= url_for(theme.footer.beian.police_icon) %>" alt="police-icon"/>
28
+ <% } %>
29
+ <span class="beian-police"><%- theme.footer.beian.police_text %></span>
30
+ </span>
31
+ <% } %>
32
+ <% } %>
33
+ </div>
@@ -1,39 +1,39 @@
1
- <div class="statistics">
2
- <% var pv_texts = (theme.footer.statistics.pv_format || __('footer.pv')).split('{}') %>
3
- <% var uv_texts = (theme.footer.statistics.uv_format || __('footer.uv')).split('{}') %>
4
-
5
- <% if (theme.footer.statistics.source === 'leancloud') { %>
6
- <% if (pv_texts.length >= 2) { %>
7
- <span id="leancloud-site-pv-container" style="display: none">
8
- <%- pv_texts[0] %>
9
- <span id="leancloud-site-pv"></span>
10
- <%- pv_texts[1] %>
11
- </span>
12
- <% } %>
13
- <% if (uv_texts.length >= 2) { %>
14
- <span id="leancloud-site-uv-container" style="display: none">
15
- <%- uv_texts[0] %>
16
- <span id="leancloud-site-uv"></span>
17
- <%- uv_texts[1] %>
18
- </span>
19
- <% } %>
20
- <% import_js(theme.static_prefix.internal_js, 'leancloud.js', 'defer') %>
21
-
22
- <% } else if (theme.footer.statistics.source === 'busuanzi') { %>
23
- <% if (pv_texts.length >= 2) { %>
24
- <span id="busuanzi_container_site_pv" style="display: none">
25
- <%- pv_texts[0] %>
26
- <span id="busuanzi_value_site_pv"></span>
27
- <%- pv_texts[1] %>
28
- </span>
29
- <% } %>
30
- <% if (uv_texts.length >= 2) { %>
31
- <span id="busuanzi_container_site_uv" style="display: none">
32
- <%- uv_texts[0] %>
33
- <span id="busuanzi_value_site_uv"></span>
34
- <%- uv_texts[1] %>
35
- </span>
36
- <% } %>
37
- <% import_js(theme.static_prefix.busuanzi, theme.static_prefix.busuanzi, 'defer') %>
38
- <% } %>
39
- </div>
1
+ <div class="statistics">
2
+ <% var pv_texts = (theme.footer.statistics.pv_format || __('footer.pv')).split('{}') %>
3
+ <% var uv_texts = (theme.footer.statistics.uv_format || __('footer.uv')).split('{}') %>
4
+
5
+ <% if (theme.footer.statistics.source === 'leancloud') { %>
6
+ <% if (pv_texts.length >= 2) { %>
7
+ <span id="leancloud-site-pv-container" style="display: none">
8
+ <%- pv_texts[0] %>
9
+ <span id="leancloud-site-pv"></span>
10
+ <%- pv_texts[1] %>
11
+ </span>
12
+ <% } %>
13
+ <% if (uv_texts.length >= 2) { %>
14
+ <span id="leancloud-site-uv-container" style="display: none">
15
+ <%- uv_texts[0] %>
16
+ <span id="leancloud-site-uv"></span>
17
+ <%- uv_texts[1] %>
18
+ </span>
19
+ <% } %>
20
+ <% import_js(theme.static_prefix.internal_js, 'leancloud.js', 'defer') %>
21
+
22
+ <% } else if (theme.footer.statistics.source === 'busuanzi') { %>
23
+ <% if (pv_texts.length >= 2) { %>
24
+ <span id="busuanzi_container_site_pv" style="display: none">
25
+ <%- pv_texts[0] %>
26
+ <span id="busuanzi_value_site_pv"></span>
27
+ <%- pv_texts[1] %>
28
+ </span>
29
+ <% } %>
30
+ <% if (uv_texts.length >= 2) { %>
31
+ <span id="busuanzi_container_site_uv" style="display: none">
32
+ <%- uv_texts[0] %>
33
+ <span id="busuanzi_value_site_uv"></span>
34
+ <%- uv_texts[1] %>
35
+ </span>
36
+ <% } %>
37
+ <% import_js(theme.static_prefix.busuanzi, theme.static_prefix.busuanzi, 'defer') %>
38
+ <% } %>
39
+ </div>
@@ -1,7 +1,7 @@
1
- <div class="footer-inner">
2
- <% if (theme.footer.content) { %>
3
- <div class="footer-content">
4
- <%- theme.footer.content %>
5
- </div>
6
- <% } %>
7
- </div>
1
+ <div class="footer-inner">
2
+ <% if (theme.footer.content) { %>
3
+ <div class="footer-content">
4
+ <%- theme.footer.content %>
5
+ </div>
6
+ <% } %>
7
+ </div>
@@ -1,46 +1,46 @@
1
- <%
2
- var separator = ' - '
3
- var title = page.title ? [page.title, config.title].join(separator) : config.title
4
- var keywords = page.keywords || config.keywords
5
- if (keywords instanceof Array) {
6
- keywords = keywords.join(',')
7
- }
8
- var description = page.description || page.excerpt || (is_post() && page.content) || config.description
9
- if (description) {
10
- description = strip_html(description).substring(0, 200).trim().replace(/\n/g, ' ')
11
- }
12
- var ogImage = page.og_img || page.index_img
13
- var ogConfig = Object.assign({ image: ogImage && url_for(ogImage) }, theme.open_graph)
14
- %>
15
-
16
- <head>
17
- <meta charset="UTF-8">
18
- <link rel="apple-touch-icon" sizes="76x76" href="<%= url_for(theme.apple_touch_icon) %>">
19
- <link rel="icon" href="<%= url_for(theme.favicon) %>">
20
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, shrink-to-fit=no">
21
- <meta http-equiv="x-ua-compatible" content="ie=edge">
22
- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
23
- <meta name="theme-color" content="#000">
24
- <meta name="author" content="<%= config.author %>">
25
- <meta name="keywords" content="<%= keywords %>">
26
- <%- open_graph(ogConfig) %>
27
- <meta name="description" content="<%= description %>">
28
- <meta name="referrer" content="no-referrer-when-downgrade">
29
-
30
- <% if(!theme.html_cache_enable) { %>
31
- <meta http-equiv="Cache-Control" content="no-cache,no-store,must-revalidate">
32
- <meta http-equiv="Pragma" content="no-cache">
33
- <meta http-equiv="Expires" content="0">
34
- <% } %>
35
-
36
- <title><%= title %></title>
37
-
38
- <%- partial('_partials/css.ejs') %>
39
- <%- export_config() %>
40
-
41
-
42
- <script src="<%= url_for('js/utils.js') %>"></script>
43
- <script src="<%= url_for('js/color-schema.js') %>"></script>
44
-
45
- <%- inject_point('head') %>
46
- </head>
1
+ <%
2
+ var separator = ' - '
3
+ var title = page.title ? [page.title, config.title].join(separator) : config.title
4
+ var keywords = page.keywords || config.keywords
5
+ if (keywords instanceof Array) {
6
+ keywords = keywords.join(',')
7
+ }
8
+ var description = page.description || page.excerpt || (is_post() && page.content) || config.description
9
+ if (description) {
10
+ description = strip_html(description).substring(0, 200).trim().replace(/\n/g, ' ')
11
+ }
12
+ var ogImage = page.og_img || page.index_img
13
+ var ogConfig = Object.assign({ image: ogImage && url_for(ogImage) }, theme.open_graph)
14
+ %>
15
+
16
+ <head>
17
+ <meta charset="UTF-8">
18
+ <link rel="apple-touch-icon" sizes="76x76" href="<%= url_for(theme.apple_touch_icon) %>">
19
+ <link rel="icon" href="<%= url_for(theme.favicon) %>">
20
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, shrink-to-fit=no">
21
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
22
+ <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
23
+ <meta name="theme-color" content="#000">
24
+ <meta name="author" content="<%= config.author %>">
25
+ <meta name="keywords" content="<%= keywords %>">
26
+ <%- open_graph(ogConfig) %>
27
+ <meta name="description" content="<%= description %>">
28
+ <meta name="referrer" content="no-referrer-when-downgrade">
29
+
30
+ <% if(!theme.html_cache_enable) { %>
31
+ <meta http-equiv="Cache-Control" content="no-cache,no-store,must-revalidate">
32
+ <meta http-equiv="Pragma" content="no-cache">
33
+ <meta http-equiv="Expires" content="0">
34
+ <% } %>
35
+
36
+ <title><%= title %></title>
37
+
38
+ <%- partial('_partials/css.ejs') %>
39
+ <%- export_config() %>
40
+
41
+
42
+ <script src="<%= url_for('js/utils.js') %>"></script>
43
+ <script src="<%= url_for('js/color-schema.js') %>"></script>
44
+
45
+ <%- inject_point('head') %>
46
+ </head>
@@ -1,24 +1,24 @@
1
- <%
2
- var banner_img = page.banner_img || theme.banner_img
3
- var subtitle = page.subtitle || page.title
4
- %>
5
-
6
- <div id="banner" class="banner" parallax=true
7
- style="background: url('<%- url_for(banner_img) %>') no-repeat center center; background-size: cover;">
8
- <div class="full-bg-img">
9
- <div class="mask flex-center" style="background-color: rgba(0, 0, 0, 0.3)">
10
- <div class="banner-text text-center fade-in-up">
11
- <div class="h2">
12
- <span id="subtitle" data-typed-text="<%= subtitle %>"></span>
13
- </div>
14
-
15
- <% if (is_post()) { %>
16
- <%- inject_point('postMetaTop') %>
17
- <% } %>
18
- </div>
19
- <% if(!is_post()) { %>
20
- <div class="scroll-down-bar"><i class="iconfont icon-arrowdown"></i></div>
21
- <% } %>
22
- </div>
23
- </div>
24
- </div>
1
+ <%
2
+ var banner_img = page.banner_img || theme.banner_img
3
+ var subtitle = page.subtitle || page.title
4
+ %>
5
+
6
+ <div id="banner" class="banner" parallax=true
7
+ style="background: url('<%- url_for(banner_img) %>') no-repeat center center; background-size: cover;">
8
+ <div class="full-bg-img">
9
+ <div class="mask flex-center" style="background-color: rgba(0, 0, 0, 0.3)">
10
+ <div class="banner-text text-center fade-in-up">
11
+ <div class="fs-1">
12
+ <span id="subtitle" data-typed-text="<%= subtitle %>"></span>
13
+ </div>
14
+
15
+ <% if (is_post()) { %>
16
+ <%- inject_point('postMetaTop') %>
17
+ <% } %>
18
+ </div>
19
+ <% if(!is_post()) { %>
20
+ <div class="scroll-down-bar"><i class="iconfont icon-arrowdown"></i></div>
21
+ <% } %>
22
+ </div>
23
+ </div>
24
+ </div>
@@ -1,57 +1,57 @@
1
- <nav id="navbar" class="navbar fixed-top navbar-expand-lg navbar-dark scrolling-navbar">
2
- <div class="container">
3
- <a class="navbar-brand" href="<%= url_for() %>">
4
- <strong><%= config.title %></strong>
5
- </a>
6
-
7
- <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
8
- <div class="animated-icon"><span></span><span></span><span></span></div>
9
- </button>
10
-
11
- <!-- Collapsible content -->
12
- <div class="collapse navbar-collapse" id="navbarSupportedContent" style="flex-grow: 0;">
13
- <ul class="navbar-nav ml-auto text-center">
14
- <li class="nav-item">
15
- <a class="nav-link" href="<%= url_for() %>">
16
- <i class="iconfont icon-home-fill"></i>
17
- <span><%= __('home.menu') %></span>
18
- </a>
19
- </li>
20
- <li class="nav-item">
21
- <a class="nav-link" href="<%= url_for('/archives') %>">
22
- <i class="iconfont icon-archive-fill"></i>
23
- <span><%= __('archive.menu') %></span>
24
- </a>
25
- </li>
26
- <li class="nav-item">
27
- <a class="nav-link" href="<%= url_for('/categories') %>">
28
- <i class="iconfont icon-category-fill"></i>
29
- <span><%= __('category.menu') %></span>
30
- </a>
31
- </li>
32
- <li class="nav-item">
33
- <a class="nav-link" href="<%= url_for('/tags') %>">
34
- <i class="iconfont icon-tags-fill"></i>
35
- <span><%= __('tag.menu') %></span>
36
- </a>
37
- </li>
38
- <li class="nav-item">
39
- <a class="nav-link" href="<%= url_for('/about') %>">
40
- <i class="iconfont icon-user-fill"></i>
41
- <span><%= __('about.menu') %></span>
42
- </a>
43
- </li>
44
- <li class="nav-item" id="search-btn">
45
- <a class="nav-link" target="_self" href="javascript:;" data-bs-toggle="modal" data-bs-target="#modalSearch" aria-label="Search">
46
- <i class="iconfont icon-search"></i>
47
- </a>
48
- </li>
49
- <li class="nav-item" id="color-toggle-btn">
50
- <a class="nav-link" target="_self" href="javascript:;" aria-label="Color Toggle">
51
- <i class="iconfont icon-dark" id="color-toggle-icon"></i>
52
- </a>
53
- </li>
54
- </ul>
55
- </div>
56
- </div>
1
+ <nav id="navbar" class="navbar fixed-top navbar-expand-lg navbar-dark scrolling-navbar">
2
+ <div class="container">
3
+ <a class="navbar-brand" href="<%= url_for() %>">
4
+ <strong><%= config.title %></strong>
5
+ </a>
6
+
7
+ <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
8
+ <div class="animated-icon"><span></span><span></span><span></span></div>
9
+ </button>
10
+
11
+ <!-- Collapsible content -->
12
+ <div class="collapse navbar-collapse" id="navbarSupportedContent" style="flex-grow: 0;">
13
+ <ul class="navbar-nav ml-auto text-center">
14
+ <li class="nav-item">
15
+ <a class="nav-link" href="<%= url_for() %>">
16
+ <i class="iconfont icon-home-fill"></i>
17
+ <span><%= __('home.menu') %></span>
18
+ </a>
19
+ </li>
20
+ <li class="nav-item">
21
+ <a class="nav-link" href="<%= url_for('/archives') %>">
22
+ <i class="iconfont icon-archive-fill"></i>
23
+ <span><%= __('archive.menu') %></span>
24
+ </a>
25
+ </li>
26
+ <li class="nav-item">
27
+ <a class="nav-link" href="<%= url_for('/categories') %>">
28
+ <i class="iconfont icon-category-fill"></i>
29
+ <span><%= __('category.menu') %></span>
30
+ </a>
31
+ </li>
32
+ <li class="nav-item">
33
+ <a class="nav-link" href="<%= url_for('/tags') %>">
34
+ <i class="iconfont icon-tags-fill"></i>
35
+ <span><%= __('tag.menu') %></span>
36
+ </a>
37
+ </li>
38
+ <li class="nav-item">
39
+ <a class="nav-link" href="<%= url_for('/about') %>">
40
+ <i class="iconfont icon-user-fill"></i>
41
+ <span><%= __('about.menu') %></span>
42
+ </a>
43
+ </li>
44
+ <li class="nav-item" id="search-btn">
45
+ <a class="nav-link" target="_self" href="javascript:;" data-bs-toggle="modal" data-bs-target="#modalSearch" aria-label="Search">
46
+ <i class="iconfont icon-search"></i>
47
+ </a>
48
+ </li>
49
+ <li class="nav-item" id="color-toggle-btn">
50
+ <a class="nav-link" target="_self" href="javascript:;" aria-label="Color Toggle">
51
+ <i class="iconfont icon-dark" id="color-toggle-icon"></i>
52
+ </a>
53
+ </li>
54
+ </ul>
55
+ </div>
56
+ </div>
57
57
  </nav>
@@ -1,4 +1,4 @@
1
- <div class="header-inner" style="height: 70vh;">
2
- <%- partial('_partials/header/navigation') %>
3
- <%- partial('_partials/header/banner') %>
4
- </div>
1
+ <div class="header-inner" style="height: 70vh;">
2
+ <%- partial('_partials/header/navigation') %>
3
+ <%- partial('_partials/header/banner') %>
4
+ </div>
@@ -1,24 +1,24 @@
1
- <%# import_css(theme.static_prefix.github_markdown, 'github-markdown.min.css') %>
2
- <%# import_css(theme.static_prefix.hint, 'hint.min.css') %>
3
-
4
- <% if (theme.code.highlight.enable) { %>
5
- <%- partial('_partials/plugins/highlight.ejs') %>
6
- <% } %>
7
- <% if ((theme.code.language.enable && theme.code.language.default) || theme.code.copy_btn) { %>
8
- <%- partial('_partials/plugins/code-widget.ejs') %>
9
- <% } %>
10
- <% if (theme.fun_features.anchorjs.enable && page.anchorjs !== false) { %>
11
- <%- partial('_partials/plugins/anchorjs.ejs') %>
12
- <% } %>
13
- <% if (theme.post.image_zoom.enable && page.image_zoom !== false) { %>
14
- <%- partial('_partials/plugins/fancybox.ejs') %>
15
- <% } %>
16
- <% if (theme.post.image_caption.enable) { %>
17
- <% import_script('<script>LNote.plugins.imageCaption();</script>') %>
18
- <% } %>
19
- <% if (theme.post.math.enable && (!theme.post.math.specific || (theme.post.math.specific && page.math))) { %>
20
- <%- partial('_partials/plugins/math.ejs') %>
21
- <% } %>
22
- <% if (theme.post.mermaid.enable && (!theme.post.mermaid.specific || (theme.post.mermaid.specific && page.mermaid))) { %>
23
- <%- partial('_partials/plugins/mermaid.ejs') %>
24
- <% } %>
1
+ <%# import_css(theme.static_prefix.github_markdown, 'github-markdown.min.css') %>
2
+ <%# import_css(theme.static_prefix.hint, 'hint.min.css') %>
3
+
4
+ <% if (theme.code.highlight.enable) { %>
5
+ <%- partial('_partials/plugins/highlight.ejs') %>
6
+ <% } %>
7
+ <% if ((theme.code.language.enable && theme.code.language.default) || theme.code.copy_btn) { %>
8
+ <%- partial('_partials/plugins/code-widget.ejs') %>
9
+ <% } %>
10
+ <% if (theme.fun_features.anchorjs.enable && page.anchorjs !== false) { %>
11
+ <%- partial('_partials/plugins/anchorjs.ejs') %>
12
+ <% } %>
13
+ <% if (theme.post.image_zoom.enable && page.image_zoom !== false) { %>
14
+ <%- partial('_partials/plugins/fancybox.ejs') %>
15
+ <% } %>
16
+ <% if (theme.post.image_caption.enable) { %>
17
+ <% import_script('<script>LNote.plugins.imageCaption();</script>') %>
18
+ <% } %>
19
+ <% if (theme.post.math.enable && (!theme.post.math.specific || (theme.post.math.specific && page.math))) { %>
20
+ <%- partial('_partials/plugins/math.ejs') %>
21
+ <% } %>
22
+ <% if (theme.post.mermaid.enable && (!theme.post.mermaid.specific || (theme.post.mermaid.specific && page.mermaid))) { %>
23
+ <%- partial('_partials/plugins/mermaid.ejs') %>
24
+ <% } %>