hexo-theme-volantis 4.3.1 → 5.0.0-rc.3

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 (862) hide show
  1. package/_config.yml +461 -177
  2. package/languages/en.yml +7 -0
  3. package/languages/zh-CN.yml +13 -2
  4. package/languages/zh-TW.yml +7 -0
  5. package/layout/404.ejs +1 -1
  6. package/layout/_meta/author.ejs +4 -4
  7. package/layout/_meta/category.ejs +11 -8
  8. package/layout/_meta/counter.ejs +7 -4
  9. package/layout/_meta/date.ejs +1 -1
  10. package/layout/_meta/music.ejs +1 -1
  11. package/layout/_meta/share.ejs +1 -1
  12. package/layout/_meta/tags.ejs +3 -0
  13. package/layout/_meta/thumbnail.ejs +3 -1
  14. package/layout/_meta/updated.ejs +1 -1
  15. package/layout/{_cover → _partial/_cover}/blank.ejs +0 -0
  16. package/layout/{_cover → _partial/_cover}/dock.ejs +1 -1
  17. package/layout/{_cover → _partial/_cover}/featured.ejs +1 -1
  18. package/layout/{_cover → _partial/_cover}/focus.ejs +1 -1
  19. package/layout/_partial/_cover/layout.ejs +8 -0
  20. package/layout/{_cover → _partial/_cover}/search.ejs +2 -2
  21. package/layout/_partial/archive.ejs +2 -2
  22. package/layout/_partial/article.ejs +21 -16
  23. package/layout/_partial/categories.ejs +1 -1
  24. package/layout/_partial/cover.ejs +8 -28
  25. package/layout/_partial/footer.ejs +19 -11
  26. package/layout/_partial/head.ejs +62 -111
  27. package/layout/_partial/header.ejs +17 -11
  28. package/layout/_partial/meta.ejs +18 -4
  29. package/layout/_partial/post.ejs +35 -9
  30. package/layout/_partial/scripts/_ctrl/cdnCtrl.ejs +113 -0
  31. package/layout/_partial/scripts/{coverCtrl.ejs → _ctrl/coverCtrl.ejs} +17 -25
  32. package/layout/_partial/scripts/_ctrl.ejs +2 -0
  33. package/layout/_partial/scripts/content-visibility-scroll-fix.ejs +86 -0
  34. package/layout/_partial/scripts/global.ejs +386 -108
  35. package/layout/_partial/scripts/index.ejs +68 -40
  36. package/layout/_partial/scripts/toc.ejs +74 -67
  37. package/layout/_partial/side.ejs +4 -1
  38. package/layout/_plugins/_page_plugins/artitalk/index.ejs +15 -0
  39. package/layout/_plugins/_page_plugins/bbtalk/index.ejs +10 -0
  40. package/layout/_plugins/_page_plugins/fcircle/index.ejs +226 -0
  41. package/layout/_plugins/_page_plugins/gitter/index.ejs +14 -0
  42. package/layout/_plugins/_page_plugins/hpptalk/index.ejs +14 -0
  43. package/layout/_plugins/_page_plugins/indent/index.ejs +16 -0
  44. package/layout/_plugins/_page_plugins/index.ejs +7 -0
  45. package/layout/_plugins/_page_plugins/katex/index.ejs +13 -0
  46. package/layout/{_third-party/math/mathjax/script.ejs → _plugins/_page_plugins/mathjax/index.ejs} +2 -2
  47. package/layout/_plugins/_page_plugins/snackbar/index.ejs +55 -0
  48. package/layout/{_partial/scripts/counter.ejs → _plugins/analytics/LCCounter.ejs} +0 -0
  49. package/layout/{_third-party → _plugins}/analytics/script.ejs +33 -5
  50. package/layout/{_third-party → _plugins}/aplayer/layout.ejs +0 -0
  51. package/layout/_plugins/aplayer/script.ejs +74 -0
  52. package/layout/_plugins/chat/gitter/script.ejs +17 -0
  53. package/layout/_plugins/chat/index.ejs +1 -0
  54. package/layout/_plugins/chat/tidio/script.ejs +1 -0
  55. package/layout/_plugins/comments/artalk/script.ejs +53 -0
  56. package/layout/_plugins/comments/beaudar/script.ejs +61 -0
  57. package/layout/_plugins/comments/disqus/script.ejs +98 -0
  58. package/layout/_plugins/comments/disqusjs/script.ejs +35 -0
  59. package/layout/_plugins/comments/giscus/script.ejs +47 -0
  60. package/layout/_plugins/comments/gitalk/script.ejs +24 -0
  61. package/layout/_plugins/comments/hashover/script.ejs +5 -0
  62. package/layout/{_third-party → _plugins}/comments/index.ejs +9 -2
  63. package/layout/_plugins/comments/isso/script.ejs +27 -0
  64. package/layout/_plugins/comments/livere/script.ejs +15 -0
  65. package/layout/_plugins/comments/minivaline/script.ejs +45 -0
  66. package/layout/_plugins/comments/twikoo/script.ejs +40 -0
  67. package/layout/_plugins/comments/utterances/script.ejs +43 -0
  68. package/layout/{_third-party → _plugins}/comments/valine/script.ejs +17 -13
  69. package/layout/_plugins/comments/vssue/script.ejs +37 -0
  70. package/layout/_plugins/comments/waline/script.ejs +44 -0
  71. package/layout/_plugins/comments/z-custom/script.ejs +1 -0
  72. package/layout/_plugins/darkmode/script.ejs +114 -0
  73. package/layout/{_third-party → _plugins}/end-of-support/script.ejs +25 -8
  74. package/layout/_plugins/github-api/script.ejs +27 -0
  75. package/layout/_plugins/highlight/highlightjs/script.ejs +26 -0
  76. package/layout/_plugins/highlight/prismjs/script.ejs +25 -0
  77. package/layout/_plugins/highlight/script.ejs +1 -0
  78. package/layout/{_third-party → _plugins}/lazyload/script.ejs +1 -1
  79. package/layout/{_third-party → _plugins}/nodewaves/script.ejs +1 -1
  80. package/layout/_plugins/parallax/script.ejs +70 -0
  81. package/layout/{_third-party → _plugins}/pjax/animate.ejs +31 -31
  82. package/layout/_plugins/pjax/index.ejs +74 -0
  83. package/layout/_plugins/pjax/pdata.ejs +57 -0
  84. package/layout/{_third-party → _plugins}/preload/script.ejs +3 -3
  85. package/layout/_plugins/rightmenu/layout.ejs +119 -0
  86. package/layout/_plugins/scrollreveal/script.ejs +25 -0
  87. package/layout/_plugins/search/script.ejs +43 -0
  88. package/layout/{_third-party → _plugins}/share/layout.ejs +0 -0
  89. package/layout/_plugins/swiper/script.ejs +37 -0
  90. package/layout/_pre.ejs +2 -2
  91. package/layout/_widget/_pre.ejs +5 -0
  92. package/layout/_widget/blogger.ejs +1 -1
  93. package/layout/_widget/category.ejs +2 -2
  94. package/layout/_widget/copyright.ejs +1 -1
  95. package/layout/_widget/grid.ejs +3 -3
  96. package/layout/_widget/lastupdate.ejs +27 -0
  97. package/layout/_widget/list.ejs +2 -2
  98. package/layout/_widget/load.ejs +18 -0
  99. package/layout/_widget/music.ejs +3 -2
  100. package/layout/_widget/page.ejs +1 -1
  101. package/layout/_widget/qrcode.ejs +1 -1
  102. package/layout/_widget/related_posts.ejs +1 -1
  103. package/layout/_widget/tagcloud.ejs +1 -1
  104. package/layout/_widget/text.ejs +1 -1
  105. package/layout/_widget/toc.ejs +6 -2
  106. package/layout/_widget/webinfo.ejs +7 -70
  107. package/layout/archive.ejs +4 -4
  108. package/layout/category.ejs +9 -4
  109. package/layout/docs.ejs +1 -1
  110. package/layout/friends.ejs +6 -25
  111. package/layout/index.ejs +1 -1
  112. package/layout/layout.ejs +13 -12
  113. package/layout/list.ejs +1 -1
  114. package/layout/page.ejs +1 -1
  115. package/layout/post.ejs +1 -1
  116. package/layout/tag.ejs +8 -3
  117. package/package.json +4 -3
  118. package/scripts/events/index.js +12 -0
  119. package/scripts/events/lib/config.js +27 -8
  120. package/scripts/events/lib/renderStylus.js +78 -0
  121. package/scripts/events/lib/utils.js +76 -0
  122. package/scripts/filters/content-visibility.js +25 -0
  123. package/scripts/{render → filters}/img.js +0 -0
  124. package/scripts/filters/replace.js +15 -0
  125. package/scripts/{z-lazyload → filters/z-lazyload}/index.js +0 -0
  126. package/scripts/{z-lazyload → filters/z-lazyload}/lib/process.js +1 -1
  127. package/scripts/generator/build-config.js +9 -0
  128. package/scripts/helpers/custom-files/index.js +163 -0
  129. package/scripts/helpers/first-style/index.js +19 -0
  130. package/scripts/helpers/head/autoCanonical.js +15 -0
  131. package/scripts/helpers/head/generate_preload_fontfamily.js +22 -0
  132. package/scripts/helpers/head/generate_seo.js +24 -0
  133. package/scripts/helpers/head/generate_title__keywords__description.js +91 -0
  134. package/scripts/{related_posts → helpers/related_posts}/index.js +1 -1
  135. package/scripts/helpers/structured-data/index.js +2 -0
  136. package/scripts/helpers/structured-data/lib/blogposting.js +65 -0
  137. package/scripts/helpers/structured-data/lib/breadcrumblist.js +128 -0
  138. package/scripts/helpers/structured-data/lib/config.js +31 -0
  139. package/scripts/helpers/structured-data/lib/index.js +38 -0
  140. package/scripts/helpers/structured-data/lib/organization.js +15 -0
  141. package/scripts/helpers/structured-data/lib/person.js +16 -0
  142. package/scripts/helpers/structured-data/lib/website.js +42 -0
  143. package/scripts/helpers/tag-plugins-style/index.js +199 -0
  144. package/scripts/tags/btn.js +6 -1
  145. package/scripts/tags/btns.js +7 -2
  146. package/scripts/tags/checkbox.js +12 -2
  147. package/scripts/tags/contributors.js +100 -0
  148. package/scripts/tags/dropmenu.js +18 -3
  149. package/scripts/tags/fancybox.js +44 -10
  150. package/scripts/tags/folding.js +6 -1
  151. package/scripts/tags/frame.js +6 -1
  152. package/scripts/tags/friends.js +99 -0
  153. package/scripts/tags/ghcard.js +6 -1
  154. package/scripts/tags/image.js +14 -2
  155. package/scripts/tags/link.js +6 -1
  156. package/scripts/tags/md.js +59 -0
  157. package/scripts/tags/media.js +25 -1
  158. package/scripts/tags/note.js +12 -2
  159. package/scripts/tags/site.js +87 -51
  160. package/scripts/tags/span.js +12 -2
  161. package/scripts/tags/swiper.js +38 -0
  162. package/scripts/tags/tabs.js +85 -54
  163. package/scripts/tags/timeline.js +6 -1
  164. package/source/css/Readme.md +28 -0
  165. package/source/css/_defines/AutoPrefixCSS.styl +347 -0
  166. package/source/css/_defines/Readme.md +3 -0
  167. package/source/css/_defines/color.styl +19 -0
  168. package/source/css/_defines/effect.styl +0 -13
  169. package/source/css/_defines/fonts.styl +17 -18
  170. package/source/css/_defines/func.styl +12 -30
  171. package/source/css/_first/base_first.styl +113 -0
  172. package/source/css/_first/{cover.styl → cover_first.styl} +113 -87
  173. package/source/css/_first/dark_first.styl +75 -0
  174. package/source/css/_first/fontfamily_first.styl +17 -0
  175. package/source/css/_first/{navbar.styl → navbar_first.styl} +4 -10
  176. package/source/css/_first/search_first.styl +12 -0
  177. package/source/css/{_base/index.styl → _style/_base/base.styl} +8 -92
  178. package/source/css/_style/_base/fontfamily_async.styl +8 -0
  179. package/source/css/{_layout → _style/_layout}/archive.styl +0 -0
  180. package/source/css/{_layout → _style/_layout}/article.styl +2 -29
  181. package/source/css/{_layout → _style/_layout}/footer.styl +0 -0
  182. package/source/css/_style/_layout/friends-simpleuser.styl +23 -0
  183. package/source/css/_style/_layout/friends-traditional.styl +81 -0
  184. package/source/css/{_layout → _style/_layout}/img.styl +0 -0
  185. package/source/css/_style/_layout/loading.styl +14 -0
  186. package/source/css/{_layout → _style/_layout}/main.styl +17 -7
  187. package/source/css/{_layout → _style/_layout}/md.styl +0 -0
  188. package/source/css/{_layout → _style/_layout}/pagination.styl +1 -1
  189. package/source/css/{_layout → _style/_layout}/posts.styl +2 -0
  190. package/source/css/{_first → _style/_layout}/search.styl +0 -103
  191. package/source/css/{_layout → _style/_layout}/sidebar.styl +24 -3
  192. package/source/css/{_layout → _style/_layout}/snackbar.styl +0 -0
  193. package/source/css/{_layout → _style/_layout}/toc.styl +1 -1
  194. package/source/css/{_layout → _style/_layout}/video.styl +0 -0
  195. package/source/css/_style/_plugins/_dark/dark_async.styl +50 -0
  196. package/source/css/{_plugins/dark.styl → _style/_plugins/_dark/dark_plugins.styl} +85 -76
  197. package/source/css/_style/_plugins/_highlight/highlightjs/clipboard.styl +36 -0
  198. package/source/css/_style/_plugins/_highlight/highlightjs/color.styl +96 -0
  199. package/source/css/_style/_plugins/_highlight/highlightjs/index.styl +102 -0
  200. package/source/css/_style/_plugins/_highlight/highlightjs/language.styl +63 -0
  201. package/source/css/_style/_plugins/_highlight/index.styl +1 -0
  202. package/source/css/_style/_plugins/_highlight/prismjs/clipboard.styl +33 -0
  203. package/source/css/_style/_plugins/_highlight/prismjs/index.styl +8 -0
  204. package/source/css/_style/_plugins/_highlight/prismjs/language.styl +63 -0
  205. package/source/css/_style/_plugins/_rightmenu/reading.styl +56 -0
  206. package/source/css/{_plugins → _style/_plugins/_rightmenu}/rightmenu.styl +20 -1
  207. package/source/css/{_plugins → _style/_plugins}/aplayer.styl +8 -1
  208. package/source/css/{_plugins → _style/_plugins}/cursor.styl +49 -9
  209. package/source/css/_style/_plugins/fontcolor.styl +84 -0
  210. package/source/css/{_plugins → _style/_plugins}/gitalk.styl +0 -0
  211. package/source/css/{_plugins → _style/_plugins}/index.styl +14 -6
  212. package/source/css/{_plugins → _style/_plugins}/mathjax.styl +0 -0
  213. package/source/css/_style/_plugins/message.styl +14 -0
  214. package/source/css/{_plugins → _style/_plugins}/pjaxanimate.styl +0 -0
  215. package/source/css/{_plugins → _style/_plugins}/valine.styl +0 -0
  216. package/source/css/_style/_tag-plugins/Readme.md +9 -0
  217. package/source/css/{_tag-plugins → _style/_tag-plugins}/btns.styl +0 -0
  218. package/source/css/{_tag-plugins → _style/_tag-plugins}/checkbox.styl +0 -0
  219. package/source/css/{_tag-plugins → _style/_tag-plugins}/dropmenu.styl +0 -0
  220. package/source/css/{_plugins → _style/_tag-plugins}/fancybox.styl +8 -9
  221. package/source/css/{_tag-plugins → _style/_tag-plugins}/folding.styl +0 -0
  222. package/source/css/{_tag-plugins → _style/_tag-plugins}/frame.styl +0 -0
  223. package/source/css/_style/_tag-plugins/friends.styl +72 -0
  224. package/source/css/{_tag-plugins → _style/_tag-plugins}/ghcard.styl +0 -0
  225. package/source/css/{_tag-plugins → _style/_tag-plugins}/image.styl +0 -0
  226. package/source/css/{_tag-plugins → _style/_tag-plugins}/link.styl +0 -0
  227. package/source/css/{_tag-plugins → _style/_tag-plugins}/media.styl +0 -0
  228. package/source/css/{_tag-plugins → _style/_tag-plugins}/note.styl +0 -0
  229. package/source/css/_style/_tag-plugins/sites.styl +87 -0
  230. package/source/css/{_tag-plugins → _style/_tag-plugins}/span.styl +0 -0
  231. package/source/css/_style/_tag-plugins/swiper.styl +44 -0
  232. package/source/css/{_tag-plugins → _style/_tag-plugins}/table.styl +0 -0
  233. package/source/css/{_tag-plugins → _style/_tag-plugins}/tabs.styl +0 -0
  234. package/source/css/_style/_tag-plugins/tag.json +35 -0
  235. package/source/css/_style/_tag-plugins/text.styl +31 -0
  236. package/source/css/{_tag-plugins → _style/_tag-plugins}/timeline.styl +0 -0
  237. package/source/css/_style/index.styl +9 -0
  238. package/source/css/first.styl +19 -6
  239. package/source/css/message.css +6 -0
  240. package/source/css/style.styl +5 -4
  241. package/source/js/app.js +1021 -277
  242. package/source/js/plugins/aplayer.js +191 -0
  243. package/source/js/plugins/contributors.js +92 -0
  244. package/source/js/plugins/friends.js +93 -0
  245. package/source/js/plugins/parallax.js +191 -0
  246. package/source/js/plugins/rightMenu.js +560 -0
  247. package/source/js/plugins/sites.js +96 -0
  248. package/source/js/search/hexo.js +178 -374
  249. package/source/js/thirdparty/message.js +6 -0
  250. package/source/js/{valine.js → thirdparty/valine.js} +0 -0
  251. package/source/libs/@fancyapps/ui/LICENSE.md +8 -0
  252. package/source/libs/@fancyapps/ui/README.md +224 -0
  253. package/source/libs/@fancyapps/ui/dist/fancybox.css +1 -0
  254. package/source/libs/@fancyapps/ui/dist/fancybox.umd.js +2 -0
  255. package/source/libs/@fortawesome/fontawesome-free/LICENSE.txt +165 -0
  256. package/source/libs/@fortawesome/fontawesome-free/css/all.min.css +6 -0
  257. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-brands-400.ttf +0 -0
  258. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-brands-400.woff2 +0 -0
  259. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.ttf +0 -0
  260. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 +0 -0
  261. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.ttf +0 -0
  262. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2 +0 -0
  263. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.ttf +0 -0
  264. package/source/libs/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.woff2 +0 -0
  265. package/source/libs/@fortawesome/fontawesome-pro/LICENSE.txt +18 -0
  266. package/source/libs/@fortawesome/fontawesome-pro/css/all.min.css +6 -0
  267. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-brands-400.ttf +0 -0
  268. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-brands-400.woff2 +0 -0
  269. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-duotone-900.ttf +0 -0
  270. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-duotone-900.woff2 +0 -0
  271. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-light-300.ttf +0 -0
  272. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-light-300.woff2 +0 -0
  273. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-regular-400.ttf +0 -0
  274. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-regular-400.woff2 +0 -0
  275. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-solid-900.ttf +0 -0
  276. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-solid-900.woff2 +0 -0
  277. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-thin-100.ttf +0 -0
  278. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-thin-100.woff2 +0 -0
  279. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-v4compatibility.ttf +0 -0
  280. package/source/libs/@fortawesome/fontawesome-pro/webfonts/fa-v4compatibility.woff2 +0 -0
  281. package/source/libs/aplayer/LICENSE +21 -0
  282. package/source/libs/aplayer/README.md +123 -0
  283. package/source/libs/aplayer/dist/APlayer.min.css +3 -0
  284. package/source/libs/aplayer/dist/APlayer.min.css.map +1 -0
  285. package/source/libs/aplayer/dist/APlayer.min.js +2 -0
  286. package/source/libs/aplayer/dist/APlayer.min.js.map +1 -0
  287. package/source/libs/busuanzi/LICENSE +21 -0
  288. package/source/libs/busuanzi/README.md +21 -0
  289. package/source/libs/busuanzi/js/busuanzi.pure.mini.js +1 -0
  290. package/source/libs/comment_typing/comment_typing.js +2 -0
  291. package/source/libs/flying-pages/flying-pages.min.js +1 -0
  292. package/source/libs/font-awesome-animation/font-awesome-animation.min.css +2 -0
  293. package/source/libs/github-markdown-css/github-markdown.css +1036 -0
  294. package/source/libs/github-markdown-css/license +9 -0
  295. package/source/libs/github-markdown-css/readme.md +63 -0
  296. package/source/libs/hls.js/LICENSE +28 -0
  297. package/source/libs/hls.js/README.md +442 -0
  298. package/source/libs/hls.js/dist/hls.min.js +2 -0
  299. package/source/libs/hls.js/dist/hls.min.js.map +1 -0
  300. package/source/libs/instant_page/instant_page.js +2 -0
  301. package/source/libs/jquery/LICENSE.txt +20 -0
  302. package/source/libs/jquery/README.md +62 -0
  303. package/source/libs/jquery/dist/jquery.min.js +2 -0
  304. package/source/libs/jquery/dist/jquery.min.map +1 -0
  305. package/source/libs/katex/README.md +119 -0
  306. package/source/libs/katex/contrib/auto-render.min.js +1 -0
  307. package/source/libs/katex/contrib/copy-tex.min.css +1 -0
  308. package/source/libs/katex/contrib/copy-tex.min.js +1 -0
  309. package/source/libs/katex/contrib/mathtex-script-type.min.js +1 -0
  310. package/source/libs/katex/contrib/mhchem.min.js +1 -0
  311. package/source/libs/katex/contrib/render-a11y-string.min.js +1 -0
  312. package/source/libs/katex/fonts/KaTeX_AMS-Regular.ttf +0 -0
  313. package/source/libs/katex/fonts/KaTeX_AMS-Regular.woff +0 -0
  314. package/source/libs/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  315. package/source/libs/katex/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  316. package/source/libs/katex/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  317. package/source/libs/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  318. package/source/libs/katex/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  319. package/source/libs/katex/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  320. package/source/libs/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  321. package/source/libs/katex/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  322. package/source/libs/katex/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  323. package/source/libs/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  324. package/source/libs/katex/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  325. package/source/libs/katex/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  326. package/source/libs/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  327. package/source/libs/katex/fonts/KaTeX_Main-Bold.ttf +0 -0
  328. package/source/libs/katex/fonts/KaTeX_Main-Bold.woff +0 -0
  329. package/source/libs/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  330. package/source/libs/katex/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  331. package/source/libs/katex/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  332. package/source/libs/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  333. package/source/libs/katex/fonts/KaTeX_Main-Italic.ttf +0 -0
  334. package/source/libs/katex/fonts/KaTeX_Main-Italic.woff +0 -0
  335. package/source/libs/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  336. package/source/libs/katex/fonts/KaTeX_Main-Regular.ttf +0 -0
  337. package/source/libs/katex/fonts/KaTeX_Main-Regular.woff +0 -0
  338. package/source/libs/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  339. package/source/libs/katex/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  340. package/source/libs/katex/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  341. package/source/libs/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  342. package/source/libs/katex/fonts/KaTeX_Math-Italic.ttf +0 -0
  343. package/source/libs/katex/fonts/KaTeX_Math-Italic.woff +0 -0
  344. package/source/libs/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  345. package/source/libs/katex/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  346. package/source/libs/katex/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  347. package/source/libs/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  348. package/source/libs/katex/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  349. package/source/libs/katex/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  350. package/source/libs/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  351. package/source/libs/katex/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  352. package/source/libs/katex/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  353. package/source/libs/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  354. package/source/libs/katex/fonts/KaTeX_Script-Regular.ttf +0 -0
  355. package/source/libs/katex/fonts/KaTeX_Script-Regular.woff +0 -0
  356. package/source/libs/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  357. package/source/libs/katex/fonts/KaTeX_Size1-Regular.ttf +0 -0
  358. package/source/libs/katex/fonts/KaTeX_Size1-Regular.woff +0 -0
  359. package/source/libs/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  360. package/source/libs/katex/fonts/KaTeX_Size2-Regular.ttf +0 -0
  361. package/source/libs/katex/fonts/KaTeX_Size2-Regular.woff +0 -0
  362. package/source/libs/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  363. package/source/libs/katex/fonts/KaTeX_Size3-Regular.ttf +0 -0
  364. package/source/libs/katex/fonts/KaTeX_Size3-Regular.woff +0 -0
  365. package/source/libs/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  366. package/source/libs/katex/fonts/KaTeX_Size4-Regular.ttf +0 -0
  367. package/source/libs/katex/fonts/KaTeX_Size4-Regular.woff +0 -0
  368. package/source/libs/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  369. package/source/libs/katex/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  370. package/source/libs/katex/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  371. package/source/libs/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  372. package/source/libs/katex/katex.min.css +1 -0
  373. package/source/libs/katex/katex.min.js +1 -0
  374. package/source/libs/marked/LICENSE.md +44 -0
  375. package/source/libs/marked/README.md +87 -0
  376. package/source/libs/marked/marked.min.js +6 -0
  377. package/source/libs/mathjax/LICENSE +202 -0
  378. package/source/libs/mathjax/README.md +237 -0
  379. package/source/libs/mathjax/es5/a11y/assistive-mml.js +1 -0
  380. package/source/libs/mathjax/es5/a11y/complexity.js +1 -0
  381. package/source/libs/mathjax/es5/a11y/explorer.js +1 -0
  382. package/source/libs/mathjax/es5/a11y/semantic-enrich.js +1 -0
  383. package/source/libs/mathjax/es5/adaptors/liteDOM.js +1 -0
  384. package/source/libs/mathjax/es5/core.js +1 -0
  385. package/source/libs/mathjax/es5/input/asciimath.js +1 -0
  386. package/source/libs/mathjax/es5/input/mml/entities.js +1 -0
  387. package/source/libs/mathjax/es5/input/mml/extensions/mml3.js +1 -0
  388. package/source/libs/mathjax/es5/input/mml/extensions/mml3.sef.json +1 -0
  389. package/source/libs/mathjax/es5/input/mml.js +1 -0
  390. package/source/libs/mathjax/es5/input/tex/extensions/action.js +1 -0
  391. package/source/libs/mathjax/es5/input/tex/extensions/all-packages.js +34 -0
  392. package/source/libs/mathjax/es5/input/tex/extensions/ams.js +1 -0
  393. package/source/libs/mathjax/es5/input/tex/extensions/amscd.js +1 -0
  394. package/source/libs/mathjax/es5/input/tex/extensions/autoload.js +1 -0
  395. package/source/libs/mathjax/es5/input/tex/extensions/bbox.js +1 -0
  396. package/source/libs/mathjax/es5/input/tex/extensions/boldsymbol.js +1 -0
  397. package/source/libs/mathjax/es5/input/tex/extensions/braket.js +1 -0
  398. package/source/libs/mathjax/es5/input/tex/extensions/bussproofs.js +1 -0
  399. package/source/libs/mathjax/es5/input/tex/extensions/cancel.js +1 -0
  400. package/source/libs/mathjax/es5/input/tex/extensions/centernot.js +1 -0
  401. package/source/libs/mathjax/es5/input/tex/extensions/color.js +1 -0
  402. package/source/libs/mathjax/es5/input/tex/extensions/colortbl.js +1 -0
  403. package/source/libs/mathjax/es5/input/tex/extensions/colorv2.js +1 -0
  404. package/source/libs/mathjax/es5/input/tex/extensions/configmacros.js +1 -0
  405. package/source/libs/mathjax/es5/input/tex/extensions/enclose.js +1 -0
  406. package/source/libs/mathjax/es5/input/tex/extensions/extpfeil.js +1 -0
  407. package/source/libs/mathjax/es5/input/tex/extensions/gensymb.js +1 -0
  408. package/source/libs/mathjax/es5/input/tex/extensions/html.js +1 -0
  409. package/source/libs/mathjax/es5/input/tex/extensions/mathtools.js +1 -0
  410. package/source/libs/mathjax/es5/input/tex/extensions/mhchem.js +34 -0
  411. package/source/libs/mathjax/es5/input/tex/extensions/newcommand.js +1 -0
  412. package/source/libs/mathjax/es5/input/tex/extensions/noerrors.js +1 -0
  413. package/source/libs/mathjax/es5/input/tex/extensions/noundefined.js +1 -0
  414. package/source/libs/mathjax/es5/input/tex/extensions/physics.js +1 -0
  415. package/source/libs/mathjax/es5/input/tex/extensions/require.js +1 -0
  416. package/source/libs/mathjax/es5/input/tex/extensions/setoptions.js +1 -0
  417. package/source/libs/mathjax/es5/input/tex/extensions/tagformat.js +1 -0
  418. package/source/libs/mathjax/es5/input/tex/extensions/textcomp.js +1 -0
  419. package/source/libs/mathjax/es5/input/tex/extensions/textmacros.js +1 -0
  420. package/source/libs/mathjax/es5/input/tex/extensions/unicode.js +1 -0
  421. package/source/libs/mathjax/es5/input/tex/extensions/upgreek.js +1 -0
  422. package/source/libs/mathjax/es5/input/tex/extensions/verb.js +1 -0
  423. package/source/libs/mathjax/es5/input/tex-base.js +1 -0
  424. package/source/libs/mathjax/es5/input/tex-full.js +34 -0
  425. package/source/libs/mathjax/es5/input/tex.js +1 -0
  426. package/source/libs/mathjax/es5/latest.js +1 -0
  427. package/source/libs/mathjax/es5/loader.js +1 -0
  428. package/source/libs/mathjax/es5/mml-chtml.js +1 -0
  429. package/source/libs/mathjax/es5/mml-svg.js +1 -0
  430. package/source/libs/mathjax/es5/node-main.js +1 -0
  431. package/source/libs/mathjax/es5/output/chtml/fonts/tex.js +1 -0
  432. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff +0 -0
  433. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Bold.woff +0 -0
  434. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Regular.woff +0 -0
  435. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Fraktur-Bold.woff +0 -0
  436. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Fraktur-Regular.woff +0 -0
  437. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff +0 -0
  438. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Main-Italic.woff +0 -0
  439. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
  440. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Math-BoldItalic.woff +0 -0
  441. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
  442. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Math-Regular.woff +0 -0
  443. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_SansSerif-Bold.woff +0 -0
  444. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_SansSerif-Italic.woff +0 -0
  445. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_SansSerif-Regular.woff +0 -0
  446. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Script-Regular.woff +0 -0
  447. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff +0 -0
  448. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
  449. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
  450. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff +0 -0
  451. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Typewriter-Regular.woff +0 -0
  452. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Vector-Bold.woff +0 -0
  453. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff +0 -0
  454. package/source/libs/mathjax/es5/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
  455. package/source/libs/mathjax/es5/output/chtml.js +1 -0
  456. package/source/libs/mathjax/es5/output/svg/fonts/tex.js +1 -0
  457. package/source/libs/mathjax/es5/output/svg.js +1 -0
  458. package/source/libs/mathjax/es5/sre/mathmaps/de.js +125 -0
  459. package/source/libs/mathjax/es5/sre/mathmaps/en.js +131 -0
  460. package/source/libs/mathjax/es5/sre/mathmaps/es.js +122 -0
  461. package/source/libs/mathjax/es5/sre/mathmaps/fr.js +125 -0
  462. package/source/libs/mathjax/es5/sre/mathmaps/hi.js +125 -0
  463. package/source/libs/mathjax/es5/sre/mathmaps/it.js +125 -0
  464. package/source/libs/mathjax/es5/sre/mathmaps/nemeth.js +113 -0
  465. package/source/libs/mathjax/es5/sre/sre-node.js +11 -0
  466. package/source/libs/mathjax/es5/sre/sre_browser.js +999 -0
  467. package/source/libs/mathjax/es5/startup.js +1 -0
  468. package/source/libs/mathjax/es5/tex-chtml-full.js +34 -0
  469. package/source/libs/mathjax/es5/tex-chtml.js +1 -0
  470. package/source/libs/mathjax/es5/tex-mml-chtml.js +1 -0
  471. package/source/libs/mathjax/es5/tex-mml-svg.js +1 -0
  472. package/source/libs/mathjax/es5/tex-svg-full.js +34 -0
  473. package/source/libs/mathjax/es5/tex-svg.js +1 -0
  474. package/source/libs/mathjax/es5/ui/lazy.js +1 -0
  475. package/source/libs/mathjax/es5/ui/menu.js +1 -0
  476. package/source/libs/mathjax/es5/ui/safe.js +1 -0
  477. package/source/libs/meting/LICENSE +21 -0
  478. package/source/libs/meting/README.md +125 -0
  479. package/source/libs/meting/dist/Meting.min.js +1 -0
  480. package/source/libs/node-waves/LICENSE +21 -0
  481. package/source/libs/node-waves/README.md +23 -0
  482. package/source/libs/node-waves/dist/waves.min.css +7 -0
  483. package/source/libs/node-waves/dist/waves.min.js +2 -0
  484. package/source/libs/node-waves/dist/waves.min.js.map +1 -0
  485. package/source/libs/nprogress/License.md +19 -0
  486. package/source/libs/nprogress/Readme.md +197 -0
  487. package/source/libs/nprogress/nprogress.js +476 -0
  488. package/source/libs/pjax/LICENSE +20 -0
  489. package/source/libs/pjax/README.md +726 -0
  490. package/source/libs/pjax/pjax.min.js +1 -0
  491. package/source/libs/scrollreveal/README.md +126 -0
  492. package/source/libs/scrollreveal/dist/scrollreveal.min.js +12 -0
  493. package/source/libs/swiper/swiper-bundle.min.css +13 -0
  494. package/source/libs/swiper/swiper-bundle.min.js +14 -0
  495. package/source/libs/swiper/swiper-bundle.min.js.map +1 -0
  496. package/source/libs/vanilla-lazyload/LICENSE +21 -0
  497. package/source/libs/vanilla-lazyload/README.md +874 -0
  498. package/source/libs/vanilla-lazyload/dist/lazyload.min.js +1 -0
  499. package/source/media/cursor/circle.png +0 -0
  500. package/source/media/cursor/left_ptr.png +0 -0
  501. package/source/media/cursor/openhand.png +0 -0
  502. package/source/media/cursor/pointer.png +0 -0
  503. package/source/media/cursor/text.png +0 -0
  504. package/source/media/cursor/zoom-in.png +0 -0
  505. package/source/media/cursor/zoom-out.png +0 -0
  506. package/source/media/fonts/CascadiaCode/Cascadia.ttf +0 -0
  507. package/source/media/fonts/CascadiaCode/CascadiaMono.ttf +0 -0
  508. package/source/media/fonts/CascadiaCode/CascadiaMonoPL.ttf +0 -0
  509. package/source/media/fonts/CascadiaCode/CascadiaPL.ttf +0 -0
  510. package/source/media/fonts/CascadiaCode/README.md +9 -0
  511. package/source/media/fonts/Monaco/Monaco.ttf +0 -0
  512. package/source/media/fonts/UbuntuMono/UbuntuMono-Regular.ttf +0 -0
  513. package/source/media/fonts/VarelaRound/VarelaRound-Regular.ttf +0 -0
  514. package/source/media/org.volantis/README.md +19 -0
  515. package/source/media/org.volantis/blog/Logo-Cover@3x.png +0 -0
  516. package/source/media/org.volantis/blog/Logo-NavBar@3x.png +0 -0
  517. package/source/media/org.volantis/blog/favicon/android-chrome-192x192.png +0 -0
  518. package/source/media/org.volantis/blog/favicon/android-chrome-512x512.png +0 -0
  519. package/source/media/org.volantis/blog/favicon/apple-touch-icon.png +0 -0
  520. package/source/media/org.volantis/blog/favicon/browserconfig.xml +9 -0
  521. package/source/media/org.volantis/blog/favicon/favicon-16x16.png +0 -0
  522. package/source/media/org.volantis/blog/favicon/favicon-32x32.png +0 -0
  523. package/source/media/org.volantis/blog/favicon/favicon.ico +0 -0
  524. package/source/media/org.volantis/blog/favicon/mstile-150x150.png +0 -0
  525. package/source/media/org.volantis/blog/favicon/safari-pinned-tab.svg +26 -0
  526. package/source/media/org.volantis/blog/favicon/site.webmanifest +19 -0
  527. package/source/media/org.volantis/blog/logo/hexo.jpg +0 -0
  528. package/source/media/org.volantis/blog/qrcode/github@volantis.png +0 -0
  529. package/source/media/org.volantis/icon/1322024-social-media/001-google-drive.svg +1 -0
  530. package/source/media/org.volantis/icon/1322024-social-media/002-myspace.svg +1 -0
  531. package/source/media/org.volantis/icon/1322024-social-media/003-reddit.svg +1 -0
  532. package/source/media/org.volantis/icon/1322024-social-media/004-wattpad.svg +1 -0
  533. package/source/media/org.volantis/icon/1322024-social-media/005-dribbble.svg +1 -0
  534. package/source/media/org.volantis/icon/1322024-social-media/006-youtube.svg +1 -0
  535. package/source/media/org.volantis/icon/1322024-social-media/007-forrst.svg +1 -0
  536. package/source/media/org.volantis/icon/1322024-social-media/008-pinterest.svg +1 -0
  537. package/source/media/org.volantis/icon/1322024-social-media/009-flickr.svg +1 -0
  538. package/source/media/org.volantis/icon/1322024-social-media/010-facebook.svg +1 -0
  539. package/source/media/org.volantis/icon/1322024-social-media/011-team-viewer.svg +1 -0
  540. package/source/media/org.volantis/icon/1322024-social-media/012-blogger.svg +1 -0
  541. package/source/media/org.volantis/icon/1322024-social-media/013-grooveshark.svg +1 -0
  542. package/source/media/org.volantis/icon/1322024-social-media/014-whatsapp.svg +1 -0
  543. package/source/media/org.volantis/icon/1322024-social-media/015-instagram.svg +1 -0
  544. package/source/media/org.volantis/icon/1322024-social-media/016-skype.svg +1 -0
  545. package/source/media/org.volantis/icon/1322024-social-media/017-picasa.svg +1 -0
  546. package/source/media/org.volantis/icon/1322024-social-media/018-twitter.svg +1 -0
  547. package/source/media/org.volantis/icon/1322024-social-media/019-yahoo.svg +1 -0
  548. package/source/media/org.volantis/icon/1322024-social-media/020-rss.svg +1 -0
  549. package/source/media/org.volantis/icon/1322024-social-media/021-envato.svg +1 -0
  550. package/source/media/org.volantis/icon/1322024-social-media/022-soundcloud.svg +1 -0
  551. package/source/media/org.volantis/icon/1322024-social-media/023-kickstarter.svg +1 -0
  552. package/source/media/org.volantis/icon/1322024-social-media/024-snapchat.svg +1 -0
  553. package/source/media/org.volantis/icon/1322024-social-media/025-quora.svg +1 -0
  554. package/source/media/org.volantis/icon/1322024-social-media/026-yelp.svg +1 -0
  555. package/source/media/org.volantis/icon/1322024-social-media/027-slideshare.svg +1 -0
  556. package/source/media/org.volantis/icon/1322024-social-media/028-opera.svg +1 -0
  557. package/source/media/org.volantis/icon/1322024-social-media/029-github.svg +1 -0
  558. package/source/media/org.volantis/icon/1322024-social-media/030-last-fm.svg +1 -0
  559. package/source/media/org.volantis/icon/1322024-social-media/031-twitch.svg +1 -0
  560. package/source/media/org.volantis/icon/1322024-social-media/032-tumblr.svg +1 -0
  561. package/source/media/org.volantis/icon/1322024-social-media/033-spotify.svg +1 -0
  562. package/source/media/org.volantis/icon/1322024-social-media/034-foursquare.svg +1 -0
  563. package/source/media/org.volantis/icon/1322024-social-media/035-hangout.svg +1 -0
  564. package/source/media/org.volantis/icon/1322024-social-media/036-dropbox.svg +1 -0
  565. package/source/media/org.volantis/icon/1322024-social-media/037-vine.svg +1 -0
  566. package/source/media/org.volantis/icon/1322024-social-media/038-google-plus.svg +1 -0
  567. package/source/media/org.volantis/icon/1322024-social-media/039-path.svg +1 -0
  568. package/source/media/org.volantis/icon/1322024-social-media/040-vimeo.svg +1 -0
  569. package/source/media/org.volantis/icon/1322024-social-media/041-addthis.svg +1 -0
  570. package/source/media/org.volantis/icon/1322024-social-media/042-xing.svg +1 -0
  571. package/source/media/org.volantis/icon/1322024-social-media/043-stumbleupon.svg +1 -0
  572. package/source/media/org.volantis/icon/1322024-social-media/044-deviantart.svg +1 -0
  573. package/source/media/org.volantis/icon/1322024-social-media/045-telegram.svg +1 -0
  574. package/source/media/org.volantis/icon/1322024-social-media/046-vk.svg +1 -0
  575. package/source/media/org.volantis/icon/1322024-social-media/047-swarm.svg +1 -0
  576. package/source/media/org.volantis/icon/1322024-social-media/048-bebo.svg +1 -0
  577. package/source/media/org.volantis/icon/1322024-social-media/049-technorati.svg +1 -0
  578. package/source/media/org.volantis/icon/1322024-social-media/050-periscope.svg +1 -0
  579. package/source/media/org.volantis/icon/2439351-arrows/001-arrows.svg +1 -0
  580. package/source/media/org.volantis/icon/2439351-arrows/002-arrows.svg +1 -0
  581. package/source/media/org.volantis/icon/2439351-arrows/003-arrows.svg +1 -0
  582. package/source/media/org.volantis/icon/2439351-arrows/004-arrows.svg +1 -0
  583. package/source/media/org.volantis/icon/2439351-arrows/005-arrows.svg +1 -0
  584. package/source/media/org.volantis/icon/2439351-arrows/006-arrows.svg +1 -0
  585. package/source/media/org.volantis/icon/2439351-arrows/007-arrows.svg +1 -0
  586. package/source/media/org.volantis/icon/2439351-arrows/008-arrows.svg +1 -0
  587. package/source/media/org.volantis/icon/2439351-arrows/009-arrows.svg +1 -0
  588. package/source/media/org.volantis/icon/2439351-arrows/010-arrows.svg +1 -0
  589. package/source/media/org.volantis/icon/2439351-arrows/011-arrows.svg +1 -0
  590. package/source/media/org.volantis/icon/2439351-arrows/012-arrows.svg +1 -0
  591. package/source/media/org.volantis/icon/2439351-arrows/013-arrows.svg +1 -0
  592. package/source/media/org.volantis/icon/2439351-arrows/014-arrows.svg +1 -0
  593. package/source/media/org.volantis/icon/2439351-arrows/015-arrows.svg +1 -0
  594. package/source/media/org.volantis/icon/2439351-arrows/016-arrows.svg +1 -0
  595. package/source/media/org.volantis/icon/2439351-arrows/017-arrows.svg +1 -0
  596. package/source/media/org.volantis/icon/2439351-arrows/018-arrows.svg +1 -0
  597. package/source/media/org.volantis/icon/2439351-arrows/019-arrows.svg +1 -0
  598. package/source/media/org.volantis/icon/2439351-arrows/020-arrows.svg +1 -0
  599. package/source/media/org.volantis/icon/2439351-arrows/021-arrows.svg +1 -0
  600. package/source/media/org.volantis/icon/2439351-arrows/022-arrows.svg +1 -0
  601. package/source/media/org.volantis/icon/2439351-arrows/023-arrows.svg +1 -0
  602. package/source/media/org.volantis/icon/2439351-arrows/024-arrows.svg +1 -0
  603. package/source/media/org.volantis/icon/2439351-arrows/025-arrows.svg +1 -0
  604. package/source/media/org.volantis/icon/2439351-arrows/026-arrows.svg +1 -0
  605. package/source/media/org.volantis/icon/2439351-arrows/027-arrows.svg +1 -0
  606. package/source/media/org.volantis/icon/2439351-arrows/028-arrows.svg +1 -0
  607. package/source/media/org.volantis/icon/2439351-arrows/029-arrows.svg +1 -0
  608. package/source/media/org.volantis/icon/2439351-arrows/030-arrows.svg +1 -0
  609. package/source/media/org.volantis/icon/2439351-arrows/031-arrows.svg +1 -0
  610. package/source/media/org.volantis/icon/2439351-arrows/032-arrows.svg +1 -0
  611. package/source/media/org.volantis/icon/2439351-arrows/033-arrows.svg +1 -0
  612. package/source/media/org.volantis/icon/2439351-arrows/034-arrows.svg +1 -0
  613. package/source/media/org.volantis/icon/2439351-arrows/035-arrows.svg +1 -0
  614. package/source/media/org.volantis/icon/2439351-arrows/036-arrows.svg +1 -0
  615. package/source/media/org.volantis/icon/2439351-arrows/037-arrows.svg +1 -0
  616. package/source/media/org.volantis/icon/2439351-arrows/038-arrows.svg +1 -0
  617. package/source/media/org.volantis/icon/2439351-arrows/039-arrows.svg +1 -0
  618. package/source/media/org.volantis/icon/2439351-arrows/040-arrows.svg +1 -0
  619. package/source/media/org.volantis/icon/2439351-arrows/041-arrows.svg +1 -0
  620. package/source/media/org.volantis/icon/2439351-arrows/042-arrows.svg +1 -0
  621. package/source/media/org.volantis/icon/2439351-arrows/043-arrows.svg +1 -0
  622. package/source/media/org.volantis/icon/2439351-arrows/044-arrows.svg +1 -0
  623. package/source/media/org.volantis/icon/2439351-arrows/045-arrows.svg +1 -0
  624. package/source/media/org.volantis/icon/2439351-arrows/046-arrows.svg +1 -0
  625. package/source/media/org.volantis/icon/2439351-arrows/047-arrows.svg +1 -0
  626. package/source/media/org.volantis/icon/2439351-arrows/048-arrows.svg +1 -0
  627. package/source/media/org.volantis/icon/2439351-arrows/049-arrows.svg +1 -0
  628. package/source/media/org.volantis/icon/2439351-arrows/050-arrows.svg +1 -0
  629. package/source/media/org.volantis/icon/2820262-cloud-networking/001-download.svg +1 -0
  630. package/source/media/org.volantis/icon/2820262-cloud-networking/002-upload.svg +1 -0
  631. package/source/media/org.volantis/icon/2820262-cloud-networking/003-cloud.svg +1 -0
  632. package/source/media/org.volantis/icon/2820262-cloud-networking/004-storage.svg +1 -0
  633. package/source/media/org.volantis/icon/2820262-cloud-networking/005-downloading.svg +1 -0
  634. package/source/media/org.volantis/icon/2820262-cloud-networking/006-upload.svg +1 -0
  635. package/source/media/org.volantis/icon/2820262-cloud-networking/007-direct download.svg +1 -0
  636. package/source/media/org.volantis/icon/2820262-cloud-networking/008-button.svg +1 -0
  637. package/source/media/org.volantis/icon/2820262-cloud-networking/009-file.svg +1 -0
  638. package/source/media/org.volantis/icon/2820262-cloud-networking/010-save file.svg +1 -0
  639. package/source/media/org.volantis/icon/2820262-cloud-networking/011-save.svg +1 -0
  640. package/source/media/org.volantis/icon/2820262-cloud-networking/012-image.svg +1 -0
  641. package/source/media/org.volantis/icon/2820262-cloud-networking/013-bar.svg +1 -0
  642. package/source/media/org.volantis/icon/2820262-cloud-networking/014-loading.svg +1 -0
  643. package/source/media/org.volantis/icon/2820262-cloud-networking/015-button.svg +1 -0
  644. package/source/media/org.volantis/icon/2820262-cloud-networking/016-save button.svg +1 -0
  645. package/source/media/org.volantis/icon/2820262-cloud-networking/017-download.svg +1 -0
  646. package/source/media/org.volantis/icon/2820262-cloud-networking/018-upload.svg +1 -0
  647. package/source/media/org.volantis/icon/2820262-cloud-networking/019-download.svg +1 -0
  648. package/source/media/org.volantis/icon/2820262-cloud-networking/020-upload.svg +1 -0
  649. package/source/media/org.volantis/icon/2820262-cloud-networking/021-download.svg +1 -0
  650. package/source/media/org.volantis/icon/2820262-cloud-networking/022-export.svg +1 -0
  651. package/source/media/org.volantis/icon/2820262-cloud-networking/023-download.svg +1 -0
  652. package/source/media/org.volantis/icon/2820262-cloud-networking/024-uploading.svg +1 -0
  653. package/source/media/org.volantis/icon/2820262-cloud-networking/025-download.svg +1 -0
  654. package/source/media/org.volantis/icon/2820262-cloud-networking/026-upload.svg +1 -0
  655. package/source/media/org.volantis/icon/2820262-cloud-networking/027-upload.svg +1 -0
  656. package/source/media/org.volantis/icon/2820262-cloud-networking/028-upload button.svg +1 -0
  657. package/source/media/org.volantis/icon/2820262-cloud-networking/029-up arrow.svg +1 -0
  658. package/source/media/org.volantis/icon/2820262-cloud-networking/030-up arrow.svg +1 -0
  659. package/source/media/org.volantis/icon/2820262-cloud-networking/031-upload button.svg +1 -0
  660. package/source/media/org.volantis/icon/2820262-cloud-networking/032-upload file.svg +1 -0
  661. package/source/media/org.volantis/icon/725277-social-media/001-livejournal.svg +75 -0
  662. package/source/media/org.volantis/icon/725277-social-media/002-linkedin.svg +67 -0
  663. package/source/media/org.volantis/icon/725277-social-media/003-ello.svg +60 -0
  664. package/source/media/org.volantis/icon/725277-social-media/004-hi5.svg +85 -0
  665. package/source/media/org.volantis/icon/725277-social-media/005-skype.svg +90 -0
  666. package/source/media/org.volantis/icon/725277-social-media/006-quora.svg +77 -0
  667. package/source/media/org.volantis/icon/725277-social-media/007-daily-motion.svg +58 -0
  668. package/source/media/org.volantis/icon/725277-social-media/008-air-bnb.svg +77 -0
  669. package/source/media/org.volantis/icon/725277-social-media/009-buzznet.svg +55 -0
  670. package/source/media/org.volantis/icon/725277-social-media/010-meetup.svg +130 -0
  671. package/source/media/org.volantis/icon/725277-social-media/011-diaspora.svg +64 -0
  672. package/source/media/org.volantis/icon/725277-social-media/012-bebo.svg +59 -0
  673. package/source/media/org.volantis/icon/725277-social-media/013-filmaffinity.svg +89 -0
  674. package/source/media/org.volantis/icon/725277-social-media/014-tinder.svg +57 -0
  675. package/source/media/org.volantis/icon/725277-social-media/015-skyrock.svg +74 -0
  676. package/source/media/org.volantis/icon/725277-social-media/016-snapchat.svg +86 -0
  677. package/source/media/org.volantis/icon/725277-social-media/017-nextdoor.svg +54 -0
  678. package/source/media/org.volantis/icon/725277-social-media/018-reverbnation.svg +54 -0
  679. package/source/media/org.volantis/icon/725277-social-media/019-tripadvisor.svg +85 -0
  680. package/source/media/org.volantis/icon/725277-social-media/020-snapfish.svg +72 -0
  681. package/source/media/org.volantis/icon/725277-social-media/021-path.svg +73 -0
  682. package/source/media/org.volantis/icon/725277-social-media/022-etsy.svg +65 -0
  683. package/source/media/org.volantis/icon/725277-social-media/023-medium.svg +63 -0
  684. package/source/media/org.volantis/icon/725277-social-media/024-renren.svg +88 -0
  685. package/source/media/org.volantis/icon/725277-social-media/025-xing.svg +57 -0
  686. package/source/media/org.volantis/icon/725277-social-media/026-tout.svg +61 -0
  687. package/source/media/org.volantis/icon/725277-social-media/027-twitter.svg +75 -0
  688. package/source/media/org.volantis/icon/725277-social-media/028-howcast.svg +64 -0
  689. package/source/media/org.volantis/icon/725277-social-media/029-yelp.svg +88 -0
  690. package/source/media/org.volantis/icon/725277-social-media/030-classmates.svg +105 -0
  691. package/source/media/org.volantis/icon/725277-social-media/031-deviantart.svg +50 -0
  692. package/source/media/org.volantis/icon/725277-social-media/032-foursquare.svg +62 -0
  693. package/source/media/org.volantis/icon/725277-social-media/033-kickstarter.svg +56 -0
  694. package/source/media/org.volantis/icon/725277-social-media/034-dots.svg +76 -0
  695. package/source/media/org.volantis/icon/725277-social-media/035-tagged.svg +67 -0
  696. package/source/media/org.volantis/icon/725277-social-media/036-periscope.svg +65 -0
  697. package/source/media/org.volantis/icon/725277-social-media/037-stumbleupon.svg +66 -0
  698. package/source/media/org.volantis/icon/725277-social-media/038-youtube.svg +62 -0
  699. package/source/media/org.volantis/icon/725277-social-media/039-lastfm.svg +76 -0
  700. package/source/media/org.volantis/icon/725277-social-media/040-reddit.svg +77 -0
  701. package/source/media/org.volantis/icon/725277-social-media/041-weheartit.svg +66 -0
  702. package/source/media/org.volantis/icon/725277-social-media/042-pinterest.svg +81 -0
  703. package/source/media/org.volantis/icon/725277-social-media/043-viadeo.svg +74 -0
  704. package/source/media/org.volantis/icon/725277-social-media/044-taringa.svg +59 -0
  705. package/source/media/org.volantis/icon/725277-social-media/045-google-plus.svg +84 -0
  706. package/source/media/org.volantis/icon/725277-social-media/046-uber.svg +54 -0
  707. package/source/media/org.volantis/icon/725277-social-media/047-sina-weibo.svg +116 -0
  708. package/source/media/org.volantis/icon/725277-social-media/048-vimeo.svg +76 -0
  709. package/source/media/org.volantis/icon/725277-social-media/049-facebook.svg +55 -0
  710. package/source/media/org.volantis/icon/725277-social-media/050-vk.svg +77 -0
  711. package/source/media/org.volantis/icon/725277-social-media/051-badoo.svg +60 -0
  712. package/source/media/org.volantis/icon/725277-social-media/052-dribbble.svg +113 -0
  713. package/source/media/org.volantis/icon/725277-social-media/053-delicious.svg +45 -0
  714. package/source/media/org.volantis/icon/725277-social-media/054-soundcloud.svg +67 -0
  715. package/source/media/org.volantis/icon/725277-social-media/055-tumblr.svg +54 -0
  716. package/source/media/org.volantis/icon/725277-social-media/056-myspace.svg +69 -0
  717. package/source/media/org.volantis/icon/725277-social-media/057-spotify.svg +88 -0
  718. package/source/media/org.volantis/icon/725277-social-media/058-flickr.svg +54 -0
  719. package/source/media/org.volantis/icon/725277-social-media/059-behance.svg +83 -0
  720. package/source/media/org.volantis/icon/725277-social-media/060-instagram.svg +61 -0
  721. package/source/media/org.volantis/icon/ui-interface-21/plus.svg +61 -0
  722. package/source/media/org.volantis/logo/128/facebook.png +0 -0
  723. package/source/media/org.volantis/logo/128/github.png +0 -0
  724. package/source/media/org.volantis/logo/128/google_icon.png +0 -0
  725. package/source/media/org.volantis/logo/128/google_logo.png +0 -0
  726. package/source/media/org.volantis/logo/128/googleplus.png +0 -0
  727. package/source/media/org.volantis/logo/128/linkedin.png +0 -0
  728. package/source/media/org.volantis/logo/128/qq.png +0 -0
  729. package/source/media/org.volantis/logo/128/qrcode.png +0 -0
  730. package/source/media/org.volantis/logo/128/qzone.png +0 -0
  731. package/source/media/org.volantis/logo/128/telegram.png +0 -0
  732. package/source/media/org.volantis/logo/128/twitter.png +0 -0
  733. package/source/media/org.volantis/logo/128/wechat.png +0 -0
  734. package/source/media/org.volantis/logo/128/weibo.png +0 -0
  735. package/source/media/org.volantis/logo/128/youdao.png +0 -0
  736. package/source/media/org.volantis/logo/256/chrome.png +0 -0
  737. package/source/media/org.volantis/logo/256/facebook.png +0 -0
  738. package/source/media/org.volantis/logo/256/firefox.png +0 -0
  739. package/source/media/org.volantis/logo/256/github.png +0 -0
  740. package/source/media/org.volantis/logo/256/google_icon.png +0 -0
  741. package/source/media/org.volantis/logo/256/google_logo.png +0 -0
  742. package/source/media/org.volantis/logo/256/googleplus.png +0 -0
  743. package/source/media/org.volantis/logo/256/linkedin.png +0 -0
  744. package/source/media/org.volantis/logo/256/qq.png +0 -0
  745. package/source/media/org.volantis/logo/256/qrcode.png +0 -0
  746. package/source/media/org.volantis/logo/256/qzone.png +0 -0
  747. package/source/media/org.volantis/logo/256/safari.png +0 -0
  748. package/source/media/org.volantis/logo/256/telegram.png +0 -0
  749. package/source/media/org.volantis/logo/256/twitter.png +0 -0
  750. package/source/media/org.volantis/logo/256/wechat.png +0 -0
  751. package/source/media/org.volantis/logo/256/weibo.png +0 -0
  752. package/source/media/org.volantis/logo/256/youdao.png +0 -0
  753. package/source/media/org.volantis/logo/64/chrome.png +0 -0
  754. package/source/media/org.volantis/logo/64/facebook.png +0 -0
  755. package/source/media/org.volantis/logo/64/firefox.png +0 -0
  756. package/source/media/org.volantis/logo/64/github.png +0 -0
  757. package/source/media/org.volantis/logo/64/google_icon.png +0 -0
  758. package/source/media/org.volantis/logo/64/google_logo.png +0 -0
  759. package/source/media/org.volantis/logo/64/googleplus.png +0 -0
  760. package/source/media/org.volantis/logo/64/linkedin.png +0 -0
  761. package/source/media/org.volantis/logo/64/qq.png +0 -0
  762. package/source/media/org.volantis/logo/64/qrcode.png +0 -0
  763. package/source/media/org.volantis/logo/64/qzone.png +0 -0
  764. package/source/media/org.volantis/logo/64/safari.png +0 -0
  765. package/source/media/org.volantis/logo/64/telegram.png +0 -0
  766. package/source/media/org.volantis/logo/64/twitter.png +0 -0
  767. package/source/media/org.volantis/logo/64/wechat.png +0 -0
  768. package/source/media/org.volantis/logo/64/weibo.png +0 -0
  769. package/source/media/org.volantis/logo/64/youdao.png +0 -0
  770. package/source/media/org.volantis/placeholder/c617bfd2497fcea598e621413e315c368f8d8e.svg +23 -0
  771. package/source/media/org.volantis/placeholder/d570170f4f12e1ee829ca0e85a7dffeb77343a.svg +29 -0
  772. package/source/media/org.volantis/placeholder/f107c4d98691c0e2f4592acf09f83acb46fdf7.svg +20 -0
  773. package/source/media/placeholder/404/1c830bfcd517d.svg +70 -0
  774. package/source/media/placeholder/LICENSE +21 -0
  775. package/source/media/placeholder/README.md +8 -0
  776. package/source/media/placeholder/arrow/064b95430caf4.svg +11 -0
  777. package/source/media/placeholder/arrow/f049bbd4e88ec.svg +11 -0
  778. package/source/media/placeholder/avatar/rect/2922565.svg +1 -0
  779. package/source/media/placeholder/avatar/round/3442055.svg +1 -0
  780. package/source/media/placeholder/avatar/round/3442075.svg +1 -0
  781. package/source/media/placeholder/avatar/round/3442091.svg +1 -0
  782. package/source/media/placeholder/avatar/round/547413.svg +116 -0
  783. package/source/media/placeholder/avatar/round/547420.svg +108 -0
  784. package/source/media/placeholder/avatar/round/rainbow64@2x.webp +0 -0
  785. package/source/media/placeholder/avatar/round/rainbow64@3x.webp +0 -0
  786. package/source/media/placeholder/badge/3279dd441df8b.svg +1 -0
  787. package/source/media/placeholder/cover/76b86c0226ffd.svg +95 -0
  788. package/source/media/placeholder/frame/iphone11.svg +1 -0
  789. package/source/media/placeholder/image/2659360.svg +1 -0
  790. package/source/media/placeholder/link/8f277b4ee0ecd.svg +1 -0
  791. package/source/media/placeholder/social/08a41b181ce68.svg +27 -0
  792. package/source/media/placeholder/social/25678f144c438.svg +65 -0
  793. package/source/media/placeholder/social/3616429.svg +1 -0
  794. package/source/media/placeholder/social/3845874.svg +114 -0
  795. package/source/media/placeholder/social/80c07e4dbb303.svg +1 -0
  796. package/source/media/placeholder/social/8411ed322ced6.svg +21 -0
  797. package/source/media/placeholder/social/942ebbf1a4b91.svg +43 -0
  798. package/source/media/placeholder/social/a1b00e20f425d.svg +39 -0
  799. package/source/media/placeholder/social/b32ef3da1162a.svg +55 -0
  800. package/source/media/placeholder/social/cf1ae151f9e83.svg +110 -0
  801. package/source/media/twemoji/LICENSE +19 -0
  802. package/source/media/twemoji/README.md +256 -0
  803. package/source/media/twemoji/assets/svg/1f389.svg +1 -0
  804. package/source/media/twemoji/assets/svg/1f396.svg +1 -0
  805. package/source/media/twemoji/assets/svg/1f4cc.svg +1 -0
  806. package/source/media/twemoji/assets/svg/1f4f0.svg +1 -0
  807. package/source/media/twemoji/assets/svg/1f516.svg +1 -0
  808. package/source/media/twemoji/assets/svg/1f5c3.svg +1 -0
  809. package/source/media/twemoji/assets/svg/1f9ec.svg +1 -0
  810. package/.eslintrc.json +0 -111
  811. package/layout/_partial/rightmenu.ejs +0 -199
  812. package/layout/_partial/scripts/cover.ejs +0 -45
  813. package/layout/_partial/scripts/darkmode.ejs +0 -85
  814. package/layout/_partial/scripts/issues.ejs +0 -18
  815. package/layout/_partial/scripts/search.ejs +0 -62
  816. package/layout/_partial/snackbar.ejs +0 -22
  817. package/layout/_third-party/aplayer/script.ejs +0 -26
  818. package/layout/_third-party/clipboard/script.ejs +0 -54
  819. package/layout/_third-party/comments/disqus/layout.ejs +0 -5
  820. package/layout/_third-party/comments/disqus/script.ejs +0 -90
  821. package/layout/_third-party/comments/disqusjs/layout.ejs +0 -1
  822. package/layout/_third-party/comments/disqusjs/script.ejs +0 -34
  823. package/layout/_third-party/comments/gitalk/layout.ejs +0 -1
  824. package/layout/_third-party/comments/gitalk/script.ejs +0 -22
  825. package/layout/_third-party/comments/hashover/layout.ejs +0 -2
  826. package/layout/_third-party/comments/hashover/script.ejs +0 -1
  827. package/layout/_third-party/comments/isso/layout.ejs +0 -1
  828. package/layout/_third-party/comments/isso/script.ejs +0 -1
  829. package/layout/_third-party/comments/livere/layout.ejs +0 -3
  830. package/layout/_third-party/comments/livere/script.ejs +0 -10
  831. package/layout/_third-party/comments/minivaline/layout.ejs +0 -3
  832. package/layout/_third-party/comments/minivaline/script.ejs +0 -34
  833. package/layout/_third-party/comments/twikoo/layout.ejs +0 -3
  834. package/layout/_third-party/comments/twikoo/script.ejs +0 -32
  835. package/layout/_third-party/comments/valine/layout.ejs +0 -3
  836. package/layout/_third-party/comments/vssue/layout.ejs +0 -1
  837. package/layout/_third-party/comments/vssue/script.ejs +0 -21
  838. package/layout/_third-party/comments/waline/layout.ejs +0 -3
  839. package/layout/_third-party/comments/waline/script.ejs +0 -33
  840. package/layout/_third-party/fancybox/script.ejs +0 -61
  841. package/layout/_third-party/highlightjs/script.ejs +0 -11
  842. package/layout/_third-party/pjax/index.ejs +0 -78
  843. package/layout/_third-party/pjax/pdata.ejs +0 -53
  844. package/layout/_third-party/scrollreveal/script.ejs +0 -21
  845. package/layout/_third-party/tidio/script.ejs +0 -3
  846. package/layout/artitalk.ejs +0 -13
  847. package/layout/bb.ejs +0 -10
  848. package/package-lock.json +0 -916
  849. package/scripts/tags/issues.js +0 -41
  850. package/source/css/_highlight/index.styl +0 -316
  851. package/source/css/_layout/friends.styl +0 -79
  852. package/source/css/_plugins/clipboard.styl +0 -37
  853. package/source/css/_plugins/darkmode.styl +0 -9
  854. package/source/css/_plugins/twikoo.styl +0 -21
  855. package/source/css/_tag-plugins/simpleuser.styl +0 -21
  856. package/source/css/_tag-plugins/site-card.styl +0 -70
  857. package/source/js/aplayer.js +0 -167
  858. package/source/js/issues.js +0 -186
  859. package/source/js/search/algolia.js +0 -344
  860. package/source/js/search/azure.js +0 -355
  861. package/source/js/search/baidu.js +0 -340
  862. package/source/js/search/google.js +0 -339
