hexo-theme-solitude 1.4.2 → 1.4.4

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 (77) hide show
  1. package/CONTRIBUTING.md +1 -1
  2. package/README.md +1 -1
  3. package/README_EN.md +1 -1
  4. package/_config.yml +165 -151
  5. package/languages/en-US.yml +31 -2
  6. package/languages/zh-CN.yml +32 -2
  7. package/languages/zh-TW.yml +147 -0
  8. package/layout/includes/footer.pug +2 -5
  9. package/layout/includes/head/config.pug +15 -2
  10. package/layout/includes/inject/body.pug +13 -4
  11. package/layout/includes/inject/head.pug +1 -4
  12. package/layout/includes/layout.pug +4 -0
  13. package/layout/includes/loading.pug +1 -1
  14. package/layout/includes/page/album.pug +4 -22
  15. package/layout/includes/page/gallery.pug +2 -2
  16. package/layout/includes/page/music.pug +1 -4
  17. package/layout/includes/page/says.pug +1 -3
  18. package/layout/includes/widgets/aside/asideInfoCard.pug +1 -1
  19. package/layout/includes/widgets/home/bb/json.pug +3 -2
  20. package/layout/includes/widgets/home/bb/local.pug +2 -3
  21. package/layout/includes/widgets/home/bb/memos.pug +4 -2
  22. package/layout/includes/widgets/page/about/authorinfo.pug +1 -1
  23. package/layout/includes/widgets/page/about/award.pug +6 -3
  24. package/layout/includes/widgets/page/about/hobbies.pug +2 -2
  25. package/layout/includes/widgets/page/about/motto.pug +17 -15
  26. package/layout/includes/widgets/page/about/skillsinfo.pug +38 -36
  27. package/layout/includes/widgets/page/about/tenyear.pug +1 -1
  28. package/layout/includes/widgets/page/says/json.pug +13 -9
  29. package/layout/includes/widgets/page/says/local.pug +1 -1
  30. package/layout/includes/widgets/page/says/memos.pug +10 -6
  31. package/layout/includes/widgets/rightside/index.pug +33 -22
  32. package/package.json +1 -1
  33. package/plugins.yml +7 -3
  34. package/scripts/event/cdn.js +5 -1
  35. package/scripts/event/init.js +18 -19
  36. package/scripts/event/page.js +0 -5
  37. package/scripts/filter/checkThemeConfig.js +23 -7
  38. package/scripts/filter/lazyload.js +2 -3
  39. package/scripts/generator/gallery.js +47 -0
  40. package/scripts/helper/related_post.js +0 -6
  41. package/scripts/helper/stylus.js +8 -3
  42. package/source/css/_layout/basic.styl +0 -3
  43. package/source/css/_layout/index.styl +54 -34
  44. package/source/css/_page/_about/index.styl +49 -0
  45. package/source/css/_page/{about → _about}/reward.styl +7 -0
  46. package/source/css/_page/{gallery → _gallery}/index.styl +16 -8
  47. package/source/css/_page/_home/home-top.styl +125 -302
  48. package/source/css/_page/_home/index.styl +9 -4
  49. package/source/css/_page/_home/recent-post.styl +1 -0
  50. package/source/css/_page/index.styl +3 -152
  51. package/source/css/_page/share.styl +318 -0
  52. package/source/css/_widgets/_aside/info.styl +3 -0
  53. package/source/css/_widgets/_comment/twikoo.styl +1 -1
  54. package/source/img/loading.gif +0 -0
  55. package/source/js/covercolor/local.js +11 -11
  56. package/source/js/main.js +63 -55
  57. package/source/js/rightside.js +159 -342
  58. package/source/js/search/algolia.js +1 -3
  59. package/source/js/search/local.js +1 -3
  60. package/source/js/tw_cn.js +76 -0
  61. package/source/js/utils.js +8 -27
  62. package/layout/includes/page/not_configured.pug +0 -18
  63. package/scripts/helper/cdn.js +0 -12
  64. package/source/css/_page/about/index.styl +0 -39
  65. /package/source/css/_page/{about → _about}/author.styl +0 -0
  66. /package/source/css/_page/{about → _about}/buff.styl +0 -0
  67. /package/source/css/_page/{about → _about}/careers.styl +0 -0
  68. /package/source/css/_page/{about → _about}/contentinfo.styl +0 -0
  69. /package/source/css/_page/{about → _about}/game.styl +0 -0
  70. /package/source/css/_page/{about → _about}/like.styl +0 -0
  71. /package/source/css/_page/{about → _about}/maxim.styl +0 -0
  72. /package/source/css/_page/{about → _about}/myphoto.styl +0 -0
  73. /package/source/css/_page/{about → _about}/oneself.styl +0 -0
  74. /package/source/css/_page/{about → _about}/personalities.styl +0 -0
  75. /package/source/css/_page/{about → _about}/skills.styl +0 -0
  76. /package/source/css/_page/{about → _about}/statistic.styl +0 -0
  77. /package/source/css/_page/{about → _about}/tenyear.styl +0 -0
