hexo-theme-solitude 3.0.10 → 3.0.12

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 (39) hide show
  1. package/_config.yml +45 -57
  2. package/languages/default.yml +14 -15
  3. package/languages/en.yml +22 -24
  4. package/languages/zh-CN.yml +14 -15
  5. package/languages/zh-TW.yml +14 -15
  6. package/layout/includes/head/config.pug +0 -11
  7. package/layout/includes/head/page_config.pug +1 -1
  8. package/layout/includes/inject/body.pug +1 -1
  9. package/layout/includes/layout.pug +0 -4
  10. package/layout/includes/page/brevity.pug +2 -2
  11. package/layout/includes/widgets/page/about/award.pug +1 -1
  12. package/layout/includes/widgets/page/about/skillsinfo.pug +12 -11
  13. package/layout/includes/widgets/page/kit/content.pug +3 -2
  14. package/layout/includes/widgets/page/links/banner.pug +7 -6
  15. package/layout/includes/widgets/post/ai.pug +7 -0
  16. package/layout/includes/widgets/sidebar/artalk.pug +1 -1
  17. package/layout/post.pug +2 -2
  18. package/package.json +6 -6
  19. package/plugins.yml +8 -8
  20. package/scripts/event/cdn.js +83 -60
  21. package/scripts/event/merge_config.js +385 -385
  22. package/scripts/filter/default.js +22 -24
  23. package/scripts/tags/tabs.js +29 -18
  24. package/source/css/_global/index.styl +2 -2
  25. package/source/css/_layout/article-container.styl +1 -1
  26. package/source/css/_layout/other.styl +2 -2
  27. package/source/css/_page/_about/reward.styl +13 -12
  28. package/source/css/_post/index.styl +103 -4
  29. package/source/css/_tags/gallery.styl +1 -0
  30. package/source/css/_tags/tabs.styl +36 -96
  31. package/source/css/index.styl +0 -4
  32. package/source/js/main.js +447 -257
  33. package/source/js/post_ai.js +118 -0
  34. package/source/js/utils.js +0 -6
  35. package/layout/includes/widgets/post/post-ai.pug +0 -12
  36. package/layout/includes/widgets/third-party/tianli-talk.pug +0 -26
  37. package/source/css/_post/postAI.styl +0 -132
  38. package/source/css/third_party/tianli_talk.styl +0 -77
  39. package/source/js/third_party/post_ai.min.js +0 -184
package/plugins.yml CHANGED
@@ -7,12 +7,12 @@ instantsearch:
7
7
  file: dist/instantsearch.production.min.js
8
8
  version: 4.75.7
9
9
  docsearch_css:
10
- name: '@docsearch/css'
10
+ name: "@docsearch/css"
11
11
  other_name: docsearch-css
12
12
  file: dist/style.css
13
13
  version: 3.8.2
14
14
  docsearch_js:
15
- name: '@docsearch/js'
15
+ name: "@docsearch/js"
16
16
  other_name: docsearch-js
17
17
  file: dist/umd/index.js
18
18
  version: 3.8.2
@@ -25,12 +25,12 @@ twikoo:
25
25
  file: dist/twikoo.all.min.js
26
26
  version: 1.6.41
27
27
  waline_js:
28
- name: '@waline/client'
28
+ name: "@waline/client"
29
29
  file: dist/waline.js
30
30
  other_name: waline
31
31
  version: 3.4.3
32
32
  waline_css:
33
- name: '@waline/client'
33
+ name: "@waline/client"
34
34
  file: dist/waline.css
35
35
  version: 3.4.3
36
36
  other_name: waline
@@ -96,7 +96,7 @@ snackbar:
96
96
  file: dist/snackbar.min.js
97
97
  version: 0.1.16
98
98
  fontawesome:
99
- name: '@fortawesome/fontawesome-free'
99
+ name: "@fortawesome/fontawesome-free"
100
100
  file: css/all.min.css
101
101
  version: 6.7.2
102
102
  other_name: font-awesome
@@ -105,12 +105,12 @@ medium_zoom:
105
105
  file: dist/medium-zoom.min.js
106
106
  version: 1.1.0
107
107
  fancyapps_ui:
108
- name: '@fancyapps/ui'
108
+ name: "@fancyapps/ui"
109
109
  file: dist/fancybox/fancybox.umd.js
110
110
  version: 5.0.36