@@ -0,0 +1,86 @@
1
+ <script>
2
+ // https://web.dev/content-visibility/
3
+ // https://www.caniuse.com/?search=content-visibility
4
+ // https://infrequently.org/2020/12/content-visibility-scroll-fix/
5
+ // https://infrequently.org/2020/12/resize-resilient-deferred-rendering/
6
+
7
+ // 备注 目前已知的问题:
8
+ // 动态修改导致的内容高度变化(例如评论框异步渲染的外部盒子高度变化) 无法提前获知, 进而导致的首次滚动条跳动无法去除 (wontfix) 事实上不使用 content-visibility 也会有跳动, 不过是比使用 content-visibility 跳动提前
9
+ // scrollreveal 插件潜在问题 目前尚不明确
10
+
11
+ let eqIsh = (a, b, fuzz = 2) => {
12
+ return Math.abs(a - b) <= fuzz;
13
+ };
14
+
15
+ let rectNotEQ = (a, b) => {
16
+ return !eqIsh(a.width, b.width) || !eqIsh(a.height, b.height);
17
+ };
18
+
19
+ // Keep a map of elements and the dimensions of
20
+ // their place-holders, re-setting the element's
21
+ // intrinsic size when we get updated measurements
22
+ // from observers.
23
+ let spaced = new WeakMap();
24
+
25
+ // Only call this when known cheap, post layout
26
+ let reserveSpace = (el, rect = el.getClientBoundingRect()) => {
27
+ let old = spaced.get(el);
28
+ // Set intrinsic size to prevent jumping on un-painting:
29
+ // https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override
30
+ if (!old || rectNotEQ(old, rect)) {
31
+ spaced.set(el, rect);
32
+ el.style["contain-intrinsic-size"] = `${rect.width}px ${rect.height}px`;
33
+ }
34
+ };
35
+
36
+ let iObs = new IntersectionObserver(
37
+ (entries, o) => {
38
+ entries.forEach((entry) => {
39
+ // We don't care if the element is intersecting or
40
+ // has been laid out as our page structure ensures
41
+ // they'll get the right width.
42
+ reserveSpace(entry.target, entry.boundingClientRect);
43
+ });
44
+ },
45
+ { rootMargin: "500px 0px 500px 0px" }
46
+ );
47
+
48
+ let rObs = new ResizeObserver((entries, o) => {
49
+ entries.forEach((entry) => {
50
+ reserveSpace(entry.target, entry.contentRect);
51
+ });
52
+ });
53
+
54
+ let resizeResilientDeferredRendering = (Selector) => {
55
+ let articles = document.querySelectorAll(Selector);
56
+
57
+ if (articles.length) {
58
+ articles.forEach((el) => {
59
+ iObs.observe(el);
60
+ rObs.observe(el);
61
+ });
62
+
63
+ // Workaround for Chrome bug, part 2.
64
+ //
65
+ // Re-enable browser management of rendering for the
66
+ // first article after the first paint. Double-rAF
67
+ // to ensure we get called after a layout.
68
+ requestAnimationFrame(() => {
69
+ requestAnimationFrame(() => {
70
+ articles[0].style["content-visibility"] = "auto";
71
+ });
72
+ });
73
+ }
74
+ };
75
+
76
+ let contentVisibilityScrollFix = () => {
77
+ if (!("content-visibility" in document.documentElement.style)) {
78
+ return;
79
+ }
80
+ resizeResilientDeferredRendering(".post-story");
81
+ resizeResilientDeferredRendering("article");
82
+ resizeResilientDeferredRendering(".post-wrapper");
83
+ };
84
+ contentVisibilityScrollFix();
85
+ volantis.pjax.push(contentVisibilityScrollFix);
86
+ </script>
@@ -1,110 +1,388 @@
1
1
  <script>