@@ -1,64 +1,36 @@
1
1
  let rm = {};
2
-
2
+ const addEvent = (element, event, callback) => element.addEventListener(event, callback);
3
3
  rm.stopdragimg = Array.from(document.getElementsByTagName('img'));
4
- rm.stopdragimg.forEach(function (img) {
5
- img.addEventListener('dragstart', function () {
6
- return false;
7
- });
8
- });
9
-
4
+ rm.stopdragimg.forEach(img => addEvent(img, 'dragstart', () => false));
10
5
  rm.showRightMenu = function (e, n = 0, t = 0) {
11
6
  let o = document.getElementById('rightMenu');
12
7
  o.style.top = n + 'px';
13
8
  o.style.left = t + 'px';
14
-
15
- if (e) {
16
- o.style.display = 'block';
17
- stopMaskScroll();
18
- } else {
19
- o.style.display = 'none';
20
- }
21
- };
22
-
23
- rm.hideRightMenu = function () {
24
- rm.showRightMenu(false);
25
- document.getElementById('rightmenu-mask').style.display = 'none';
9
+ o.style.display = e ? 'block' : 'none';
10
+ e ? stopMaskScroll() : document.getElementById('rightmenu-mask').style.display = 'none';
26
11
  };
27
-
28
- document.querySelector("#rightMenu").style.display = "block"
29
- rmWidth = document.querySelector("#rightMenu").offsetWidth;
30
- rmHeight = document.querySelector("#rightMenu").offsetHeight;
31
- document.querySelector("#rightMenu").style.display = 'none'
32
-
33
12
  rm.reloadrmSize = function () {
34
- document.querySelector("#rightMenu").style.display = "block"
35
- rmWidth = document.querySelector("#rightMenu").offsetWidth;
36
- rmHeight = document.querySelector("#rightMenu").offsetHeight;
37
- document.querySelector("#rightMenu").style.display = 'none'
38
- }
39
-
40
- let domhref = "", domImgSrc = "", globalEvent = null;
41
-
42
- function imageToBlob(e) {
43
- const n = new Image
44
- , t = document.createElement("canvas")
45
- , o = t.getContext("2d");
46
- return n.crossOrigin = "",
47
- n.src = e,
48
- new Promise((e => {
49
- n.onload = function () {
50
- t.width = this.naturalWidth,
51
- t.height = this.naturalHeight,
52
- o.drawImage(this, 0, 0),
53
- t.toBlob((n => {
54
- e(n)
55
- }
56
- ), "image/png", .75)
57
- }
58
- }
59
- ))
13
+ let menu = document.querySelector("#rightMenu");
14
+ menu.style.display = "block";
15
+ rmWidth = menu.offsetWidth;
16
+ rmHeight = menu.offsetHeight;
17
+ menu.style.display = 'none';
18
+ }
19
+ async function imageToBlob(e) {
20
+ const n = new Image();
21
+ const t = document.createElement("canvas");
22
+ const o = t.getContext("2d");
23
+ n.crossOrigin = "";
24
+ n.src = e;
25
+ return new Promise((resolve => {
26
+ n.onload = function () {
27
+ t.width = this.naturalWidth;
28
+ t.height = this.naturalHeight;
29
+ o.drawImage(this, 0, 0);
30
+ t.toBlob((blob => resolve(blob)), "image/png", .75);
31
+ };
32
+ }));
60
33
  }