111
111
  other_name: fancyapps-ui
112
112
  fancyapps_css:
113
- name: '@fancyapps/ui'
113
+ name: "@fancyapps/ui"
114
114
  file: dist/fancybox/fancybox.css
115
115
  version: 5.0.36
116
116
  other_name: fancyapps-ui
@@ -125,7 +125,7 @@ chart_js:
125
125
  other_name: Chart.js
126
126
  typeit_js:
127
127
  name: typeit
128
- file: dist/index.umd.min.js
128
+ file: dist/index.umd.js
129
129
  version: 8.8.7
130
130
  other_name: typeit
131
131
  blueimp_md5:
@@ -3,75 +3,98 @@
3
3
  * Merge CDN
4
4
  */
5
5
 
6
- 'use strict';
6
+ "use strict";
7
7
 
8
- const { version } = require('../../package.json');
9
- const path = require('path');
8
+ const { version } = require("../../package.json");
9
+ const path = require("path");
10
10
 
11
- hexo.extend.filter.register('before_generate', () => {
12
- const themeConfig = hexo.theme.config;
13
- const { CDN } = themeConfig;
14
- const name = 'hexo-theme-solitude';
11
+ hexo.extend.filter.register("before_generate", () => {
12
+ const themeConfig = hexo.theme.config;
13
+ const { CDN } = themeConfig;
14
+ const name = "hexo-theme-solitude";
15
15
 
16
- const thirdPartySrc = hexo.render.renderSync({ path: path.join(hexo.theme_dir, '/plugins.yml'), engine: 'yaml' });
17
- const internalSrc = {
18
- main: { name, file: 'js/main.js', version },
19
- utils: { name, file: 'js/utils.js', version },
20
- local_search: { name, file: 'js/search/local.js', version },
21
- algolia_js: { name, file: 'js/search/algolia.js', version },
22
- cover_local: { name, file: 'js/covercolor/local.js', version },
23
- cover_api: { name, file: 'js/covercolor/api.js', version },
24
- cover_ave: { name, file: 'js/covercolor/ave.js', version },
25
- music_js: { name, file: 'js/music.js', version },
26
- right_menu_js: { name, file: 'js/right_menu.js', version },
27
- translate_js: { name, file: 'js/tw_cn.js', version },
28
- post_ai: { name, file: 'js/third_party/post_ai.min.js', version },
29
- commentBarrage: { name, file: 'js/third_party/barrage.min.js', version },
30
- waterfall: { name, file: 'js/third_party/waterfall.min.js', version },
31
- universe_js: { name, file: 'js/third_party/universe.min.js', version },
32
- envelope_js: { name, file: 'js/third_party/envelope.min.js', version }
33
- };
16
+ const thirdPartySrc = hexo.render.renderSync({
17
+ path: path.join(hexo.theme_dir, "/plugins.yml"),
18
+ engine: "yaml",
19
+ });
20
+ const internalSrc = {
21
+ main: { name, file: "js/main.js", version },
22
+ utils: { name, file: "js/utils.js", version },
23
+ local_search: { name, file: "js/search/local.js", version },
24
+ algolia_js: { name, file: "js/search/algolia.js", version },
25
+ cover_local: { name, file: "js/covercolor/local.js", version },
26
+ cover_api: { name, file: "js/covercolor/api.js", version },
27
+ cover_ave: { name, file: "js/covercolor/ave.js", version },
28
+ music_js: { name, file: "js/music.js", version },
29
+ right_menu_js: { name, file: "js/right_menu.js", version },
30
+ translate_js: { name, file: "js/tw_cn.js", version },
31
+ commentBarrage: { name, file: "js/third_party/barrage.min.js", version },
32
+ waterfall: { name, file: "js/third_party/waterfall.min.js", version },
33
+ universe_js: { name, file: "js/third_party/universe.min.js", version },
34
+ post_ai: { name, file: "js/post_ai.js", version },
35
+ envelope_js: { name, file: "js/third_party/envelope.min.js", version },
36
+ };
34
37
 
35
- const minFile = file => file.replace(/(?<!\.min)\.(js|css)$/g, ext => `.min${ext}`);
38
+ const minFile = (file) =>
39
+ file.replace(/(?<!\.min)\.(js|css)$/g, (ext) => `.min${ext}`);
36
40
 
37
- const createCDNLink = (data, type, cond = '') => {
38
- Object.keys(data).forEach(key => {
39
- let { name, version, file, other_name } = data[key];
40
- const cdnjs_name = other_name || name;
41
- const cdnjs_file = file.replace(/^[lib|dist]*\/|browser\//g, '');
42
- const min_cdnjs_file = minFile(cdnjs_file);
43
- if (cond === 'internal') file = `source/${file}`;
44
- const min_file = minFile(file);
45
- const verType = CDN.version ? (type === 'local' ? `?v=${version}` : `@${version}`) : '';
41
+ const createCDNLink = (data, type, cond = "") => {
42
+ Object.keys(data).forEach((key) => {
43
+ let { name, version, file, other_name } = data[key];
44
+ const cdnjs_name = other_name || name;
45
+ const cdnjs_file = file.replace(/^[lib|dist]*\/|browser\//g, "");
46
+ const min_cdnjs_file = minFile(cdnjs_file);
47
+ if (cond === "internal") file = `source/${file}`;
48
+ const min_file = minFile(file);
49
+ const verType = CDN.version
50
+ ? type === "local"
51
+ ? `?v=${version}`
52
+ : `@${version}`
53
+ : "";
46
54
 
47
- const value = { version, name, file, cdnjs_file, min_file, min_cdnjs_file, cdnjs_name };
55
+ const value = {
56
+ version,
57
+ name,
58
+ file,
59
+ cdnjs_file,
60
+ min_file,
61
+ min_cdnjs_file,
62
+ cdnjs_name,
63
+ };
48
64
 
49
- const cdnSource = {
50
- local: cond === 'internal' ? `${cdnjs_file + verType}` : `/pluginsSrc/${name}/${file + verType}`,
51
- jsdelivr: `https://cdn.jsdelivr.net/npm/${name}${verType}/${min_file}`,
52
- unpkg: `https://unpkg.com/${name}${verType}/${file}`,
53
- cdnjs: `https://cdnjs.cloudflare.com/ajax/libs/${cdnjs_name}/${version}/${min_cdnjs_file}`,
54
- custom: (CDN.custom_format || '').replace(/\$\{(.+?)}/g, (match, $1) => value[$1]),
55
- };
65
+ const cdnSource = {
66
+ local:
67
+ cond === "internal"
68
+ ? `${cdnjs_file + verType}`
69
+ : `/pluginsSrc/${name}/${file + verType}`,
70
+ jsdelivr: `https://cdn.jsdelivr.net/npm/${name}${verType}/${min_file}`,
71
+ unpkg: `https://unpkg.com/${name}${verType}/${file}`,
72
+ cdnjs: `https://cdnjs.cloudflare.com/ajax/libs/${cdnjs_name}/${version}/${min_cdnjs_file}`,
73
+ custom: (CDN.custom_format || "").replace(
74
+ /\$\{(.+?)}/g,
75
+ (match, $1) => value[$1]
76
+ ),
77
+ };
56
78
 
57
- data[key] = cdnSource[type];
58
- });
79
+ data[key] = cdnSource[type];
80
+ });
59
81
 
60
- if (cond === 'internal') data.main_css = `css/index.css${CDN.version ? `?v=${version}` : ''}`;
61
- return data;
62
- };
82
+ if (cond === "internal")
83
+ data.main_css = `css/index.css${CDN.version ? `?v=${version}` : ""}`;
84
+ return data;
85
+ };
63
86
 
64
- const deleteNullValue = obj => {
65
- if (!obj) return;
66
- for (const key in obj) {
67
- if (obj[key] === null) delete obj[key];
68
- }
69
- return obj;
70
- };
87
+ const deleteNullValue = (obj) => {
88
+ if (!obj) return;
89
+ for (const key in obj) {
90
+ if (obj[key] === null) delete obj[key];
91
+ }
92
+ return obj;
93
+ };
71
94
 
72
- themeConfig.cdn = Object.assign(
73
- createCDNLink(internalSrc, CDN.internal, 'internal'),
74
- createCDNLink(thirdPartySrc, CDN.third_party),
75
- deleteNullValue(CDN.options)
76
- );
95
+ themeConfig.cdn = Object.assign(
96
+ createCDNLink(internalSrc, CDN.internal, "internal"),
97
+ createCDNLink(thirdPartySrc, CDN.third_party),
98
+ deleteNullValue(CDN.options)
99
+ );
77
100
  });