2
- /************这个文件存放不需要重载的全局变量和全局函数*********/
3
- window.volantis={};
4
- window.volantis.loadcss=document.getElementById("loadcss");
5
- /******************** Pjax ********************************/
6
- function VPjax(){
7
- this.list=[] // 存放回调函数
8
- this.start=()=>{
9
- for(var i=0;i<this.list.length;i++){
10
- this.list[i].run();
11
- }
12
- }
13
- this.push=(fn,name)=>{
14
- var f=new PjaxItem(fn,name);
15
- this.list.push(f);
16
- }
17
- // 构造一个可以run的对象
18
- function PjaxItem(fn,name){
19
- // 函数名称
20
- this.name = name || fn.name
21
- // run方法
22
- this.run=()=>{
23
- fn()
24
- }
25
- }
26
- }
27
- volantis.pjax={}
28
- volantis.pjax.method={
29
- complete: new VPjax(),
30
- error: new VPjax(),
31
- send: new VPjax()
32
- }
33
- volantis.pjax={
34
- ...volantis.pjax,
35
- push: volantis.pjax.method.complete.push,
36
- error: volantis.pjax.method.error.push,
37
- send: volantis.pjax.method.send.push
38
- }
39
- /********************脚本懒加载函数********************************/
40
- // 已经加入了setTimeout
41
- function loadScript(src, cb) {
42
- setTimeout(function() {
43
- var HEAD = document.getElementsByTagName('head')[0] || document.documentElement;
44
- var script = document.createElement('script');
45
- script.setAttribute('type','text/javascript');
46
- if (cb) script.onload = cb;
47
- script.setAttribute('src', src);
48
- HEAD.appendChild(script);
49
- });
50
- }
51
- //https://github.com/filamentgroup/loadCSS
52
- var loadCSS = function( href, before, media, attributes ){
53
- var doc = window.document;
54
- var ss = doc.createElement( "link" );
55
- var ref;
56
- if( before ){
57
- ref = before;
58
- }
59
- else {
60
- var refs = ( doc.body || doc.getElementsByTagName( "head" )[ 0 ] ).childNodes;
61
- ref = refs[ refs.length - 1];
62
- }
63
- var sheets = doc.styleSheets;
64
- if( attributes ){
65
- for( var attributeName in attributes ){
66
- if( attributes.hasOwnProperty( attributeName ) ){
67
- ss.setAttribute( attributeName, attributes[attributeName] );
68
- }
69
- }
70
- }
71
- ss.rel = "stylesheet";
72
- ss.href = href;
73
- ss.media = "only x";
74
- function ready( cb ){
75
- if( doc.body ){
76
- return cb();
77
- }
78
- setTimeout(function(){
79
- ready( cb );
80
- });
81
- }
82
- ready( function(){
83
- ref.parentNode.insertBefore( ss, ( before ? ref : ref.nextSibling ) );
84
- });
85
- var onloadcssdefined = function( cb ){
86
- var resolvedHref = ss.href;
87
- var i = sheets.length;
88
- while( i-- ){
89
- if( sheets[ i ].href === resolvedHref ){
90
- return cb();
91
- }
92
- }
93
- setTimeout(function() {
94
- onloadcssdefined( cb );
95
- });
96
- };
97
- function loadCB(){
98
- if( ss.addEventListener ){
99
- ss.removeEventListener( "load", loadCB );
100
- }
101
- ss.media = media || "all";
102
- }
103
- if( ss.addEventListener ){
104
- ss.addEventListener( "load", loadCB);
105
- }
106
- ss.onloadcssdefined = onloadcssdefined;
107
- onloadcssdefined( loadCB );
108
- return ss;
109
- };
2
+ /************这个文件存放不需要重载的全局变量和全局函数*********/
3
+ window.volantis = {}; // volantis 全局变量
4
+ volantis.debug = <%- theme.debug %>; // 开启调试模式
5
+ volantis.dom = {}; // 页面Dom see: /source/js/app.js etc.
6
+
7
+ volantis.GLOBAL_CONFIG ={
8
+ cdn: <%- JSON.stringify(theme.cdn.map) %>,
9
+ default: <%- JSON.stringify(theme.default) %>,
10
+ lastupdate: new Date('<%- new Date() %>'),
11
+ sidebar: {
12
+ for_page: <%- JSON.stringify(theme.sidebar.for_page) %>,
13
+ for_post: <%- JSON.stringify(theme.sidebar.for_post) %>,
14
+ webinfo: {
15
+ lastupd: {
16
+ enable: <%- JSON.stringify(theme.sidebar.widget_library.webinfo.type.lastupd.enable) %>,
17
+ friendlyShow: <%- JSON.stringify(theme.sidebar.widget_library.webinfo.type.lastupd.friendlyShow) %>
18
+ },
19
+ runtime: {
20
+ data: <%- JSON.stringify(theme.sidebar.widget_library.webinfo.type.runtime.data) %>,
21
+ unit: <%- JSON.stringify(theme.sidebar.widget_library.webinfo.type.runtime.unit) %>
22
+ }
23
+ }
24
+ },
25
+ plugins: {
26
+ message: <%- JSON.stringify(theme.plugins.message) %>,
27
+ fancybox: <%- JSON.stringify(theme.plugins.fancybox) %>,
28
+ aplayer: {
29
+ id: <%- JSON.stringify(theme.plugins.aplayer.id) %>,
30
+ enable:<%- JSON.stringify(theme.plugins.aplayer.enable) %>
31
+ },
32
+ rightmenu: {
33
+ faicon: <%- JSON.stringify(theme.rightmenu.faicon) %>,
34
+ layout: <%- JSON.stringify(theme.rightmenu.layout) %>,
35
+ music_alwaysShow: <%- JSON.stringify(theme.rightmenu.music.alwaysShow) %>,
36
+ customPicUrl: <%- JSON.stringify(theme.rightmenu.customPicUrl) %>,
37
+ print: <%- JSON.stringify(theme.rightmenu.print.defaultStyles) %>
38
+ }
39
+ }
40
+ }
41
+
42
+ /******************** volantis.EventListener ********************************/
43
+ // 事件监听器 see: /source/js/app.js
44
+ volantis.EventListener = {}
45
+ // 这里存放pjax切换页面时将被移除的事件监听器
46
+ volantis.EventListener.list = []
47
+ //构造方法
48
+ function volantisEventListener(type, f, ele) {
49
+ this.type = type
50
+ this.f = f
51
+ this.ele = ele
52
+ }
53
+ // 移除事件监听器
54
+ volantis.EventListener.remove = () => {
55
+ volantis.EventListener.list.forEach(function (i) {
56
+ i.ele.removeEventListener(i.type, i.f, false)
57
+ })
58
+ volantis.EventListener.list = []
59
+ }
60
+ /******************** volantis.dom.$ ********************************/
61
+ // 注:这里没有选择器,也没有forEach一次只处理一个dom,这里重新封装主题常用的dom方法,返回的是dom对象,对象包含了以下方法,同时保留dom的原生API
62
+ function volantisDom(ele) {
63
+ if (!ele) ele = document.createElement("div")
64
+ this.ele = ele;
65
+ // ==============================================================
66
+ this.ele.find = (c) => {
67
+ let q = this.ele.querySelector(c)
68
+ if (q)
69
+ return new volantisDom(q)
70
+ }
71
+ // ==============================================================
72
+ this.ele.hasClass = (c) => {
73
+ return this.ele.className.match(new RegExp('(\\s|^)' + c + '(\\s|$)'));
74
+ }
75
+ this.ele.addClass = (c) => {
76
+ this.ele.classList.add(c);
77
+ return this.ele
78
+ }
79
+ this.ele.removeClass = (c) => {
80
+ this.ele.classList.remove(c);
81
+ return this.ele
82
+ }
83
+ this.ele.toggleClass = (c) => {
84
+ if (this.ele.hasClass(c)) {
85
+ this.ele.removeClass(c)
86
+ } else {
87
+ this.ele.addClass(c)
88
+ }
89
+ return this.ele
90
+ }
91
+ // ==============================================================
92
+ // 参数 r 为 true 表示pjax切换页面时事件监听器将被移除,false不移除
93
+ this.ele.on = (c, f, r = 1) => {
94
+ this.ele.addEventListener(c, f, false)
95
+ if (r) {
96
+ volantis.EventListener.list.push(new volantisEventListener(c, f, this.ele))
97
+ }
98
+ return this.ele
99
+ }
100
+ this.ele.click = (f, r) => {
101
+ this.ele.on("click", f, r)
102
+ return this.ele
103
+ }
104
+ this.ele.scroll = (f, r) => {
105
+ this.ele.on("scroll", f, r)
106
+ return this.ele
107
+ }
108
+ // ==============================================================
109
+ this.ele.html = (c) => {
110
+ // if(c=== undefined){
111
+ // return this.ele.innerHTML
112
+ // }else{
113
+ this.ele.innerHTML = c
114
+ return this.ele
115
+ // }
116
+ }
117
+ // ==============================================================
118
+ this.ele.hide = (c) => {
119
+ this.ele.style.display = "none"
120
+ return this.ele
121
+ }
122
+ this.ele.show = (c) => {
123
+ this.ele.style.display = "block"
124
+ return this.ele
125
+ }
126
+ // ==============================================================
127
+ return this.ele
128
+ }
129
+ volantis.dom.$ = (ele) => {
130
+ return !!ele ? new volantisDom(ele) : null;
131
+ }
132
+ /******************** RunItem ********************************/
133
+ function RunItem() {
134
+ this.list = []; // 存放回调函数
135
+ this.start = () => {
136
+ for (var i = 0; i < this.list.length; i++) {
137
+ this.list[i].run();
138
+ }
139
+ };
140
+ this.push = (fn, name, setRequestAnimationFrame = true) => {
141
+ let myfn = fn
142
+ if (setRequestAnimationFrame) {
143
+ myfn = ()=>{
144
+ volantis.requestAnimationFrame(fn)
145
+ }
146
+ }
147
+ var f = new Item(myfn, name);
148
+ this.list.push(f);
149
+ };
150
+ this.remove = (name) =>{
151
+ for (let index = 0; index < this.list.length; index++) {
152
+ const e = this.list[index];
153
+ if (e.name == name) {
154
+ this.list.splice(index,1);
155
+ }
156
+ }
157
+ }
158
+ // 构造一个可以run的对象
159
+ function Item(fn, name) {
160
+ // 函数名称
161
+ this.name = name || fn.name;
162
+ // run方法
163
+ this.run = () => {
164
+ try {
165
+ fn()
166
+ } catch (error) {
167
+ console.log(error);
168
+ }
169
+ };
170
+ }
171
+ }
172
+ /******************** Pjax ********************************/
173
+ // /layout/_plugins/pjax/index.ejs
174
+ // volantis.pjax.send(callBack[,"callBackName"]) 传入pjax:send回调函数
175
+ // volantis.pjax.push(callBack[,"callBackName"]) 传入pjax:complete回调函数
176
+ // volantis.pjax.error(callBack[,"callBackName"]) 传入pjax:error回调函数
177
+ volantis.pjax = {};
178
+ volantis.pjax.method = {
179
+ complete: new RunItem(),
180
+ error: new RunItem(),
181
+ send: new RunItem(),
182
+ };
183
+ volantis.pjax = {
184
+ ...volantis.pjax,
185
+ push: volantis.pjax.method.complete.push,
186
+ error: volantis.pjax.method.error.push,
187
+ send: volantis.pjax.method.send.push,
188
+ };
189
+ /******************** Dark Mode ********************************/
190
+ // /layout/_partial/scripts/darkmode.ejs
191
+ // volantis.dark.mode 当前模式 dark or light
192
+ // volantis.dark.toggle() 暗黑模式触发器
193
+ // volantis.dark.push(callBack[,"callBackName"]) 传入触发器回调函数
194
+ volantis.dark = {};
195
+ volantis.dark.method = {
196
+ toggle: new RunItem(),
197
+ };
198
+ volantis.dark = {
199
+ ...volantis.dark,
200
+ push: volantis.dark.method.toggle.push,
201
+ };
202
+ /******************** Message ********************************/
203
+ // VolantisApp.message
204
+ /******************** isMobile ********************************/
205
+ // /source/js/app.js
206
+ // volantis.isMobile
207
+ // volantis.isMobileOld
208
+ /********************脚本动态加载函数********************************/
209
+ // volantis.js(src, cb) cb 可以传入onload回调函数 或者 JSON对象 例如: volantis.js("src", ()=>{}) 或 volantis.js("src", {defer:true,onload:()=>{}})
210
+ // volantis.css(src)
211
+
212
+ // 返回Promise对象,如下方法同步加载资源,这利于处理文件资源之间的依赖关系,例如:APlayer 需要在 MetingJS 之前加载
213
+ // (async () => {
214
+ // await volantis.js("...theme.plugins.aplayer.js.aplayer...")
215
+ // await volantis.js("...theme.plugins.aplayer.js.meting...")
216
+ // })();
217
+
218
+ // 已经加入了setTimeout
219
+ volantis.js = (src, cb) => {
220
+ return new Promise(resolve => {
221
+ setTimeout(function () {
222
+ var HEAD = document.getElementsByTagName("head")[0] || document.documentElement;
223
+ var script = document.createElement("script");
224
+ script.setAttribute("type", "text/javascript");
225
+ if (cb) {
226
+ if (JSON.stringify(cb)) {
227
+ for (let p in cb) {
228
+ if (p == "onload") {
229
+ script[p] = () => {
230
+ cb[p]()
231
+ resolve()
232
+ }
233
+ } else {
234
+ script[p] = cb[p]
235
+ script.onload = resolve
236
+ }
237
+ }
238
+ } else {
239
+ script.onload = () => {
240
+ cb()
241
+ resolve()
242
+ };
243
+ }
244
+ } else {
245
+ script.onload = resolve
246
+ }
247
+ script.setAttribute("src", src);
248
+ HEAD.appendChild(script);
249
+ });
250
+ });
251
+ }
252
+ volantis.css = (src) => {
253
+ return new Promise(resolve => {
254
+ setTimeout(function () {
255
+ var link = document.createElement('link');
256
+ link.rel = "stylesheet";
257
+ link.href = src;
258
+ link.onload = resolve;
259
+ document.getElementsByTagName("head")[0].appendChild(link);
260
+ });
261
+ });
262
+ }
263
+ /********************按需加载的插件********************************/
264
+ // volantis.import.jQuery().then(()=>{})
265
+ volantis.import = {
266
+ jQuery: () => {
267
+ if (typeof jQuery == "undefined") {
268
+ return volantis.js("<%- theme.plugins.jquery %>")
269
+ } else {
270
+ return new Promise(resolve => {
271
+ resolve()
272
+ });
273
+ }
274
+ }
275
+ }
276
+ /********************** requestAnimationFrame ********************************/
277
+ // 1、requestAnimationFrame 会把每一帧中的所有 DOM 操作集中起来,在一次重绘或回流中就完成,并且重绘或回流的时间间隔紧紧跟随浏览器的刷新频率,一般来说,这个频率为每秒60帧。
278
+ // 2、在隐藏或不可见的元素中,requestAnimationFrame 将不会进行重绘或回流,这当然就意味着更少的的 cpu,gpu 和内存使用量。
279
+ volantis.requestAnimationFrame = (fn)=>{
280
+ if (!window.requestAnimationFrame) {
281
+ window.requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame;
282
+ }
283
+ window.requestAnimationFrame(fn)
284
+ }
285
+ /************************ layoutHelper *****************************************/
286
+ volantis.layoutHelper = (helper, html, opt)=>{
287
+ opt = Object.assign({clean:false, pjax:true}, opt)
288
+ function myhelper(helper, html, clean) {
289
+ volantis.tempDiv = document.createElement("div");
290
+ volantis.tempDiv.innerHTML = html;
291
+ let layoutHelper = document.querySelector("#layoutHelper-"+helper)
292
+ if (layoutHelper) {
293
+ if (clean) {
294
+ layoutHelper.innerHTML = ""
295
+ }
296
+ layoutHelper.append(volantis.tempDiv);
297
+ }
298
+ }
299
+ myhelper(helper, html, opt.clean)
300
+ if (opt.pjax) {
301
+ volantis.pjax.push(()=>{
302
+ myhelper(helper, html, opt.clean)
303
+ },"layoutHelper-"+helper)
304
+ }
305
+ }
306
+ /****************************** 滚动事件处理 ****************************************/
307
+ volantis.scroll = {
308
+ engine: new RunItem(),
309
+ unengine: new RunItem(),
310
+ };
311
+ volantis.scroll = {
312
+ ...volantis.scroll,
313
+ push: volantis.scroll.engine.push,
314
+ };
315
+ // 滚动条距离顶部的距离
316
+ volantis.scroll.getScrollTop = () =>{
317
+ let scrollPos;
318
+ if (window.pageYOffset) {
319
+ scrollPos = window.pageYOffset;
320
+ } else if (document.compatMode && document.compatMode != 'BackCompat') {
321
+ scrollPos = document.documentElement.scrollTop;
322
+ } else if (document.body) {
323
+ scrollPos = document.body.scrollTop;
324
+ }
325
+ return scrollPos;
326
+ }
327
+ // 使用 requestAnimationFrame 处理滚动事件
328
+ // `volantis.scroll.del` 中存储了一个数值, 该数值检测一定时间间隔内滚动条滚动的位移, 数值的检测频率是浏览器的刷新频率. 数值为正数时, 表示向下滚动. 数值为负数时, 表示向上滚动.
329
+ volantis.scroll.handleScrollEvents = () => {
330
+ volantis.scroll.lastScrollTop = volantis.scroll.getScrollTop()
331
+ function loop() {
332
+ const scrollTop = volantis.scroll.getScrollTop();
333
+ if (volantis.scroll.lastScrollTop !== scrollTop) {
334
+ volantis.scroll.del = scrollTop - volantis.scroll.lastScrollTop;
335
+ volantis.scroll.lastScrollTop = scrollTop;
336
+ // if (volantis.scroll.del > 0) {
337
+ // console.log("向下滚动");
338
+ // } else {
339
+ // console.log("向上滚动");
340
+ // }
341
+ volantis.scroll.engine.start();
342
+ }else{
343
+ volantis.scroll.unengine.start();
344
+ }
345
+ volantis.requestAnimationFrame(loop)
346
+ }
347
+ volantis.requestAnimationFrame(loop)
348
+ }
349
+ volantis.scroll.handleScrollEvents()
350
+ // 触发页面滚动至目标元素位置
351
+ volantis.scroll.to = (ele, option = {}) =>{
352
+ // 默认配置
353
+ opt = {
354
+ top: ele.getBoundingClientRect().top + document.documentElement.scrollTop,
355
+ behavior: "<%- theme.scroll_smooth ? 'smooth' : 'instant' %>"
356
+ }
357
+ // 定义配置
358
+ if ("top" in option) {
359
+ opt.top = option.top
360
+ }
361
+ if ("behavior" in option) {
362
+ opt.behavior = option.behavior
363
+ }
364
+ if ("addTop" in option) {
365
+ opt.top += option.addTop
366
+ }
367
+ if (!("observerDic" in option)) {
368
+ option.observerDic = 25
369
+ }
370
+ // 滚动
371
+ window.scrollTo(opt);
372
+ // 监视器
373
+ // 监视并矫正元素滚动到指定位置
374
+ // 目前用于处理 toc 部分 lazyload 引起的 cls 导致的定位失败问题
375
+ if (option.observer) {
376
+ volantis.scroll.unengine.push(()=>{
377
+ let me = ele.getBoundingClientRect().top
378
+ if(!(me >= -option.observerDic && me <= option.observerDic)){
379
+ volantis.scroll.to(ele, option)
380
+ }else{
381
+ volantis.scroll.unengine.remove("unengineObserver")
382
+ }
383
+ },"unengineObserver")
384
+ }
385
+ }
386
+ /******************************************************************************/
387
+ /******************************************************************************/
110
388
  </script>