61
-
62
34
  async function copyImage(e) {
63
35
  try {
64
36
  const n = await imageToBlob(e);
@@ -70,286 +42,31 @@ async function copyImage(e) {
70
42
  console.error('Failed to copy image: ', error);
71
43
  }
72
44
  }
73
-
74
45
  function stopMaskScroll() {
75
- if (document.getElementById("rightmenu-mask")) {
76
- document.getElementById("rightmenu-mask").addEventListener("mousewheel", (function (e) {
77
- rm.hideRightMenu()
78
- }
79
- ), !1)
80
- }
81
- if (document.getElementById("rightMenu")) {
82
- document.getElementById("rightMenu").addEventListener("mousewheel", (function (e) {
83
- rm.hideRightMenu()
84
- }
85
- ), !1)
86
- }
87
- }
88
-
89
- window.oncontextmenu = function (e) {
90
- if (document.body.clientWidth > 768) {
91
- let n = e.clientX + 10;
92
- let t = e.clientY;
93
- let o = document.getElementsByClassName('rightMenuOther');
94
- let i = document.getElementsByClassName('rightMenuPlugin');
95
- let c = document.getElementById('menu-copytext');
96
- let r = document.getElementById('menu-pastetext');
97
- let m = document.getElementById('menu-commenttext');
98
- let a = document.getElementById('menu-newwindow');
99
- let u = document.getElementById('menu-copylink');
100
- let l = document.getElementById('menu-copyimg');
101
- let h = document.getElementById('menu-downloadimg');
102
- let d = document.getElementById('menu-search');
103
- let s = document.getElementById('menu-searchBaidu');
104
- let g = document.getElementById('menu-music-toggle');
105
- let w = document.getElementById('menu-music-back');
106
- let f = document.getElementById('menu-music-forward');
107
- let p = document.getElementById('menu-music-playlist');
108
- let k = document.getElementById('menu-music-copyMusicName');
109
- let y = e.target.href;
110
- let M = e.target.currentSrc;
111
- let b = false;
112
-
113
- for (let j = 0; j < o.length; j++) {
114
- o[j].style.display = 'block';
115
- }
116
- globalEvent = e;
117
-
118
- if (selectTextNow && window.getSelection()) {
119
- b = true;
120
- c.style.display = 'block';
121
- m.style.display = 'block';
122
- d.style.display = 'block';
123
- s.style.display = 'block';
124
- } else {
125
- c.style.display = 'none';
126
- m.style.display = 'none';
127
- s.style.display = 'none';
128
- d.style.display = 'none';
129
- }
130
-
131
- if (y) {
132
- b = true;
133
- a.style.display = 'block';
134
- u.style.display = 'block';
135
- domhref = y;
136
- } else {
137
- a.style.display = 'none';
138
- u.style.display = 'none';
139
- }
140
-
141
- if (M) {
142
- b = true;
143
- l.style.display = 'block';
144
- h.style.display = 'block';
145
- domImgSrc = M;
146
- } else {
147
- l.style.display = 'none';
148
- h.style.display = 'none';
149
- }
150
-
151
- if (e.target.tagName.toLowerCase() === 'input' || e.target.tagName.toLowerCase() === 'textarea') {
152
- b = true;
153
- r.style.display = 'block';
154
- } else {
155
- r.style.display = 'none';
156
- }
157
-
158
- if (e.target.nodeName === 'METING-JS') {
159
- b = true;
160
- g.style.display = 'block';
161
- w.style.display = 'block';
162
- f.style.display = 'block';
163
- p.style.display = 'block';
164
- k.style.display = 'block';
165
- } else {
166
- g.style.display = 'none';
167
- w.style.display = 'none';
168
- f.style.display = 'none';
169
- p.style.display = 'none';
170
- k.style.display = 'none';
171
- }
172
-
173
- if (b) {
174
- for (let j = 0; j < o.length; j++) {
175
- o[j].style.display = 'none';
176
- }
177
- for (let j = 0; j < i.length; j++) {
178
- i[j].style.display = 'block';
179
- }
180
- } else {
181
- for (let j = 0; j < i.length; j++) {
182
- i[j].style.display = 'none';
183
- }
184
- }
185
-
186
- rm.reloadrmSize();
187
- if (n + rmWidth > window.innerWidth) {
188
- n -= rmWidth + 10;
189
- }
190
-
191
- if (t + rmHeight > window.innerHeight) {
192
- t -= t + rmHeight - window.innerHeight;
193
- }
194
- rm.showRightMenu(true, t, n);
195
- document.getElementById('rightmenu-mask').style.display = 'flex';
196
-
197
- return false;
198
- }
199
- };
200
- rm.downloadimging = !1
201
- rm.writeClipImg = function (e) {
202
- const n = "localhost" === window.location.hostname || "127.0.0.1" === window.location.hostname ? 0 : 1e4;
203
- rm.hideRightMenu();
204
- utils.snackbarShow("正在下载中,请稍后", !1, n);
205
- if (0 == rm.downloadimging) {
206
- rm.downloadimging = !0;
46
+ addEvent(document.getElementById("rightmenu-mask"), "mousewheel", rm.hideRightMenu);
47
+ addEvent(document.getElementById("rightMenu"), "mousewheel", rm.hideRightMenu);
48
+ }
49
+ rm.downloadimging = false;
50
+ rm.writeClipImg = async function (e) {
51
+ if (!rm.downloadimging) {
52
+ rm.downloadimging = true;
53
+ utils.snackbarShow("正在下载中,请稍后", false, 10000);
54
+ rm.hideRightMenu();
207
55
  setTimeout(async function () {
208
56
  await copyImage(e);
209
57
  utils.snackbarShow("复制成功!图片已添加盲水印,请遵守版权协议");
210
- rm.downloadimging = !1;
58
+ rm.downloadimging = false;
211
59
  }, 1000);
212
60
  }
213
- }
214
-
215
- rm.switchDarkMode = function () {
216
- sco.switchDarkMode()
217
- rm.hideRightMenu()
218
- }
219
-
61
+ };
220
62
  rm.copyUrl = function (e) {
221
- var n = e;
222
- var t = document.createElement('input');
223
- t.id = 'copyVal';
63
+ const t = document.createElement('input');
64
+ t.value = e;
224
65
  document.body.appendChild(t);
225
- t.value = n;
226
66
  t.select();
227
- t.setSelectionRange(0, t.value.length);
228
67
  document.execCommand('copy');
229
68
  document.body.removeChild(t);
230
- }
231
-
232
- rm.rightmenuCopyText = function (e) {
233
- navigator.clipboard && navigator.clipboard.writeText(e),
234
- utils.snackbarShow("复制文本成功", !1, 2e3),
235
- rm.hideRightMenu()
236
- }
237
-
238
- rm.copyPageUrl = function () {
239
- var e = window.location.href;
240
- rm.copyUrl(e),
241
- utils.snackbarShow("复制本页链接地址成功", !1, 2e3),
242
- rm.hideRightMenu()
243
- }
244
-
245
- rm.sharePage = function () {
246
- window;
247
- rm.copyUrl(url),
248
- utils.snackbarShow("复制本页链接地址成功", !1, 2e3),
249
- rm.hideRightMenu()
250
- }
251
-
252
- var selectTextNow = "";
253
-
254
- function selceText() {
255
- var e;
256
- e = document.selection ? document.selection.createRange().text : window.getSelection() + "",
257
- selectTextNow = e || ""
258
- }
259
-
260
- function replaceAll(e, n, t) {
261
- return e.split(n).join(t)
262
- }
263
-
264
- function addRightMenuClickEvent() {
265
- document.getElementById('menu-backward').addEventListener('click', function () {
266
- window.history.back();
267
- rm.hideRightMenu();
268
- });
269
-
270
- document.getElementById('menu-forward').addEventListener('click', function () {
271
- window.history.forward();
272
- rm.hideRightMenu();
273
- });
274
-
275
- document.getElementById('menu-refresh').addEventListener('click', function () {
276
- window.location.reload();
277
- });
278
-
279
- document.getElementById('menu-top').addEventListener('click', function () {
280
- utils.scrollToDest(0, 500);
281
- rm.hideRightMenu();
282
- });
283
-
284
- Array.from(document.getElementsByClassName('menu-link')).forEach(function (element) {
285
- element.addEventListener('click', rm.hideRightMenu);
286
- });
287
-
288
- var menuDarkmode = document.getElementById('menu-darkmode');
289
- menuDarkmode.onclick = null;
290
- menuDarkmode.addEventListener('click', rm.switchDarkMode);
291
-
292
- document.getElementById('menu-randomPost').addEventListener('click', function () {
293
- toRandomPost();
294
- });
295
-
296
- if (GLOBAL_CONFIG.comment.commentBarrage) {
297
- const menuCommentBarrage = document.getElementById('menu-commentBarrage');
298
- menuCommentBarrage.onclick = null;
299
- menuCommentBarrage.addEventListener('click', sco.switchCommentBarrage);
300
- }
301
-
302
- var rightmenuMask = document.getElementById('rightmenu-mask');
303
- rightmenuMask.addEventListener('click', rm.hideRightMenu);
304
- rightmenuMask.addEventListener('contextmenu', function () {
305
- rm.hideRightMenu();
306
- return false;
307
- });
308
-
309
- document.getElementById('menu-copy').addEventListener('click', rm.copyPageUrl);
310
- document.getElementById('menu-pastetext').addEventListener('click', rm.pasteText);
311
-
312
- document.getElementById('menu-copytext').addEventListener('click', function () {
313
- rm.rightmenuCopyText(selectTextNow);
314
- utils.snackbarShow("复制成功,复制和转载请标注本文地址");
315
- });
316
-
317
- document.getElementById('menu-commenttext').addEventListener('click', function () {
318
- rm.rightMenuCommentText(selectTextNow);
319
- });
320
-
321
- document.getElementById('menu-newwindow').addEventListener('click', function () {
322
- window.open(domhref);
323
- rm.hideRightMenu();
324
- });
325
-
326
- document.getElementById('menu-copylink').addEventListener('click', rm.copyLink);
327
-
328
- document.getElementById('menu-downloadimg').addEventListener('click', function () {
329
- sco.downloadImage(domImgSrc);
330
- });
331
-
332
- document.getElementById('menu-copyimg').addEventListener('click', function () {
333
- rm.writeClipImg(domImgSrc);
334
- });
335
-
336
- document.getElementById('menu-searchBaidu').addEventListener('click', rm.searchBaidu);
337
-
338
- document.getElementById('menu-music-toggle').addEventListener('click', sco.musicToggle);
339
- document.getElementById('menu-music-back').addEventListener('click', sco.musicSkipBack);
340
- document.getElementById('menu-music-forward').addEventListener('click', sco.musicSkipForward);
341
-
342
- document.getElementById('menu-music-copyMusicName').addEventListener('click', function () {
343
- rm.rightmenuCopyText(sco.musicGetName());
344
- utils.snackbarShow("复制歌曲名称成功", false, 3000);
345
- });
346
- }
347
-
348
- document.onmouseup = document.ondbclick = selceText
349
- rm.readClipboard = function () {
350
- navigator.clipboard && navigator.clipboard.readText().then((e => rm.insertAtCaret(globalEvent.target, e)))
351
- }
352
-
69
+ };
353
70
  rm.insertAtCaret = function (e, n) {
354
71
  const t = e.selectionStart
355
72
  , o = e.selectionEnd;
@@ -357,8 +74,8 @@ rm.insertAtCaret = function (e, n) {
357
74
  e.focus(),
358
75
  document.selection.createRange().text = n,
359
76
  e.focus();
360
- else if (t || "0" == t) {
361
- var i = e.scrollTop;
77
+ else if (t || "0" === t) {
78
+ let i = e.scrollTop;
362
79
  e.value = e.value.substring(0, t) + n + e.value.substring(o, e.value.length),
363
80
  e.focus(),
364
81
  e.selectionStart = t + n.length,
@@ -368,15 +85,9 @@ rm.insertAtCaret = function (e, n) {
368
85
  e.value += n,
369
86
  e.focus()
370
87
  }
371
-
372
- rm.pasteText = function () {
373
- rm.readClipboard();
374
- rm.hideRightMenu()
375
- }
376
-
377
88
  rm.rightMenuCommentText = function (e) {
378
89
  rm.hideRightMenu();
379
- var n = document.getElementsByClassName("el-textarea__inner")[0];
90
+ let n = document.getElementsByClassName("el-textarea__inner")[0];
380
91
  let t = document.createEvent("HTMLEvents");
381
92
  t.initEvent("input", !0, !0);
382
93
  let o = replaceAll(e, "\n", "\n> ");
@@ -388,17 +99,123 @@ rm.rightMenuCommentText = function (e) {
388
99
  n.setSelectionRange(-1, -1),
389
100
  document.getElementById("comment-tips") && document.getElementById("comment-tips").classList.add("show")
390
101
  }
391
-
392
- rm.searchBaidu = function () {
393
- utils.snackbarShow("即将跳转到百度搜索", !1, 2e3);
394
- setTimeout((function () {
395
- window.open("https://www.baidu.com/s?wd=" + selectTextNow)
102
+ rm.hideRightMenu = () => rm.showRightMenu(false) || (document.getElementById('rightmenu-mask').style.display = 'none')
103
+ document.querySelector("#rightMenu").style.display = "block"
104
+ rmWidth = document.querySelector("#rightMenu").offsetWidth;
105
+ rmHeight = document.querySelector("#rightMenu").offsetHeight;
106
+ document.querySelector("#rightMenu").style.display = 'none'
107
+ let domhref = "", domImgSrc = "", globalEvent = null;
108
+ rm.switchDarkMode = () => sco.switchDarkMode() || rm.hideRightMenu()
109
+ rm.rightmenuCopyText = (e) => navigator.clipboard && navigator.clipboard.writeText(e) || utils.snackbarShow("复制文本成功", !1, 2e3) || rm.hideRightMenu()
110
+ rm.copyPageUrl = () => rm.copyUrl(window.location.href) || utils.snackbarShow("复制本页链接地址成功", !1, 2e3) || rm.hideRightMenu()
111
+ rm.sharePage = () => rm.copyUrl(url) || utils.snackbarShow("复制本页链接地址成功", !1, 2e3) || rm.hideRightMenu()
112
+ var selectTextNow = "";
113
+ let selceText = () => selectTextNow = document.selection ? document.selection.createRange().text : window.getSelection() + "" || ""
114
+ let replaceAll = (e, n, t) => e.split(n).join(t);
115
+ document.onmouseup = document.ondbclick = selceText
116
+ rm.readClipboard = () => navigator.clipboard && navigator.clipboard.readText().then((e => rm.insertAtCaret(globalEvent.target, e)))
117
+ rm.pasteText = () => rm.readClipboard() || rm.hideRightMenu()
118
+ rm.copyLink = () => rm.rightmenuCopyText(domhref) || utils.snackbarShow("已复制链接地址")
119
+ window.oncontextmenu = function (e) {
120
+ if (document.body.clientWidth <= 768) return;
121
+ let n = e.clientX + 10;
122
+ let t = e.clientY;
123
+ let menuItems = {
124
+ other: document.getElementsByClassName('rightMenuOther'),
125
+ plugin: document.getElementsByClassName('rightMenuPlugin'),
126
+ copytext: document.getElementById('menu-copytext'),
127
+ pastetext: document.getElementById('menu-pastetext'),
128
+ commenttext: document.getElementById('menu-commenttext'),
129
+ newwindow: document.getElementById('menu-newwindow'),
130
+ copylink: document.getElementById('menu-copylink'),
131
+ copyimg: document.getElementById('menu-copyimg'),
132
+ downloadimg: document.getElementById('menu-downloadimg'),
133
+ search: document.getElementById('menu-search'),
134
+ music: {
135
+ toggle: document.getElementById('menu-music-toggle'),
136
+ back: document.getElementById('menu-music-back'),
137
+ forward: document.getElementById('menu-music-forward'),
138
+ playlist: document.getElementById('menu-music-playlist'),
139
+ copyMusicName: document.getElementById('menu-music-copyMusicName'),
396
140
  }
397
- ), 2000);
398
- rm.hideRightMenu()
399
- }
400
-
401
- rm.copyLink = function () {
402
- rm.rightmenuCopyText(domhref)
403
- utils.snackbarShow("已复制链接地址")
141
+ };
142
+ let y = e.target.href;
143
+ let M = e.target.currentSrc;
144
+ let b = false;
145
+ Array.from(menuItems.other).forEach(item => item.style.display = 'block');
146
+ globalEvent = e;
147
+ if (selectTextNow && window.getSelection()) {
148
+ b = true;
149
+ menuItems.copytext.style.display = 'block';
150
+ menuItems.commenttext.style.display = 'block';
151
+ menuItems.search.style.display = 'block';
152
+ } else {
153
+ menuItems.copytext.style.display = 'none';
154
+ menuItems.commenttext.style.display = 'none';
155
+ menuItems.search.style.display = 'none';
156
+ }
157
+ if (y) {
158
+ b = true;
159
+ menuItems.newwindow.style.display = 'block';
160
+ menuItems.copylink.style.display = 'block';
161
+ domhref = y;
162
+ } else {
163
+ menuItems.newwindow.style.display = 'none';
164
+ menuItems.copylink.style.display = 'none';
165
+ }
166
+ if (M) {
167
+ b = true;
168
+ menuItems.copyimg.style.display = 'block';
169
+ menuItems.downloadimg.style.display = 'block';
170
+ domImgSrc = M;
171
+ } else {
172
+ menuItems.copyimg.style.display = 'none';
173
+ menuItems.downloadimg.style.display = 'none';
174
+ }
175
+ let tagName = e.target.tagName.toLowerCase();
176
+ if (tagName === 'input' || tagName === 'textarea') {
177
+ b = true;
178
+ menuItems.pastetext.style.display = 'block';
179
+ } else {
180
+ menuItems.pastetext.style.display = 'none';
181
+ }
182
+ if (e.target.nodeName === 'METING-JS') {
183
+ b = true;
184
+ Object.values(menuItems.music).forEach(item => item.style.display = 'block');
185
+ } else {
186
+ Object.values(menuItems.music).forEach(item => item.style.display = 'none');
187
+ }
188
+ Array.from(b ? menuItems.other : menuItems.plugin).forEach(item => item.style.display = 'none');
189
+ Array.from(b ? menuItems.plugin : menuItems.other).forEach(item => item.style.display = 'block');
190
+ rm.reloadrmSize();
191
+ n + rmWidth > window.innerWidth && (n -= rmWidth + 10);
192
+ t + rmHeight > window.innerHeight && (t -= t + rmHeight - window.innerHeight)
193
+ rm.showRightMenu(true, t, n);
194
+ document.getElementById('rightmenu-mask').style.display = 'flex';
195
+ return false;
196
+ };
197
+ function addRightMenuClickEvent() {
198
+ const addEvent = (id, event, callback) => document.getElementById(id)?.addEventListener(event, callback)
199
+ addEvent('menu-backward', 'click', () => window.history.back() || rm.hideRightMenu())
200
+ addEvent('menu-forward', 'click', () => window.history.forward() || rm.hideRightMenu())
201
+ addEvent('menu-refresh', 'click', () => window.location.reload());
202
+ addEvent('menu-top', 'click', () => utils.scrollToDest(0, 500) || rm.hideRightMenu())
203
+ Array.from(document.getElementsByClassName('menu-link')).forEach(element => element.addEventListener('click', rm.hideRightMenu))
204
+ addEvent('menu-darkmode', 'click', rm.switchDarkMode);
205
+ addEvent('menu-randomPost', 'click', () => toRandomPost() || rm.hideRightMenu());
206
+ GLOBAL_CONFIG.comment.commentBarrage && addEvent('menu-commentBarrage', 'click', sco.switchCommentBarrage);
207
+ addEvent('rightmenu-mask', 'click', rm.hideRightMenu);
208
+ addEvent('rightmenu-mask', 'contextmenu', () => rm.hideRightMenu() || false)
209
+ addEvent('menu-copy', 'click', rm.copyPageUrl);
210
+ addEvent('menu-pastetext', 'click', rm.pasteText);
211
+ addEvent('menu-copytext', 'click', () => rm.rightmenuCopyText(selectTextNow) || utils.snackbarShow("复制成功,复制和转载请标注本文地址") || rm.hideRightMenu())
212
+ GLOBAL_CONFIG.comment.enable && addEvent('menu-commenttext', 'click', () => rm.rightMenuCommentText(selectTextNow))
213
+ addEvent('menu-newwindow', 'click', () => window.open(domhref) || rm.hideRightMenu());
214
+ addEvent('menu-copylink', 'click', rm.copyLink);
215
+ addEvent('menu-downloadimg', 'click', () => sco.downloadImage(domImgSrc));
216
+ addEvent('menu-copyimg', 'click', () => rm.writeClipImg(domImgSrc));
217
+ addEvent('menu-music-toggle', 'click', sco.musicToggle);
218
+ addEvent('menu-music-back', 'click', sco.musicSkipBack);
219
+ addEvent('menu-music-forward', 'click', sco.musicSkipForward);
220
+ addEvent('menu-music-copyMusicName', 'click', () => rm.rightmenuCopyText(sco.musicGetName()) || utils.snackbarShow("复制歌曲名称成功", false, 3000))
404
221
  }
@@ -1,10 +1,8 @@
1
- let openSearch
2
-
3
1
  window.addEventListener("load", () => {
4
2
  const $searchMask = document.getElementById("search-mask");
5
3
  const $searchDialog = document.querySelector("#algolia-search .search-dialog");
6
4
 
7
- openSearch = () => {
5
+ window.openSearch = () => {
8
6
  utils.animateIn($searchMask, "to_show 0.5s");
9
7
  $searchDialog.style.display = "block";
10
8
  setTimeout(() => {
@@ -1,10 +1,8 @@
1
- let openSearch
2
-
3
1
  window.onload = () => {
4
2
  let idx, store = [];
5
3
  const $searchMask = document.getElementById("search-mask");
6
4
  const $searchDialog = document.querySelector("#local-search .search-dialog");
7
- openSearch = () => {
5
+ window.openSearch = () => {
8
6
  utils.animateIn($searchMask, "to_show 0.5s");
9
7
  $searchDialog.style.display = "block";
10
8
  setTimeout(() => {