diff --git a/assets/js/next-boot.js b/assets/js/next-boot.js index 9c2c761..0e5104a 100644 --- a/assets/js/next-boot.js +++ b/assets/js/next-boot.js @@ -65,6 +65,7 @@ NexT.boot.refresh = function() { if (NexT.CONFIG.page.toc) NexT.utils.registerSidebarTOC(); if (NexT.CONFIG.page.expired) NexT.utils.calPostExpiredDate(); + if (NexT.CONFIG.page.music) NexT.utils.registerAPlayer(); NexT.utils.registerCopyCode(); NexT.utils.registerImageViewer(); diff --git a/assets/js/utils.js b/assets/js/utils.js index 19e6a63..bd15af3 100644 --- a/assets/js/utils.js +++ b/assets/js/utils.js @@ -7,6 +7,16 @@ HTMLElement.prototype.wrap = function (wrapper) { }; NexT.utils = { + registerAPlayer: function () { + this.getStyle( + NexT.utils.getCDNResource(NexT.CONFIG.page.aplayer.css) + ); + + NexT.CONFIG.page.aplayer.js.forEach(function (js) { + NexT.utils.getScript(NexT.utils.getCDNResource(js), true); + }); + + }, calPostExpiredDate: function() { const postMetaDom = document.querySelector('.post-meta-container'); let postTime = postMetaDom.querySelector('time[itemprop="dateCreated datePublished"]').getAttribute("datetime"); diff --git a/data/resources.yaml b/data/resources.yaml index 90c3b59..a8ad1cd 100644 --- a/data/resources.yaml +++ b/data/resources.yaml @@ -216,4 +216,19 @@ plugins: alias_name: waline version: 3.3.0 file: dist/comment.js - alias: "@waline/client" \ No newline at end of file + alias: "@waline/client" + # 音乐播放器 + music: + js: + - name: aplayer + version: 1.10.1 + file: dist/APlayer.min.js + + - name: meting + version: 2.0.1 + file: dist/Meting.min.js + + css: + name: aplayer + version: 1.10.1 + file: dist/APlayer.min.css \ No newline at end of file diff --git a/exampleSite/content/post/shortcodes.md b/exampleSite/content/post/shortcodes.md index 2f179bf..2f61483 100644 --- a/exampleSite/content/post/shortcodes.md +++ b/exampleSite/content/post/shortcodes.md @@ -13,6 +13,8 @@ tags: - 短代码 - 语法 url: "demo/shortcodes.html" +toc: true +music: true --- 虽然 `Markdown` 语法已经非常丰富能够满足我们写文章的绝大部分需求,但是为更好的对文章内容进行更友好的排版,为引设计一套自定义的短语,便于在使用时能够快速引用。 @@ -99,4 +101,53 @@ url: "demo/shortcodes.html" 或者 {{}} ``` -{{< bilibili id=BV1Sx411T7QQ >}} \ No newline at end of file +{{}} + +## 音乐播放器 + +基于[APlayer](https://github.com/DIYgod/APlayer)和[MetingJS](https://github.com/metowolf/MetingJS)库实现见面内嵌的响应式音乐播放器,自动识别的音乐平台URL,包括:`netease`、 `tencent`、 `kugou`、 `baidu` 和 `xiami` 平台,也可以支持用户自定义的音乐源。其他相关的参数说明如下: + +| 参数名 | 默认 | 说明 | +| :----: | :------: | :--- | +| **id** | _必选_ | 音乐 ID,即音乐在音乐平台的唯一标识符 | +| **server** | _必选_ | 音乐平台,支持 `netease`、 `tencent`、 `kugou`、 `baidu` 和 `xiami` 平台 | +| **type** | _必选_ | 播放类型,目前支持 `song` 、 `playlist`、 `album`、 `search` 和 `artist` 类型 | +| **auto** | _可选_ | 音乐的地址,仅支持 server 参数中的平台 | +| **theme** | `#448aff` | 播放器的主题色,默认为 `#448aff` | +| **url** | 空 | 自定的音乐源 URL,默认为空 | +| **name** | 空 | 音乐名称,默认为空 | +| **artist** | 空 | 音乐作者,默认为空 | +| **cover** | 空 | 音乐封面 URL,默认为空 | +| **fixed** | `false` | 固定播放器,默认为 `false` | +| **mini** | `false` | 显示小播放器,默认为 `false` | +| **autoplay** | `false` | 自动播放,默认为 `false` | +| **loop** | `all` | 循环播放,支持`all`、`one` 和 `none`,默认为 `all` | +| **order** | `list` | 播放顺序`list` 和 `random`,支持默认为 `list` | +| **volume** | `0.7` | 音量,默认为 `0.7` | +| **mutex** | `true` | 有多个音乐播放时,是否只开启当前播放器,默认为 `true` | +| **list-folded** | `false` | 列表折叠,默认为 `false` | +| **list-max-height** | `340px` | 列表最大高度,默认为:340px | + +### 单曲播放 + +```markdown +{{}} +``` + +{{< music theme="#2980b9" server="netease" type="song" id="1868553" mini="true" >}} + +### 列表播放 + +```markdown +{{}} +``` + +{{< music server="netease" type="playlist" id="769332917" list-max-height="140px" >}} + +### 自定义音乐源 + +```markdown +{{}} +``` + +{{< music url="https://ri-sycdn.kuwo.cn/ea345253b94e7ad564e6fb0cdf37fee6/677b6574/resource/n1/87/56/4272600974.mp3" name="天空之城" artist="宫崎骏" cover="http://img4.kuwo.cn/star/starheads/500/27/66/2532818318.jpg" autoplay="true" >}} diff --git a/layouts/partials/head/config.html b/layouts/partials/head/config.html index d4887e9..d0448e8 100644 --- a/layouts/partials/head/config.html +++ b/layouts/partials/head/config.html @@ -3,11 +3,21 @@ "isPage" .IsPage "comments" (.Scratch.Get "isComment") "toc" (default .Site.Params.toc.enable .Params.Toc) + "music" .Params.music "permalink" (.Page.Permalink | absURL) "path" (.Page.Permalink | path.Base) "title" .Page.Title }} +{{/** Append APlayer plugin */}} +{{ if .Params.music }} +{{ $aplayer := dict + "js" $.Site.Data.resources.plugins.music.js + "css" $.Site.Data.resources.plugins.music.css +}} +{{ $pageCfg = merge $pageCfg (dict "aplayer" $aplayer) }} +{{ end }} + {{/* Append post expired config */}} {{ $expired := default .Site.Params.PostMeta.expired .Params.Expired }} {{ $pageCfg = merge $pageCfg (dict "expired" $expired) }} diff --git a/layouts/partials/init.html b/layouts/partials/init.html index c47e69c..38b66ee 100644 --- a/layouts/partials/init.html +++ b/layouts/partials/init.html @@ -22,7 +22,7 @@ {{ $router := dict }} {{ if eq $vendor "local" }} - {{ $router = dict "url" (printf "%s3rd" .Site.BaseURL) "name" $vendor "type" "modern" }} + {{ $router = dict "url" (printf "%sjs/3rd" .Site.BaseURL) "name" $vendor "type" "modern" }} {{ else }} {{ range .Site.Data.resources.vendors }} {{ if eq .name $vendor }} diff --git a/layouts/shortcodes/music.html b/layouts/shortcodes/music.html new file mode 100644 index 0000000..3512921 --- /dev/null +++ b/layouts/shortcodes/music.html @@ -0,0 +1,22 @@ +{{- $theme := "#448aff" -}} +{{- $theme = .Get "theme" | default $theme -}} + + \ No newline at end of file diff --git a/static/js/.gitkeep b/static/js/.gitkeep new file mode 100644 index 0000000..1fbcb4b --- /dev/null +++ b/static/js/.gitkeep @@ -0,0 +1 @@ +// Keep the folder under git version control \ No newline at end of file diff --git a/static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.js b/static/js/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.js similarity index 100% rename from static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.js rename to static/js/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.js diff --git a/static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js b/static/js/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js similarity index 100% rename from static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js rename to static/js/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js diff --git a/static/3rd/animate.css/4.1.1/animate.min.css b/static/js/3rd/animate.css/4.1.1/animate.min.css similarity index 100% rename from static/3rd/animate.css/4.1.1/animate.min.css rename to static/js/3rd/animate.css/4.1.1/animate.min.css diff --git a/static/3rd/animejs/3.2.2/anime.min.js b/static/js/3rd/animejs/3.2.2/anime.min.js similarity index 100% rename from static/3rd/animejs/3.2.2/anime.min.js rename to static/js/3rd/animejs/3.2.2/anime.min.js diff --git a/static/js/3rd/aplayer/1.10.1/APlayer.min.css b/static/js/3rd/aplayer/1.10.1/APlayer.min.css new file mode 100644 index 0000000..b08c8d8 --- /dev/null +++ b/static/js/3rd/aplayer/1.10.1/APlayer.min.css @@ -0,0 +1 @@ +.aplayer{background:#fff;font-family:Arial,Helvetica,sans-serif;margin:5px;box-shadow:0 2px 2px 0 rgba(0,0,0,.07),0 1px 5px 0 rgba(0,0,0,.1);border-radius:2px;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:normal;position:relative}.aplayer *{box-sizing:content-box}.aplayer svg{width:100%;height:100%}.aplayer svg circle,.aplayer svg path{fill:#fff}.aplayer.aplayer-withlist .aplayer-info{border-bottom:1px solid #e9e9e9}.aplayer.aplayer-withlist .aplayer-list{display:block}.aplayer.aplayer-withlist .aplayer-icon-order,.aplayer.aplayer-withlist .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon.aplayer-icon-menu{display:inline}.aplayer.aplayer-withlrc .aplayer-pic{height:90px;width:90px}.aplayer.aplayer-withlrc .aplayer-info{margin-left:90px;height:90px;padding:10px 7px 0}.aplayer.aplayer-withlrc .aplayer-lrc{display:block}.aplayer.aplayer-narrow{width:66px}.aplayer.aplayer-narrow .aplayer-info,.aplayer.aplayer-narrow .aplayer-list{display:none}.aplayer.aplayer-narrow .aplayer-body,.aplayer.aplayer-narrow .aplayer-pic{height:66px;width:66px}.aplayer.aplayer-fixed{position:fixed;bottom:0;left:0;right:0;margin:0;z-index:99;overflow:visible;max-width:400px;box-shadow:none}.aplayer.aplayer-fixed .aplayer-list{margin-bottom:65px;border:1px solid #eee;border-bottom:none}.aplayer.aplayer-fixed .aplayer-body{position:fixed;bottom:0;left:0;right:0;margin:0;z-index:99;background:#fff;padding-right:18px;transition:all .3s ease;max-width:400px}.aplayer.aplayer-fixed .aplayer-lrc{display:block;position:fixed;bottom:10px;left:0;right:0;margin:0;z-index:98;pointer-events:none;text-shadow:-1px -1px 0 #fff}.aplayer.aplayer-fixed .aplayer-lrc:after,.aplayer.aplayer-fixed .aplayer-lrc:before{display:none}.aplayer.aplayer-fixed .aplayer-info{-webkit-transform:scaleX(1);transform:scaleX(1);-webkit-transform-origin:0 0;transform-origin:0 0;transition:all .3s ease;border-bottom:none;border-top:1px solid #e9e9e9}.aplayer.aplayer-fixed .aplayer-info .aplayer-music{width:calc(100% - 105px)}.aplayer.aplayer-fixed .aplayer-miniswitcher{display:block}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-info{display:block;-webkit-transform:scaleX(0);transform:scaleX(0)}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-body{width:66px!important}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-miniswitcher .aplayer-icon{-webkit-transform:rotateY(0);transform:rotateY(0)}.aplayer.aplayer-fixed .aplayer-icon-back,.aplayer.aplayer-fixed .aplayer-icon-forward,.aplayer.aplayer-fixed .aplayer-icon-lrc,.aplayer.aplayer-fixed .aplayer-icon-play{display:inline-block}.aplayer.aplayer-fixed .aplayer-icon-back,.aplayer.aplayer-fixed .aplayer-icon-forward,.aplayer.aplayer-fixed .aplayer-icon-menu,.aplayer.aplayer-fixed .aplayer-icon-play{position:absolute;bottom:27px;width:20px;height:20px}.aplayer.aplayer-fixed .aplayer-icon-back{right:75px}.aplayer.aplayer-fixed .aplayer-icon-play{right:50px}.aplayer.aplayer-fixed .aplayer-icon-forward{right:25px}.aplayer.aplayer-fixed .aplayer-icon-menu{right:0}.aplayer.aplayer-arrow .aplayer-icon-loop,.aplayer.aplayer-arrow .aplayer-icon-order,.aplayer.aplayer-mobile .aplayer-icon-volume-down{display:none}.aplayer.aplayer-loading .aplayer-info .aplayer-controller .aplayer-loading-icon{display:block}.aplayer.aplayer-loading .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-played .aplayer-thumb{-webkit-transform:scale(1);transform:scale(1)}.aplayer .aplayer-body{position:relative}.aplayer .aplayer-icon{width:15px;height:15px;border:none;background-color:transparent;outline:none;cursor:pointer;opacity:.8;vertical-align:middle;padding:0;font-size:12px;margin:0;display:inline-block}.aplayer .aplayer-icon path{transition:all .2s ease-in-out}.aplayer .aplayer-icon-back,.aplayer .aplayer-icon-forward,.aplayer .aplayer-icon-lrc,.aplayer .aplayer-icon-order,.aplayer .aplayer-icon-play{display:none}.aplayer .aplayer-icon-lrc-inactivity svg{opacity:.4}.aplayer .aplayer-icon-forward{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.aplayer .aplayer-lrc-content{display:none}.aplayer .aplayer-pic{position:relative;float:left;height:66px;width:66px;background-size:cover;background-position:50%;transition:all .3s ease;cursor:pointer}.aplayer .aplayer-pic:hover .aplayer-button{opacity:1}.aplayer .aplayer-pic .aplayer-button{position:absolute;border-radius:50%;opacity:.8;text-shadow:0 1px 1px rgba(0,0,0,.2);box-shadow:0 1px 1px rgba(0,0,0,.2);background:rgba(0,0,0,.2);transition:all .1s ease}.aplayer .aplayer-pic .aplayer-button path{fill:#fff}.aplayer .aplayer-pic .aplayer-hide{display:none}.aplayer .aplayer-pic .aplayer-play{width:26px;height:26px;border:2px solid #fff;bottom:50%;right:50%;margin:0 -15px -15px 0}.aplayer .aplayer-pic .aplayer-play svg{position:absolute;top:3px;left:4px;height:20px;width:20px}.aplayer .aplayer-pic .aplayer-pause{width:16px;height:16px;border:2px solid #fff;bottom:4px;right:4px}.aplayer .aplayer-pic .aplayer-pause svg{position:absolute;top:2px;left:2px;height:12px;width:12px}.aplayer .aplayer-info{margin-left:66px;padding:14px 7px 0 10px;height:66px;box-sizing:border-box}.aplayer .aplayer-info .aplayer-music{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0 0 13px 5px;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:default;padding-bottom:2px;height:20px}.aplayer .aplayer-info .aplayer-music .aplayer-title{font-size:14px}.aplayer .aplayer-info .aplayer-music .aplayer-author{font-size:12px;color:#666}.aplayer .aplayer-info .aplayer-controller{position:relative;display:flex}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap{margin:0 0 0 5px;padding:4px 0;cursor:pointer!important;flex:1}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap:hover .aplayer-bar .aplayer-played .aplayer-thumb{-webkit-transform:scale(1);transform:scale(1)}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar{position:relative;height:2px;width:100%;background:#cdcdcd}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-loaded{position:absolute;left:0;top:0;bottom:0;background:#aaa;height:2px;transition:all .5s ease}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-played{position:absolute;left:0;top:0;bottom:0;height:2px}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-played .aplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:10px;width:10px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;-webkit-transform:scale(0);transform:scale(0)}.aplayer .aplayer-info .aplayer-controller .aplayer-time{position:relative;right:0;bottom:4px;height:17px;color:#999;font-size:11px;padding-left:7px}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-time-inner{vertical-align:middle}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon{cursor:pointer;transition:all .2s ease}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path{fill:#666}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon.aplayer-icon-loop{margin-right:2px}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon:hover path{fill:#000}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon.aplayer-icon-menu,.aplayer .aplayer-info .aplayer-controller .aplayer-time.aplayer-time-narrow .aplayer-icon-menu,.aplayer .aplayer-info .aplayer-controller .aplayer-time.aplayer-time-narrow .aplayer-icon-mode{display:none}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap{position:relative;display:inline-block;margin-left:3px;cursor:pointer!important}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap:hover .aplayer-volume-bar-wrap{height:40px}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap{position:absolute;bottom:15px;right:-3px;width:25px;height:0;z-index:99;overflow:hidden;transition:all .2s ease-in-out}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap.aplayer-volume-bar-wrap-active{height:40px}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap .aplayer-volume-bar{position:absolute;bottom:0;right:10px;width:5px;height:35px;background:#aaa;border-radius:2.5px;overflow:hidden}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap .aplayer-volume-bar .aplayer-volume{position:absolute;bottom:0;right:0;width:5px;transition:all .1s ease}.aplayer .aplayer-info .aplayer-controller .aplayer-loading-icon{display:none}.aplayer .aplayer-info .aplayer-controller .aplayer-loading-icon svg{position:absolute;-webkit-animation:rotate 1s linear infinite;animation:rotate 1s linear infinite}.aplayer .aplayer-lrc{display:none;position:relative;height:30px;text-align:center;overflow:hidden;margin:-10px 0 7px}.aplayer .aplayer-lrc:before{top:0;height:10%;background:linear-gradient(180deg,#fff 0,hsla(0,0%,100%,0));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#00ffffff",GradientType=0)}.aplayer .aplayer-lrc:after,.aplayer .aplayer-lrc:before{position:absolute;z-index:1;display:block;overflow:hidden;width:100%;content:" "}.aplayer .aplayer-lrc:after{bottom:0;height:33%;background:linear-gradient(180deg,hsla(0,0%,100%,0) 0,hsla(0,0%,100%,.8));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ffffff",endColorstr="#ccffffff",GradientType=0)}.aplayer .aplayer-lrc p{font-size:12px;color:#666;line-height:16px!important;height:16px!important;padding:0!important;margin:0!important;transition:all .5s ease-out;opacity:.4;overflow:hidden}.aplayer .aplayer-lrc p.aplayer-lrc-current{opacity:1;overflow:visible;height:auto!important;min-height:16px}.aplayer .aplayer-lrc.aplayer-lrc-hide{display:none}.aplayer .aplayer-lrc .aplayer-lrc-contents{width:100%;transition:all .5s ease-out;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:default}.aplayer .aplayer-list{overflow:auto;transition:all .5s ease;will-change:height;display:none;overflow:hidden}.aplayer .aplayer-list.aplayer-list-hide{max-height:0!important}.aplayer .aplayer-list ol{list-style-type:none;margin:0;padding:0;overflow-y:auto}.aplayer .aplayer-list ol::-webkit-scrollbar{width:5px}.aplayer .aplayer-list ol::-webkit-scrollbar-thumb{border-radius:3px;background-color:#eee}.aplayer .aplayer-list ol::-webkit-scrollbar-thumb:hover{background-color:#ccc}.aplayer .aplayer-list ol li{position:relative;height:32px;line-height:32px;padding:0 15px;font-size:12px;border-top:1px solid #e9e9e9;cursor:pointer;transition:all .2s ease;overflow:hidden;margin:0}.aplayer .aplayer-list ol li:first-child{border-top:none}.aplayer .aplayer-list ol li:hover{background:#efefef}.aplayer .aplayer-list ol li.aplayer-list-light{background:#e9e9e9}.aplayer .aplayer-list ol li.aplayer-list-light .aplayer-list-cur{display:inline-block}.aplayer .aplayer-list ol li .aplayer-list-cur{display:none;width:3px;height:22px;position:absolute;left:0;top:5px;cursor:pointer}.aplayer .aplayer-list ol li .aplayer-list-index{color:#666;margin-right:12px;cursor:pointer}.aplayer .aplayer-list ol li .aplayer-list-author{color:#666;float:right;cursor:pointer}.aplayer .aplayer-notice{opacity:0;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:12px;border-radius:4px;padding:5px 10px;transition:all .3s ease-in-out;overflow:hidden;color:#fff;pointer-events:none;background-color:#f4f4f5;color:#909399}.aplayer .aplayer-miniswitcher{display:none;position:absolute;top:0;right:0;bottom:0;height:100%;background:#e6e6e6;width:18px;border-radius:0 2px 2px 0}.aplayer .aplayer-miniswitcher .aplayer-icon{height:100%;width:100%;-webkit-transform:rotateY(180deg);transform:rotateY(180deg);transition:all .3s ease}.aplayer .aplayer-miniswitcher .aplayer-icon path{fill:#666}.aplayer .aplayer-miniswitcher .aplayer-icon:hover path{fill:#000}@-webkit-keyframes aplayer-roll{0%{left:0}to{left:-100%}}@keyframes aplayer-roll{0%{left:0}to{left:-100%}}@-webkit-keyframes rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} \ No newline at end of file diff --git a/static/js/3rd/aplayer/1.10.1/APlayer.min.js b/static/js/3rd/aplayer/1.10.1/APlayer.min.js new file mode 100644 index 0000000..f0c437b --- /dev/null +++ b/static/js/3rd/aplayer/1.10.1/APlayer.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("APlayer",[],t):"object"==typeof exports?exports.APlayer=t():e.APlayer=t()}(window,function(){return function(e){var t={};function n(i){if(t[i])return t[i].exports;var a=t[i]={i:i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:i})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=41)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=/mobile/i.test(window.navigator.userAgent),a={secondToTime:function(e){var t=Math.floor(e/3600),n=Math.floor((e-3600*t)/60),i=Math.floor(e-3600*t-60*n);return(t>0?[t,n,i]:[n,i]).map(function(e){return e<10?"0"+e:""+e}).join(":")},getElementViewLeft:function(e){var t=e.offsetLeft,n=e.offsetParent,i=document.body.scrollLeft+document.documentElement.scrollLeft;if(document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement)for(;null!==n&&n!==e;)t+=n.offsetLeft,n=n.offsetParent;else for(;null!==n;)t+=n.offsetLeft,n=n.offsetParent;return t-i},getElementViewTop:function(e,t){for(var n,i=e.offsetTop,a=e.offsetParent;null!==a;)i+=a.offsetTop,a=a.offsetParent;return n=document.body.scrollTop+document.documentElement.scrollTop,t?i:i-n},isMobile:i,storage:{set:function(e,t){localStorage.setItem(e,t)},get:function(e){return localStorage.getItem(e)}},nameMap:{dragStart:i?"touchstart":"mousedown",dragMove:i?"touchmove":"mousemove",dragEnd:i?"touchend":"mouseup"},randomOrder:function(e){return function(e){for(var t=e.length-1;t>=0;t--){var n=Math.floor(Math.random()*(t+1)),i=e[n];e[n]=e[t],e[t]=i}return e}([].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t\n ',t+=r(n+s),t+='\n ',t+=r(e.name),t+='\n ',t+=r(e.artist),t+="\n\n"}),t}},function(e,t,n){"use strict";e.exports=n(15)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=g(n(33)),a=g(n(32)),r=g(n(31)),o=g(n(30)),s=g(n(29)),l=g(n(28)),u=g(n(27)),c=g(n(26)),p=g(n(25)),d=g(n(24)),h=g(n(23)),y=g(n(22)),f=g(n(21)),v=g(n(20)),m=g(n(19));function g(e){return e&&e.__esModule?e:{default:e}}var w={play:i.default,pause:a.default,volumeUp:r.default,volumeDown:o.default,volumeOff:s.default,orderRandom:l.default,orderList:u.default,menu:c.default,loopAll:p.default,loopOne:d.default,loopNone:h.default,loading:y.default,right:f.default,skip:v.default,lrc:m.default};t.default=w},function(e,t,n){"use strict";var i,a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};i=function(){return this}();try{i=i||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":a(window))&&(i=window)}e.exports=i},function(e,t,n){"use strict";var i,a,r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};void 0===(a="function"==typeof(i=function(){if("object"===("undefined"==typeof window?"undefined":r(window))&&void 0!==document.querySelectorAll&&void 0!==window.pageYOffset&&void 0!==history.pushState){var e=function(e,t,n,i){return n>i?t:e+(t-e)*((a=n/i)<.5?4*a*a*a:(a-1)*(2*a-2)*(2*a-2)+1);var a},t=function(t,n,i,a){n=n||500;var r=(a=a||window).scrollTop||window.pageYOffset;if("number"==typeof t)var o=parseInt(t);else var o=function(e,t){return"HTML"===e.nodeName?-t:e.getBoundingClientRect().top+t}(t,r);var s=Date.now(),l=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||function(e){window.setTimeout(e,15)};!function u(){var c=Date.now()-s;a!==window?a.scrollTop=e(r,o,c,n):window.scroll(0,e(r,o,c,n)),c>n?"function"==typeof i&&i(t):l(u)}()},n=function(e){if(!e.defaultPrevented){e.preventDefault(),location.hash!==this.hash&&window.history.pushState(null,null,this.hash);var n=document.getElementById(this.hash.substring(1));if(!n)return;t(n,500,function(e){location.replace("#"+e.id)})}};return document.addEventListener("DOMContentLoaded",function(){for(var e,t=document.querySelectorAll('a[href^="#"]:not([href="#"])'),i=t.length;e=t[--i];)e.addEventListener("click",n,!1)}),t}})?i.call(t,n,t,e):i)||(e.exports=a)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n1),n=0===this.audios.length;this.player.template.listOl.innerHTML+=(0,a.default)({theme:this.player.options.theme,audio:e,index:this.audios.length+1}),this.audios=this.audios.concat(e),t&&this.audios.length>1&&this.player.container.classList.add("aplayer-withlist"),this.player.randomOrder=r.default.randomOrder(this.audios.length),this.player.template.listCurs=this.player.container.querySelectorAll(".aplayer-list-cur"),this.player.template.listCurs[this.audios.length-1].style.backgroundColor=e.theme||this.player.options.theme,n&&("random"===this.player.options.order?this.switch(this.player.randomOrder[0]):this.switch(0))}},{key:"remove",value:function(e){if(this.player.events.trigger("listremove",{index:e}),this.audios[e])if(this.audios.length>1){var t=this.player.container.querySelectorAll(".aplayer-list li");t[e].remove(),this.audios.splice(e,1),this.player.lrc&&this.player.lrc.remove(e),e===this.index&&(this.audios[e]?this.switch(e):this.switch(e-1)),this.index>e&&this.index--;for(var n=e;nt&&!e.player.audio.paused&&(e.player.container.classList.remove("aplayer-loading"),i=!1),t=n)},100)}},{key:"enable",value:function(e){this["enable"+e+"Checker"]=!0,"fps"===e&&this.initfpsChecker()}},{key:"disable",value:function(e){this["enable"+e+"Checker"]=!1}},{key:"destroy",value:function(){var e=this;this.types.forEach(function(t){e["enable"+t+"Checker"]=!1,e[t+"Checker"]&&clearInterval(e[t+"Checker"])})}}]),e}();t.default=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n1?"one"===e.player.options.loop?(e.player.options.loop="none",e.player.template.loop.innerHTML=r.default.loopNone):"none"===e.player.options.loop?(e.player.options.loop="all",e.player.template.loop.innerHTML=r.default.loopAll):"all"===e.player.options.loop&&(e.player.options.loop="one",e.player.template.loop.innerHTML=r.default.loopOne):"one"===e.player.options.loop||"all"===e.player.options.loop?(e.player.options.loop="none",e.player.template.loop.innerHTML=r.default.loopNone):"none"===e.player.options.loop&&(e.player.options.loop="all",e.player.template.loop.innerHTML=r.default.loopAll)})}},{key:"initMenuButton",value:function(){var e=this;this.player.template.menu.addEventListener("click",function(){e.player.list.toggle()})}},{key:"initMiniSwitcher",value:function(){var e=this;this.player.template.miniSwitcher.addEventListener("click",function(){e.player.setMode("mini"===e.player.mode?"normal":"mini")})}},{key:"initSkipButton",value:function(){var e=this;this.player.template.skipBackButton.addEventListener("click",function(){e.player.skipBack()}),this.player.template.skipForwardButton.addEventListener("click",function(){e.player.skipForward()}),this.player.template.skipPlayButton.addEventListener("click",function(){e.player.toggle()})}},{key:"initLrcButton",value:function(){var e=this;this.player.template.lrcButton.addEventListener("click",function(){e.player.template.lrcButton.classList.contains("aplayer-icon-lrc-inactivity")?(e.player.template.lrcButton.classList.remove("aplayer-icon-lrc-inactivity"),e.player.lrc&&e.player.lrc.show()):(e.player.template.lrcButton.classList.add("aplayer-icon-lrc-inactivity"),e.player.lrc&&e.player.lrc.hide())})}}]),e}();t.default=s},function(e,t,n){var i=n(2);e.exports=function(e){"use strict";e=e||{};var t="",n=i.$each,a=e.lyrics,r=(e.$value,e.$index,i.$escape);return n(a,function(e,n){t+="\n \n"}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,a=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:this.player.audio.currentTime;if(this.index>this.current.length-1||e=this.current[this.index+1][0])for(var t=0;t=this.current[t][0]&&(!this.current[t+1]||e=200&&n.status<300||304===n.status?t.parsed[e]=t.parse(n.responseText):(t.player.notice("LRC file request fails: status "+n.status),t.parsed[e]=[["00:00","Not available"]]),t.container.innerHTML=(0,o.default)({lyrics:t.parsed[e]}),t.update(0),t.current=t.parsed[e])};var i=this.player.list.audios[e].lrc;n.open("get",i,!0),n.send(null)}else this.player.list.audios[e].lrc?this.parsed[e]=this.parse(this.player.list.audios[e].lrc):this.parsed[e]=[["00:00","Not available"]];this.container.innerHTML=(0,o.default)({lyrics:this.parsed[e]}),this.update(0),this.current=this.parsed[e]}},{key:"parse",value:function(e){if(e){for(var t=(e=e.replace(/([^\]^\n])\[/g,function(e,t){return t+"\n["})).split("\n"),n=[],i=t.length,a=0;a/g,"").replace(/^\s+|\s+$/g,"");if(r)for(var s=r.length,l=0;l]/;a.$escape=function(e){return function(e){var t=""+e,n=r.exec(t);if(!n)return e;var i="",a=void 0,o=void 0,s=void 0;for(a=n.index,o=0;a\n \n
',t+=s.play,t+='
\n \n \n
\n
\n\n
\n
\n
\n'):(t+='\n
\n
\n
',t+=s.play,t+='
\n
\n
\n
\n No audio\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n ',t+=s.loading,t+='\n \n
\n
\n
\n
\n \n 00:00 / 00:00\n \n \n ',t+=s.skip,t+='\n \n \n ',t+=s.play,t+='\n \n \n ',t+=s.skip,t+='\n \n
\n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n '},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t,n){"use strict";var i,a,r=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function l(e){if(i===setTimeout)return setTimeout(e,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(e,0);try{return i(e,0)}catch(t){try{return i.call(null,e,0)}catch(t){return i.call(this,e,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(e){i=o}try{a="function"==typeof clearTimeout?clearTimeout:s}catch(e){a=s}}();var u,c=[],p=!1,d=-1;function h(){p&&u&&(p=!1,u.length?c=u.concat(c):d=-1,c.length&&y())}function y(){if(!p){var e=l(h);p=!0;for(var t=c.length;t;){for(u=c,c=[];++d1)for(var n=1;n=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n(35),t.setImmediate=setImmediate,t.clearImmediate=clearImmediate},function(e,t,n){"use strict";(function(t){var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=setTimeout;function a(){}function r(e){if(!(this instanceof r))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],c(e,this)}function o(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,r._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void l(t.promise,e)}s(t.promise,i)}else(1===e._state?s:l)(t.promise,e._value)})):e._deferreds.push(t)}function s(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"===(void 0===t?"undefined":n(t))||"function"==typeof t)){var i=t.then;if(t instanceof r)return e._state=3,e._value=t,void u(e);if("function"==typeof i)return void c((a=i,o=t,function(){a.apply(o,arguments)}),e)}e._state=1,e._value=t,u(e)}catch(t){l(e,t)}var a,o}function l(e,t){e._state=2,e._value=t,u(e)}function u(e){2===e._state&&0===e._deferreds.length&&r._immediateFn(function(){e._handled||r._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;t1&&this.container.classList.add("aplayer-withlist"),r.default.isMobile&&this.container.classList.add("aplayer-mobile"),this.arrow=this.container.offsetWidth<=300,this.arrow&&this.container.classList.add("aplayer-arrow"),this.container=this.options.container,2===this.options.lrcType||!0===this.options.lrcType)for(var n=this.container.getElementsByClassName("aplayer-lrc-content"),i=0;i1?(e.notice("An audio error has occurred, player will skip forward in 2 seconds."),t=setTimeout(function(){e.skipForward(),e.paused||e.play()},2e3)):1===e.list.audios.length&&e.notice("An audio error has occurred.")}),this.events.on("listswitch",function(){t&&clearTimeout(t)}),this.on("ended",function(){"none"===e.options.loop?"list"===e.options.order?e.list.index0&&void 0!==arguments[0]?arguments[0]:this.list.audios[this.list.index].theme||this.options.theme,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.list.index;(!(arguments.length>2&&void 0!==arguments[2])||arguments[2])&&this.list.audios[t]&&(this.list.audios[t].theme=e),this.template.listCurs[t]&&(this.template.listCurs[t].style.backgroundColor=e),t===this.list.index&&(this.template.pic.style.backgroundColor=e,this.template.played.style.background=e,this.template.thumb.style.background=e,this.template.volume.style.background=e)}},{key:"seek",value:function(e){e=Math.max(e,0),e=Math.min(e,this.duration),this.audio.currentTime=e,this.bar.set("played",e/this.duration,"width"),this.template.ptime.innerHTML=r.default.secondToTime(e)}},{key:"setUIPlaying",value:function(){var e=this;if(this.paused&&(this.paused=!1,this.template.button.classList.remove("aplayer-play"),this.template.button.classList.add("aplayer-pause"),this.template.button.innerHTML="",setTimeout(function(){e.template.button.innerHTML=o.default.pause},100),this.template.skipPlayButton.innerHTML=o.default.pause),this.timer.enable("loading"),this.options.mutex)for(var t=0;t=.95?this.template.volumeButton.innerHTML=o.default.volumeUp:this.volume()>0?this.template.volumeButton.innerHTML=o.default.volumeDown:this.template.volumeButton.innerHTML=o.default.volumeOff}},{key:"volume",value:function(e,t){return e=parseFloat(e),isNaN(e)||(e=Math.max(e,0),e=Math.min(e,1),this.bar.set("volume",e,"height"),t||this.storage.set("volume",e),this.audio.volume=e,this.audio.muted&&(this.audio.muted=!1),this.switchVolumeIcon()),this.audio.muted?0:this.audio.volume}},{key:"on",value:function(e,t){this.events.on(e,t)}},{key:"toggle",value:function(){this.template.button.classList.contains("aplayer-play")?this.play():this.template.button.classList.contains("aplayer-pause")&&this.pause()}},{key:"switchAudio",value:function(e){this.list.switch(e)}},{key:"addAudio",value:function(e){this.list.add(e)}},{key:"removeAudio",value:function(e){this.list.remove(e)}},{key:"destroy",value:function(){m.splice(m.indexOf(this),1),this.pause(),this.container.innerHTML="",this.audio.src="",this.timer.destroy(),this.events.trigger("destroy")}},{key:"setMode",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"normal";this.mode=e,"mini"===e?this.container.classList.add("aplayer-narrow"):"normal"===e&&this.container.classList.remove("aplayer-narrow")}},{key:"notice",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2e3,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.8;this.template.notice.innerHTML=e,this.template.notice.style.opacity=i,this.noticeTime&&clearTimeout(this.noticeTime),this.events.trigger("noticeshow",{text:e}),n&&(this.noticeTime=setTimeout(function(){t.template.notice.style.opacity=0,t.events.trigger("noticehide")},n))}},{key:"prevIndex",value:function(){if(!(this.list.audios.length>1))return 0;if("list"===this.options.order)return this.list.index-1<0?this.list.audios.length-1:this.list.index-1;if("random"===this.options.order){var e=this.randomOrder.indexOf(this.list.index);return 0===e?this.randomOrder[this.randomOrder.length-1]:this.randomOrder[e-1]}}},{key:"nextIndex",value:function(){if(!(this.list.audios.length>1))return 0;if("list"===this.options.order)return(this.list.index+1)%this.list.audios.length;if("random"===this.options.order){var e=this.randomOrder.indexOf(this.list.index);return e===this.randomOrder.length-1?this.randomOrder[0]:this.randomOrder[e+1]}}},{key:"skipBack",value:function(){this.list.switch(this.prevIndex())}},{key:"skipForward",value:function(){this.list.switch(this.nextIndex())}},{key:"duration",get:function(){return isNaN(this.audio.duration)?0:this.audio.duration}}],[{key:"version",get:function(){return"1.10.1"}}]),e}();t.default=g},,function(e,t,n){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(40);var i,a=n(38),r=(i=a)&&i.__esModule?i:{default:i};console.log("\n %c APlayer v1.10.1 af84efb %c http://aplayer.js.org \n","color: #fadfa3; background: #030307; padding:5px 0;","background: #fadfa3; padding:5px 0;"),t.default=r.default}]).default}); \ No newline at end of file diff --git a/static/3rd/artalk/2.6.4/Artalk.min.css b/static/js/3rd/artalk/2.6.4/Artalk.min.css similarity index 100% rename from static/3rd/artalk/2.6.4/Artalk.min.css rename to static/js/3rd/artalk/2.6.4/Artalk.min.css diff --git a/static/3rd/artalk/2.6.4/Artalk.min.js b/static/js/3rd/artalk/2.6.4/Artalk.min.js similarity index 100% rename from static/3rd/artalk/2.6.4/Artalk.min.js rename to static/js/3rd/artalk/2.6.4/Artalk.min.js diff --git a/static/3rd/auto-render/0.16.11/contrib/auto-render.min.js b/static/js/3rd/auto-render/0.16.11/contrib/auto-render.min.js similarity index 100% rename from static/3rd/auto-render/0.16.11/contrib/auto-render.min.js rename to static/js/3rd/auto-render/0.16.11/contrib/auto-render.min.js diff --git a/static/js/3rd/dn.txt b/static/js/3rd/dn.txt new file mode 100644 index 0000000..9b21ee7 --- /dev/null +++ b/static/js/3rd/dn.txt @@ -0,0 +1,3 @@ +https://unpkg.com/meting@2.0.1/dist/Meting.min.js +https://unpkg.com/browse/aplayer@1.10.1/dist/APlayer.min.js +https://unpkg.com/browse/aplayer@1.10.1/dist/APlayer.min.css diff --git a/static/3rd/font-awesome/6.7.2/css/all.min.css b/static/js/3rd/font-awesome/6.7.2/css/all.min.css similarity index 100% rename from static/3rd/font-awesome/6.7.2/css/all.min.css rename to static/js/3rd/font-awesome/6.7.2/css/all.min.css diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.ttf b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.ttf similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.ttf rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.ttf diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.woff2 b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.woff2 similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.woff2 rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-brands-400.woff2 diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.ttf b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.ttf similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.ttf rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.ttf diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.woff2 b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.woff2 similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.woff2 rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-regular-400.woff2 diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.ttf b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.ttf similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.ttf rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.ttf diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.woff2 b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.woff2 similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.woff2 rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-solid-900.woff2 diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.ttf b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.ttf similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.ttf rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.ttf diff --git a/static/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.woff2 b/static/js/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.woff2 similarity index 100% rename from static/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.woff2 rename to static/js/3rd/font-awesome/6.7.2/webfonts/fa-v4compatibility.woff2 diff --git a/static/3rd/instantsearch.js/4.73.2/instantsearch.production.min.js b/static/js/3rd/instantsearch.js/4.73.2/instantsearch.production.min.js similarity index 100% rename from static/3rd/instantsearch.js/4.73.2/instantsearch.production.min.js rename to static/js/3rd/instantsearch.js/4.73.2/instantsearch.production.min.js diff --git a/static/3rd/katex/0.16.15/contrib/auto-render.min.js b/static/js/3rd/katex/0.16.15/contrib/auto-render.min.js similarity index 100% rename from static/3rd/katex/0.16.15/contrib/auto-render.min.js rename to static/js/3rd/katex/0.16.15/contrib/auto-render.min.js diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_AMS-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Bold.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Caligraphic-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Bold.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Fraktur-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Bold.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-BoldItalic.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Italic.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Main-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-BoldItalic.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Math-Italic.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Bold.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Italic.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_SansSerif-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Script-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size1-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size2-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size3-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Size4-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.ttf b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.ttf similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.ttf rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.ttf diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff diff --git a/static/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff2 b/static/js/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff2 similarity index 100% rename from static/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff2 rename to static/js/3rd/katex/0.16.15/fonts/KaTeX_Typewriter-Regular.woff2 diff --git a/static/3rd/katex/0.16.15/katex.min.css b/static/js/3rd/katex/0.16.15/katex.min.css similarity index 100% rename from static/3rd/katex/0.16.15/katex.min.css rename to static/js/3rd/katex/0.16.15/katex.min.css diff --git a/static/3rd/katex/0.16.15/katex.min.js b/static/js/3rd/katex/0.16.15/katex.min.js similarity index 100% rename from static/3rd/katex/0.16.15/katex.min.js rename to static/js/3rd/katex/0.16.15/katex.min.js diff --git a/static/3rd/mathjax/3.2.2/es5/tex-mml-svg.min.js b/static/js/3rd/mathjax/3.2.2/es5/tex-mml-svg.min.js similarity index 100% rename from static/3rd/mathjax/3.2.2/es5/tex-mml-svg.min.js rename to static/js/3rd/mathjax/3.2.2/es5/tex-mml-svg.min.js diff --git a/static/3rd/mermaid/10.9.1/mermaid.min.js b/static/js/3rd/mermaid/10.9.1/mermaid.min.js similarity index 100% rename from static/3rd/mermaid/10.9.1/mermaid.min.js rename to static/js/3rd/mermaid/10.9.1/mermaid.min.js diff --git a/static/js/3rd/meting/2.0.1/Meting.min.js b/static/js/3rd/meting/2.0.1/Meting.min.js new file mode 100644 index 0000000..da4394a --- /dev/null +++ b/static/js/3rd/meting/2.0.1/Meting.min.js @@ -0,0 +1 @@ +"use strict";function _objectSpread(a){for(var b=1;bb.toUpperCase())}_init(){let a={};for(let b=0;ba.json()).then(a=>this._loadPlayer(a))}_loadPlayer(a){let b={audio:a,mutex:!0,lrcType:this.meta.lrcType||3,storageName:"metingjs"};if(a.length){let a=_objectSpread({},b,this.config);for(let b in a)("true"===a[b]||"false"===a[b])&&(a[b]="true"===a[b]);let c=document.createElement("div");a.container=c,this.appendChild(c),this.aplayer=new APlayer(a)}}}console.log("\n %c MetingJS v2.0.1 %c https://github.com/metowolf/MetingJS \n","color: #fadfa3; background: #030307; padding:5px 0;","background: #fadfa3; padding:5px 0;"),window.customElements&&!window.customElements.get("meting-js")&&(window.MetingJSElement=MetingJSElement,window.customElements.define("meting-js",MetingJSElement)); \ No newline at end of file diff --git a/static/3rd/viewerjs/1.11.6/viewer.min.css b/static/js/3rd/viewerjs/1.11.6/viewer.min.css similarity index 100% rename from static/3rd/viewerjs/1.11.6/viewer.min.css rename to static/js/3rd/viewerjs/1.11.6/viewer.min.css diff --git a/static/3rd/viewerjs/1.11.6/viewer.min.js b/static/js/3rd/viewerjs/1.11.6/viewer.min.js similarity index 100% rename from static/3rd/viewerjs/1.11.6/viewer.min.js rename to static/js/3rd/viewerjs/1.11.6/viewer.min.js diff --git a/static/3rd/waline/2.15.8/comment.min.js b/static/js/3rd/waline/2.15.8/comment.min.js similarity index 100% rename from static/3rd/waline/2.15.8/comment.min.js rename to static/js/3rd/waline/2.15.8/comment.min.js diff --git a/static/3rd/waline/2.15.8/pageview.min.js b/static/js/3rd/waline/2.15.8/pageview.min.js similarity index 100% rename from static/3rd/waline/2.15.8/pageview.min.js rename to static/js/3rd/waline/2.15.8/pageview.min.js diff --git a/static/3rd/waline/2.15.8/waline.css b/static/js/3rd/waline/2.15.8/waline.css similarity index 100% rename from static/3rd/waline/2.15.8/waline.css rename to static/js/3rd/waline/2.15.8/waline.css diff --git a/static/3rd/waline/2.15.8/waline.min.js b/static/js/3rd/waline/2.15.8/waline.min.js similarity index 100% rename from static/3rd/waline/2.15.8/waline.min.js rename to static/js/3rd/waline/2.15.8/waline.min.js diff --git a/static/3rd/waline/3.3.0/comment.min.js b/static/js/3rd/waline/3.3.0/comment.min.js similarity index 100% rename from static/3rd/waline/3.3.0/comment.min.js rename to static/js/3rd/waline/3.3.0/comment.min.js diff --git a/static/3rd/waline/3.3.0/pageview.min.js b/static/js/3rd/waline/3.3.0/pageview.min.js similarity index 100% rename from static/3rd/waline/3.3.0/pageview.min.js rename to static/js/3rd/waline/3.3.0/pageview.min.js diff --git a/static/3rd/waline/3.3.0/waline.min.css b/static/js/3rd/waline/3.3.0/waline.min.css similarity index 100% rename from static/3rd/waline/3.3.0/waline.min.css rename to static/js/3rd/waline/3.3.0/waline.min.css diff --git a/static/3rd/waline/3.3.0/waline.min.js b/static/js/3rd/waline/3.3.0/waline.min.js similarity index 100% rename from static/3rd/waline/3.3.0/waline.min.js rename to static/js/3rd/waline/3.3.0/waline.min.js diff --git a/static/3rd/waline/3.3.0/waline.umd.min.js b/static/js/3rd/waline/3.3.0/waline.umd.min.js similarity index 100% rename from static/3rd/waline/3.3.0/waline.umd.min.js rename to static/js/3rd/waline/3.3.0/waline.umd.min.js diff --git a/static/js/index.js b/static/js/index.js deleted file mode 100644 index 6975cf0..0000000 --- a/static/js/index.js +++ /dev/null @@ -1 +0,0 @@ -// TODO keep the js folder \ No newline at end of file