mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
Restore v1 min files
This commit is contained in:
parent
5768304064
commit
86f96caae8
1
min/about.min.css
vendored
Normal file
1
min/about.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bilibili-evolved-about{height:100%;width:450px;background:#fff;color:#000;position:fixed;top:0;left:0;z-index:100000;transform:translateX(-101%);transition:.3s cubic-bezier(0,.86,.58,1);display:flex;flex-direction:column;box-shadow:4px 0 16px 0 #0000;user-select:none}.gui-settings-dock-right .bilibili-evolved-about{right:0;left:unset;transform:translateX(101%)}body.dark .bilibili-evolved-about{background:#222;color:#eee}.bilibili-evolved-about.opened,.gui-settings-dock-right .bilibili-evolved-about.opened{transform:translateX(0);box-shadow:4px 0 16px 0 #0005}.about-header{padding:32px;display:flex;align-items:center;justify-content:flex-start}.about-header i{margin-right:8px;display:flex}.about-title{font-size:16pt}.about-content{padding:16px 36px 0;margin-bottom:36px;display:flex;flex-direction:column;overflow:auto}.about-content .name{font-size:24pt;display:none;align-items:center}.about-content .name svg{width:100%}body.dark .about-content .name.dark,body:not(.dark) .about-content .name.light{display:flex}.about-content .version{font-size:10pt;font-weight:700;opacity:.6;margin-top:6px;margin-bottom:6px;align-self:center}.about-content .love{font-size:10pt;margin-bottom:24px;align-self:center}.about-content .love a{color:inherit!important}.about-content section{font-size:10pt;margin-top:16px}.about-content section .title{display:flex;justify-content:center;text-transform:uppercase;font-weight:700;font-size:13pt;letter-spacing:3px;margin:8px 0 16px}.about-content section .supporter,.about-content section a{color:var(--theme-color)!important;margin-right:8px;display:inline-flex}.about-content section .supporter{user-select:none}.about-content section .supporter:not(:last-child)::after,.about-content section a:not(:last-child)::after{content:","}@keyframes spinner{to{transform:translate(-50%,-50%) rotate(360deg)}}.about-content section.participants .fetching{margin-right:8px;position:relative;display:inline-flex}.about-content section.participants .fetching::before{content:"Loading..."}
|
||||||
1
min/about.min.html
Normal file
1
min/about.min.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
<div class=bilibili-evolved-about><div class=about-header><i class="mdi mdi-information-outline mdi-24px"></i><span class=about-title>关于</span></div><div class=about-content><p v-if=branch class="name light"v-html=logoImage></p><p v-if=branch class="name dark"v-html=logoImageDark></p><p class=version>v{{version}} · {{clientType}}</p><p class=love><a target=_blank href=https://github.com/the1812/Bilibili-Evolved/ >Made with ❤ </a><a target=_blank href=https://github.com/the1812/Bilibili-Evolved/blob/preview/doc/donate.md>Buy me a coffee ☕</a></p><section class=authors><span class=title>Authors</span><a class=author target=_blank v-for="author of authors"v-bind:href=author.link>{{author.name}}</a></section><section class=contributors><span class=title>Contributors</span><a class=contributor target=_blank v-for="contributor of contributors"v-bind:href=contributor.link>{{contributor.name}}</a></section><section class=supporters><a class=title target=_blank href=https://github.com/the1812/Bilibili-Evolved/blob/preview/doc/donate.md#历史>View Supporters</a></section><section class=participants><span class=title>Community Power</span><span class=fetching v-if=fetching></span><a class=participant target=_blank v-for="participant of participants"v-bind:href=participant.link>{{participant.name}}</a></section><section class=websites><span class=title>Websites</span><a class=website target=_blank v-for="website of websites"v-bind:href=website.link>{{website.name}}</a></section><section class=components><span class=title>Components</span><a class=component target=_blank v-for="component of components"v-bind:href=component.link>{{component.name}}</a></section></div></div>
|
||||||
1
min/about.min.js
vendored
Normal file
1
min/about.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{(async()=>{const i=await t.importAsync("aboutHtml");document.body.insertAdjacentHTML("beforeend",i);dq(".bilibili-evolved-about").addEventListener("be:about-load",(()=>{const t=(e,t)=>e.charCodeAt(0)-t.charCodeAt(0);const i=(e,i)=>t(e.name,i.name);const n=GM.info.script.name.match(/Bilibili Evolved \((.*)\)/);const o=n?n[1]:"Stable";new Vue({el:".bilibili-evolved-about",data:{version:e.currentVersion,clientType:o,logoImage:null,logoImageDark:null,branch:null,authors:[{name:"Grant Howard",link:"https://github.com/the1812"},{name:"Coulomb-G",link:"https://github.com/Coulomb-G"}],contributors:[{name:"PleiadeSubaru",link:"https://github.com/Etherrrr"},{name:"Lets-Halloween",link:"https://github.com/Lets-Halloween"},{name:"shugen002",link:"https://github.com/shugen002"},{name:"Joshuaふみひる",link:""},{name:"kdxcxs",link:"https://github.com/kdxcxs"},{name:"JLoeve",link:"https://github.com/LonelySteve"}].sort(i),fetching:true,participants:[],websites:[{name:"GitHub",link:"https://github.com/the1812/Bilibili-Evolved/"},{name:"Greasy Fork",link:"https://greasyfork.org/zh-CN/scripts/373563-bilibili-evolved"}],components:[{name:"Vue.js",link:"https://cn.vuejs.org/index.html"},{name:"Vuex",link:"https://vuex.vuejs.org/zh/"},{name:"JSZip",link:"https://stuk.github.io/jszip/"},{name:"jQuery",link:"http://jquery.com/"},{name:"debounce",link:"https://github.com/component/debounce/"},{name:"Slip.js",link:"https://github.com/kornelski/slip"},{name:"MDI",link:"https://materialdesignicons.com"},{name:"Lodash",link:"https://lodash.com/"}]},mounted(){dq(".bilibili-evolved-about").addEventListener("be:about-load-community",(()=>{this.init()}),{once:true})},methods:{async getLogos(){this.logoImage=await Ajax.getText(`https://raw.githubusercontent.com/the1812/Bilibili-Evolved/preview/images/bilibili-evolved-wide.svg`);this.logoImageDark=await Ajax.getText(`https://raw.githubusercontent.com/the1812/Bilibili-Evolved/preview/images/bilibili-evolved-wide-dark.svg`)},async init(){this.branch=/Preview|Local/.test(o)?"preview":"master";this.getLogos();const e=new Set;let t=[];let n=1;do{t=await Ajax.getJson(`https://api.github.com/repos/the1812/Bilibili-Evolved/issues?state=all&direction=asc&per_page=100&page=${n}`).catch((()=>{t=[{name:"电波无法到达(´・_・`)",link:null}]}));n++;for(const i of t){e.add(i.user.login)}}while(t.length>0);this.participants=[...e].map((e=>({name:e,link:`https://github.com/${e}`}))).filter((({link:e})=>!this.authors.some((t=>t.link===e))&&!this.contributors.some((t=>t.link===e)))).sort(i);this.fetching=false}}})}),{once:true})})()})();
|
||||||
1
min/activity-apis.min.js
vendored
Normal file
1
min/activity-apis.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>{return(t,e)=>{class s extends EventTarget{constructor(){super(...arguments);this.cards=[]}addCard(t){if(t instanceof Element&&t.classList.contains("card")){if(t.querySelector(".skeleton")!==null){const e=Observer.childList(t,()=>{if(t.querySelector(".skeleton")===null){e.forEach(t=>t.stop());this.addCard(t)}})}else{const e=this.parseCard(t);this.cards.push(e);const s=new CustomEvent("addCard",{detail:e});this.dispatchEvent(s)}}}removeCard(t){if(t instanceof Element&&t.classList.contains("card")){const e=this.parseCard(t).id;const s=this.cards.findIndex(t=>t.id===e);const r=this.cards[s];this.cards.splice(s,1);const n=new CustomEvent("removeCard",{detail:r});this.dispatchEvent(n)}}parseCard(t){const e=e=>{if(t.querySelector(e)===null){return""}return t.querySelector(e).innerText};const s=t=>{const s=parseInt(e(t));if(isNaN(s)){return 0}return s};const r={id:t.getAttribute("data-did"),username:e(".main-content .user-name"),text:e(".card-content .text.description"),reposts:s(".button-bar .single-button:nth-child(1) .text-offset"),comments:s(".button-bar .single-button:nth-child(2) .text-offset"),likes:s(".button-bar .single-button:nth-child(3) .text-offset")};return r}async startWatching(){const t=await SpinQuery.select(".card-list .content");if(!t){return false}const e=[...t.querySelectorAll(".content>.card")];e.forEach(t=>this.addCard(t));Observer.childList(t,t=>{t.forEach(t=>{t.addedNodes.forEach(t=>this.addCard(t));t.removedNodes.forEach(t=>this.removeCard(t))})});return true}}const r=new s;return{export:{activityCardsManager:r}}}})();
|
||||||
1
min/activity-image-saver.min.js
vendored
Normal file
1
min/activity-image-saver.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{(async()=>{if(!document.URL.startsWith("https://t.bilibili.com")&&!document.URL.startsWith("space.bilibili.com")){return}const t=t=>{const e=t.querySelector(".image-viewer");if(e===null){console.log(t)}else{e.addEventListener("contextmenu",(()=>{setTimeout((()=>{const t=dq(".pop-message .toast-text");if(t&&t.innerHTML.includes("作者设置了禁止保存")){Toast.success(`<img src="${e.src}" width="200">`,"解除动态存图限制")}}),200)}))}};[...document.body.children].filter((t=>t.classList.contains("photo-imager-container"))).forEach(t);Observer.childList(document.body,(e=>{e.forEach((e=>{const s=[...e.addedNodes].filter((t=>t instanceof Element&&t.classList.contains("photo-imager-container")));s.forEach(t)}))}))})()})();
|
||||||
1
min/airborne-old.min.js
vendored
Normal file
1
min/airborne-old.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,i)=>{if(typeof isEmbeddedPlayer!=="undefined"&&isEmbeddedPlayer()){return}function t(e){return e.innerText.search(/\d{1,}[::]\d{2}/)!==-1&&e.childElementCount===0}function n(e){var i=e.offsetLeft;var t=e.offsetTop;var n=e.offsetParent;while(n!==null){i+=n.offsetLeft;t+=n.offsetTop+n.clientTop;n=n.offsetParent}styleTransform=e.style.transform;translateXReg=styleTransform.match(/translateX\(-?[0-9]{1,}([.][0-9]{1,})?px\)/);if(translateXReg!==null){i+=parseFloat(translateXReg[0].match(/-?[0-9]{1,}([.][0-9]{1,})?/)[0])}return{left:i,right:i+e.offsetWidth,top:t,bottom:t+e.offsetHeight}}function r(){const e=document.querySelector(".bilibili-player-video-danmaku").mousePosition;document.querySelector(".bilibili-player-video-danmaku").children.forEach((i=>{if(typeof i.airborneDestination==="undefined"){return true}const t=n(i);if(t.left<=e[0]&&e[0]<=t.right&&t.top<=e[1]&&e[1]<=t.bottom){document.querySelector(".bilibili-player-video video").currentTime=i.airborneDestination;document.querySelector(".bilibili-player-video video").play()}}))}function o(i){if(e.airborne){airborneDestination=i.innerText.match(/\d{1,}[::]\d{2}/)[0];sep=airborneDestination.includes(":")?":":":";airborneDestination=parseInt(airborneDestination.split(sep)[0])*60+parseInt(airborneDestination.split(sep)[1]);if(0<=airborneDestination&&airborneDestination<=document.querySelector(".bilibili-player-video video").duration){i.airborneDestination=airborneDestination;const e=i.offsetWidth;i.innerHTML="<u>"+i.innerText+"🚁</u>";if(i.style.marginLeft===""){i.style.marginLeft="-"+(i.offsetWidth-e).toString()+"px"}}}}(function e(){SpinQuery.select((()=>document.querySelector(".bilibili-player-video-danmaku"))).then((()=>{document.querySelector(".bilibili-player-video-danmaku").mousePosition=[0,0];document.addEventListener("mousemove",(e=>{document.querySelector(".bilibili-player-video-danmaku").mousePosition=[e.clientX,e.clientY]}),false);document.querySelector(".bilibili-player-video-wrap").addEventListener("click",(()=>{setTimeout((()=>{r()}),5)}));Observer.childList(".bilibili-player-video-danmaku",(e=>{e.forEach((e=>{e.addedNodes.forEach((e=>{if(t(e)){o(e)}Observer.childList(e,(e=>{e.forEach((e=>{if(t(e.target)){o(e.target)}}))}))}))}))}))}))})()})();
|
||||||
1
min/airborne.min.css
vendored
Normal file
1
min/airborne.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bilibili-player-video-danmaku .b-danmaku.airborne{text-decoration:underline;cursor:pointer;pointer-events:initial}
|
||||||
1
min/airborne.min.js
vendored
Normal file
1
min/airborne.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{let n=true;const a="airborneStyle";(async()=>{if(!document.URL.match(/\/\/www\.bilibili\.com\/video\//)){return}const{forEachVideoDanmaku:e}=await t.importAsync("video-danmaku");t.applyStyle(a);const r=e=>{if(!e){return NaN}const t=e.match(/(\d+)[ ]*[::时分][ ]*(\d+)([ ]*[::分][ ]*(\d+))?/);if(!t){return NaN}if(t[3]){const[,n,a,,r]=t.map((e=>parseInt(e)));if([n,a,r].some((e=>Number.isNaN(e)))){return NaN}if(e.includes("分")&&!e.includes("时")){return NaN}return n*3600+a*60+r}const[,n,a]=t.map((e=>parseInt(e)));if([n,a].some((e=>Number.isNaN(e)))){return NaN}return n*60+a};const i=e=>{if(!n){return}const t=e.target;if(!t.classList.contains("b-danmaku")){return}const a=r(t.textContent);if(!Number.isNaN(a)){const e=dq("video");e.currentTime=a;e.play()}};const s=e=>{const t=!Number.isNaN(r(e.text));e.element.classList.toggle("airborne",t)};e({added:s});Observer.videoChange((async()=>{const e=await SpinQuery.select(".bilibili-player-video-wrap");if(e.classList.contains("airborne-enabled")){return}e.classList.add("airborne-enabled");e.addEventListener("click",i)}))})();return{reload:()=>{n=true;t.applyStyle(a)},unload:()=>{n=false;t.removeStyle(a)}}})();
|
||||||
1
min/aria2-rpc-profile-item.vue.min.js
vendored
Normal file
1
min/aria2-rpc-profile-item.vue.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,i)=>{const t=`<div class=profile-item :class="{duplicate: duplicateName, selected}"><template v-if=!editing>{{profile.name}}</template><template v-else><input type=text v-model=name @keydown.enter=saveProfile()></template><icon v-if=!editing style="transform: scale(0.9)"type=mdi icon=pencil-outline title=重命名 @click.native="editing = true"></icon><icon v-if=editing type=mdi icon=check title=确定 @click.native=saveProfile()></icon></div>`;i.applyStyleFromText(`.profile-item{display:flex;align-items:center;padding:4px 8px;background-color:#8882;border-radius:4px;border:2px solid transparent;flex-shrink:0;cursor:pointer}.profile-item:not(:last-child){margin-right:8px}.profile-item.duplicate{border-color:red}.profile-item.selected:not(.duplicate){border-color:var(--theme-color)}.profile-item input[type=text]{width:5em;border:none!important;padding:0!important;margin:0!important;line-height:normal}`,"aria2-rpc-profile-item-style");return{export:Object.assign({template:t},{components:{Icon:()=>i.importAsync("icon.vue")},props:["profile","deletable","selected"],data(){return{name:this.profile.name,editing:false,duplicateName:false}},methods:{saveProfile(){if(this.name===this.profile.name){this.duplicateName=false;this.editing=false;return}if(this.name===""||e.aria2RpcOptionProfiles.some((e=>e.name===this.name))){this.duplicateName=true;return}else{this.duplicateName=false;if(e.aria2RpcOptionSelectedProfile===this.profile.name){e.aria2RpcOptionSelectedProfile=this.name}this.profile.name=this.name;this.editing=false;this.$emit("profile-update")}}}})}})();
|
||||||
1
min/aria2-rpc-profiles.vue.min.js
vendored
Normal file
1
min/aria2-rpc-profiles.vue.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,i)=>{const r=`<div class=aria2-rpc-profiles><div class=profiles-header><h2>预设</h2><div class=profile-operations><div v-if="profiles.length > 1"class="operation delete-profile"@click=deleteProfile() title=删除预设><icon type=mdi icon=trash-can-outline></icon></div><div class="operation new-profile"@click=addProfile() title=新增预设><icon type=mdi icon=plus></icon></div></div></div><div class=profiles-list><profile-item v-for="(profile, index) of profiles":key="profile.name + index"@profile-update=profileUpdate() @click.native=changeProfile(profile) :profile=profile :deletable="profiles.length > 1":selected="profile.name === selectedProfile"></profile-item></div></div>`;i.applyStyleFromText(`.aria2-rpc-profiles .profiles-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.aria2-rpc-profiles .profiles-header .profile-operations{display:flex;align-items:center}.aria2-rpc-profiles .profiles-header .profile-operations .operation{padding:4px;background-color:#8882;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.aria2-rpc-profiles .profiles-header .profile-operations .operation:not(:last-child){margin-right:8px}.aria2-rpc-profiles .profiles-header .profile-operations .operation:hover{background-color:#8884}.aria2-rpc-profiles .profiles-header .profile-operations .operation .mdi{margin:0}.aria2-rpc-profiles .profiles-list{display:flex;overflow:auto;scrollbar-width:none!important}.aria2-rpc-profiles .profiles-list::-webkit-scrollbar{height:0!important}`,"aria2-rpc-profiles-style");const o={name:"未命名",...e.aria2RpcOption};const t=()=>{const i=["baseDir","maxDownloadLimit","skipByDefault"];if(i.some((i=>i in e.aria2RpcOption))){e.aria2RpcOption=_.omit(e.aria2RpcOption,...i)}const r=Object.getOwnPropertyNames(e.aria2RpcOption).filter((e=>!e.startsWith("_")));let o=false;e.aria2RpcOptionProfiles.forEach((i=>{r.filter((e=>!(e in i)&&e!=="name")).forEach((r=>{if(r==="name"){return}if(!(r in i)){i[r]=e.aria2RpcOption[r];console.log(`[Add] migrated profile property '${r}'`);o=true}}));Object.keys(i).forEach((e=>{if(e==="name"){return}if(!r.includes(e)){delete i[e];console.log(`[Delete] migrated profile property '${e}'`);o=true}}))}));if(o){e.aria2RpcOptionProfiles=e.aria2RpcOptionProfiles}};return{export:Object.assign({template:r},{components:{ProfileItem:()=>i.importAsync("aria2-rpc-profile-item.vue"),Icon:()=>i.importAsync("icon.vue")},data(){t();const i=[...e.aria2RpcOptionProfiles];if(i.length===0){i.push(o);e.aria2RpcOptionProfiles=i}return{profiles:i,selectedProfile:e.aria2RpcOptionSelectedProfile||o.name}},watch:{selectedProfile(i){if(e.aria2RpcOptionSelectedProfile!==i){e.aria2RpcOptionSelectedProfile=i}}},methods:{profileUpdate(){e.aria2RpcOptionProfiles=this.profiles;this.selectedProfile=e.aria2RpcOptionSelectedProfile},changeProfile(e){this.selectedProfile=e.name;this.$emit("profile-change",e)},addProfile(){const i={...this.profiles.find((e=>e.name===this.selectedProfile))};i.name=i.name.replace(/[\d]+$/,"");if(this.profiles.some((e=>e.name===i.name))){let e=1;while(this.profiles.some((r=>r.name===i.name+e.toString()))){e++}i.name=i.name+e.toString()}this.profiles.push(i);e.aria2RpcOptionProfiles=this.profiles;this.changeProfile(i)},deleteProfile(){const i=this.profiles.findIndex((e=>e.name===this.selectedProfile));const r=i===0?0:i-1;const o=this.profiles[r];this.profiles.splice(i,1);e.aria2RpcOptionProfiles=this.profiles;this.changeProfile(o)}}})}})();
|
||||||
1
min/aria2-rpc.min.js
vendored
Normal file
1
min/aria2-rpc.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{const o=()=>{const e=t.aria2RpcOption;const o=e.host.match(/^http[s]?:\/\//)?e.host:"http://"+e.host;const r="aria2.addUri";return{option:e,host:o,methodName:r}};const r=async(t,e=false)=>{try{let o=await t();if(typeof o==="string"){o=JSON.parse(o)}if(o.error!==undefined){if(o.error.code===1){logError(`请求遭到拒绝, 请检查您的密钥相关设置.`)}else{logError(`请求发生错误, code = ${o.error.code}, message = ${o.error.message}`)}return false}if(!e){Toast.success(`成功发送了请求, GID = ${o.result}`,"aria2 RPC",5e3)}return true}catch(t){logError(`无法连接到RPC主机.`);return false}};const s=async(t,e=false)=>{const{option:s,host:n,methodName:a}=o();return await r((async()=>{const e=window.btoa(unescape(encodeURIComponent(JSON.stringify(t.params))));const o=`${n}:${s.port}/jsonrpc?method=${a}&id=${t.id}¶ms=${e}`;console.log(`RPC request:`,o);if(o.startsWith("http:")){return await new Promise(((t,e)=>{GM.xmlHttpRequest({method:"GET",url:o,responseType:"json",onload:e=>t(e.response),onerror:t=>e(t)})}))}else{return await Ajax.getJson(o)}}),e)};const n=async(t,e=false)=>{const{option:s,host:n,methodName:a}=o();return await r((async()=>{const e=`${n}:${s.port}/jsonrpc`;const o={method:a,id:t.id,params:t.params};if(e.startsWith("http:")){return await new Promise(((t,r)=>{GM.xmlHttpRequest({method:"POST",url:e,responseType:"json",data:JSON.stringify(o),onload:e=>t(e.response),onerror:t=>r(t)})}))}else{return await Ajax.postJson(e,o)}}),e)};const a=async(e,o=false)=>{const r=t.aria2RpcOption;for(const t of e){let e;if(r.method==="get"){e=await s(t,o)}else{e=await n(t,o)}if(o===true&&e===false){logError(`${decodeURIComponent(t.id)} 导出失败`)}}};const i=t=>{if(!t){return{}}const e=t.split("\n").map((t=>{const[e,...o]=t.trim().split("=");return[e.trim(),o.join("=").trim()]})).filter((t=>Boolean(t[1])));return Object.fromEntries(e)};return{export:{sendRpc:a,parseRpcOptions:i}}})();
|
||||||
1
min/ass-utils.min.js
vendored
Normal file
1
min/ass-utils.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{const n=t=>{if(t.startsWith("#")){t=t.substring(1)}const e=t.substring(0,2);const n=t.substring(2,4);const r=t.substring(4,6);return{red:e,green:n,blue:r}};const r=t=>{const{red:e,green:r,blue:o}=n(t);return`\\c&H${o}${r}${e}&`.toUpperCase()};const o=(t,e=1)=>{const{red:r,green:o,blue:s}=n(t);const c=Math.round(255*(1-e)).toString(16);return`&H${c}${s}${o}${r}`.toUpperCase()};const s=t=>{const[e,n="00"]=String(t).split(".");return`${e.padStart(2,"0")}.${n.substr(0,2).padEnd(2,"0")}`};const c=t=>{let e=0;let n=0;while(t>=60){t-=60;n++}while(n>=60){n-=60;e++}return`${e}:${String(n).padStart(2,"0")}:${s(t)}`};const i=(t,e)=>[c(t),c(t+e)];const u=(t,e)=>[c(t),c(e)];const a=t=>{const e={"{":"{","}":"}","&":"&","<":"<",">":">",""":'"',"'":"'","\n":"\\N"};for(const[n,r]of Object.entries(e)){t=t.replace(new RegExp(n,"g"),r)}return t};return{export:{convertHexColorForDialogue:r,convertHexColorForStyle:o,convertTimeByDuration:i,convertTimeByEndTime:u,normalizeContent:a}}})();
|
||||||
1
min/auto-continue.min.js
vendored
Normal file
1
min/auto-continue.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,i)=>{if(typeof isEmbeddedPlayer!=="undefined"&&isEmbeddedPlayer()){return}function t(i){const t=i.text();if(/第(\d+)话/.test(t)){if(e.allowJumpContinue){i.parent().find(".bilibili-player-video-toast-item-jump").click()}return}const n=/((\d)*:)?(\d)*:(\d)*/g;const o=t.match(n);if(!o){return}const r=o[0].split(":");const l=(()=>{if(r.length===3){const[e,i,t]=r.map((e=>parseInt(e)));return e*60*60+i*60+t}else if(r.length===2){const[e,i]=r.map((e=>parseInt(e)));return e*60+i}else{logError(`解析历史时间发生错误: historyTime=${JSON.stringify(r)}`);return NaN}})();const s=i.parent();const a=document.querySelector("video");if(l<a.duration){a.currentTime=l;a.play();s.find(".bilibili-player-video-toast-item-jump").remove();const e=$(`<div class="bilibili-player-video-toast-item-jump">从头开始</div>`);e.appendTo(s).on("click",(()=>{a.currentTime=0;s.find(".bilibili-player-video-toast-item-close").get(0).click()}));i.html(`<span>已跳转到上次历史记录</span><span>${o[0]}</span>`)}else{s.find(".bilibili-player-video-toast-item-close").get(0).click()}}function n(){SpinQuery.condition((()=>$(".bilibili-player-video-toast-item-text")),(e=>e.text().indexOf("上次看到")!==-1),(e=>t(e.filter(((e,i)=>i.innerText.indexOf("上次看到")!==-1)))))}Observer.videoChange(n)})();
|
||||||
1
min/auto-draw.min.js
vendored
Normal file
1
min/auto-draw.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,n)=>{(async()=>{if(!/^https:\/\/live\.bilibili\.com\/(blanc\/)?[\d]+/.test(document.URL)){return}const t=await SpinQuery.condition((()=>dq(".chat-popups-section")),(t=>t!==null&&t.querySelector("chat-draw-area")===null));if(!t){console.warn("[自动领奖] 未能找到弹窗容器");return}Observer.childListSubtree(t,(()=>{let t;console.log("draw button =",dq(".chat-popups-section .draw>span:nth-child(3)"));t=dq(".chat-popups-section .draw>span:nth-child(3)");if(t===null){const t=dq(".chat-popups-section .function-bar>span:nth-child(3)");if(t!==null){const n=Observer.attributes(t,(()=>{if(t.style.display!=="none"){n.forEach((t=>t.stop()));t.click()}}))}}if(t!==null){t.click()}}))})()})();
|
||||||
1
min/auto-play-control.min.js
vendored
Normal file
1
min/auto-play-control.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{(async()=>{const e=["https://www.bilibili.com/video/","https://www.bilibili.com/watchlater/","https://www.bilibili.com/medialist/play/"];if(!e.some((e=>document.URL.startsWith(e)))){return}const i={enable:[".multi-page .next-button",".player-auxiliary-autoplay-switch input"],disable:[".recommend-list .next-button"]};const o=[()=>Boolean(dq(".multi-page .list-box li.on:last-child"))];const a=e=>Boolean(e.querySelector(".switch-button.on")||e.matches(":checked"));const{playerReady:l}=await t.importAsync("player-ready");await l();const n=async()=>{const e=await SpinQuery.select([...i.disable,...i.enable].join(","));if(!e){return}const t=i.enable.some((t=>e.matches(t)))&&o.every((e=>!Boolean(e())));const l=a(e);console.log(l,t,e);if(t!==l){e.click()}};Observer.videoChange((async()=>{n();const e=await SpinQuery.select(".bilibili-player-video video");e===null||e===void 0?void 0:e.addEventListener("play",n,{once:true})}))})()})();
|
||||||
1
min/auto-play.min.js
vendored
Normal file
1
min/auto-play.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,d)=>{if(typeof isEmbeddedPlayer!=="undefined"&&isEmbeddedPlayer()){return}SpinQuery.condition((()=>document.querySelector(".bilibili-player-video video")),(e=>e&&e.paused===true),(e=>e.play()))})();
|
||||||
1
min/bangumi-timeline.vue.min.js
vendored
Normal file
1
min/bangumi-timeline.vue.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/batch-download.min.js
vendored
Normal file
1
min/batch-download.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/batch-warning.min.js
vendored
Normal file
1
min/batch-warning.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(r,o)=>{const n=32;const t=412;const e=r=>{Toast.info(`为防止短时间内大量下载导致封禁, 请不要选择超过${n}的集数.`,r,5e3)};const s=()=>{throw new Error(`为防止短时间内大量下载导致封禁, 请不要选择超过${n}的集数.`)};const a=()=>{throw new Error(`短时间内下载量过大, 请过段时间再试.`)};return{export:{MaxBatchSize:n,BannedResponse:t,showBatchWarning:e,throwBatchError:s,throwBannedError:a}}})();
|
||||||
1
min/biliplus-redirect.min.js
vendored
Normal file
1
min/biliplus-redirect.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(i,e)=>{const o=`www.biliplus.com`;const n=["bilibili.com/video/","bilibili.com/bangumi/play","space.bilibili.com"];return{widget:{condition:()=>n.some((i=>document.URL.includes(i))),content:`\n<a class="gui-settings-flat-button" id="biliplus-redirect">\n<i class="icon-biliplus"></i>\n<span>转到BiliPlus</span>\n</a>`,success:()=>{const i=document.querySelector("#biliplus-redirect");const e=/\/video\/(av[\d]+|BV.+)/i;const n=()=>{i.href="";i.disabled=true};const c=e=>{if(document.URL!==e){i.href=e}else{n()}};if(location.host==="space.bilibili.com"){const i=document.URL.replace("space.bilibili.com/",`${o}/space/`);c(i)}else if(document.URL.includes("/bangumi/play")){c(`https://${o}${window.location.pathname}${window.location.search}`);Observer.videoChange((()=>{const i=document.querySelector(".av-link,.info-sec-av");const e=unsafeWindow.aid||i.innerText.replace(/[aAvV]/g,"");const n=`https://${o}/video/av${e}/`;c(n)}))}else if(e.test(document.URL)){const[,i]=document.URL.match(e);c(`https://${o}/video/${i}/`)}else{Observer.videoChange((()=>{const i=document.URL.replace(window.location.host,o);c(i)}))}}}}})();
|
||||||
1
min/blackboard.min.js
vendored
Normal file
1
min/blackboard.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(s,t)=>{const o=async()=>{const s=4694;const t=`https://api.bilibili.com/x/web-show/res/locs?pf=0&ids=${s}`;const{code:o,message:a,data:e}=await Ajax.getJson(t);if(o!==0){throw new Error(`获取活动卡片失败: ${a}`)}const r=e[s];return r.map((s=>({url:s.url,title:s.name,isAd:s.is_ad_loc,imageUrl:s.pic})))};return{export:{getBlackboards:o}}})();
|
||||||
1
min/blackboard.vue.min.js
vendored
Normal file
1
min/blackboard.vue.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(a,r)=>{const i=`<div class=blackboards><div class=header><div class=title>活动</div><a class=more href=https://www.bilibili.com/blackboard/x/act_list/ target=_blank><icon type=mdi icon=dots-horizontal></icon>更多</a></div><input class="hidden-input blackboard-radio"type=radio name=blackboard v-for="(b, i) of blackboards":checked="i === 0":id="'blackboard' + i":data-index=i :key=i><div class=blackboard-cards><a class=blackboard-card target=_blank v-for="(b, i) of blackboards":key=i :href=b.url :title=b.title><dpi-img :src=b.imageUrl :alt=b.title :size="{width: 500, height: 250}":root=cardsContainer></dpi-img><div class=title :title=b.title>{{b.title}}</div></a></div><div class=jump-dots><label v-for="(b, i) of blackboards":for="'blackboard' + i":key=i><div class=jump-dot></div></label></div></div>`;r.applyStyleFromText(`.simple-home .blackboards{position:relative;display:grid;grid-template-areas:"header header" "cards cards";grid-template-columns:8px 1fr;grid-template-rows:1fr 250px;row-gap:16px;column-gap:16px;align-self:start}.simple-home .blackboards .jump-dots{position:absolute;left:50%;bottom:0;transform:translateX(-50%);grid-area:cards;align-self:center;justify-self:center;display:flex;align-items:center}.simple-home .blackboards .jump-dots label{display:block;padding:8px 6px;cursor:pointer}.simple-home .blackboards .jump-dots .jump-dot{background-color:#8884;box-sizing:border-box;width:20px;height:8px;border-radius:8px}.simple-home .blackboards .blackboard-cards{display:flex;grid-area:cards;--blackboard-width:350px;--blackboard-height:250px;--image-height:197px;width:var(--blackboard-width);height:var(--blackboard-height);border-radius:16px;overflow:hidden;background-color:#fff;box-shadow:0 4px 8px 0 #0001}body.dark .simple-home .blackboards .blackboard-cards{background-color:#282828}.simple-home .blackboards .blackboard-cards .blackboard-card{flex:0 0 auto;width:100%;height:100%;position:relative;display:block;transition:.8s cubic-bezier(.44,.29,.13,1)}.simple-home .blackboards .blackboard-cards .blackboard-card img{width:100%;height:var(--image-height);object-fit:fill;display:block;border-radius:12px;transition-duration:inherit}.simple-home .blackboards .blackboard-cards .blackboard-card .title{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);padding:0 16px;font-size:14px;font-weight:700;border-radius:14px;max-width:var(--blackboard-width);box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}`,"blackboard-style");return{export:Object.assign({template:i},{components:{Icon:()=>r.importAsync("icon.vue"),"dpi-img":()=>r.importAsync("dpi-img.vue")},data(){return{blackboards:[],interval:0}},destroyed(){if(this.interval){clearInterval(this.interval)}},computed:{cardsContainer(){return this.$el.querySelector(".blackboard-cards")}},async mounted(){const{getBlackboards:a}=await r.importAsync("blackboard");this.blackboards=(await a()).filter((a=>!a.isAd));const i=dq(".blackboards");this.interval=setInterval((()=>{if(!document.hasFocus()||i.matches(".blackboards:hover")){return}const a=parseInt(dq(`.blackboard-radio:checked`).getAttribute("data-index"));let r;if(a===this.blackboards.length-1){r=0}else{r=a+1}dq(`.blackboard-radio[data-index='${r}']`).checked=true}),5e3)}})}})();
|
||||||
1
min/blur-video-control.min.css
vendored
Normal file
1
min/blur-video-control.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.video-control-blur-layer{width:100%;height:100%;position:absolute;-webkit-backdrop-filter:blur(48px);backdrop-filter:blur(48px);z-index:-1;top:0}.bilibili-player-video-control-mask{background:0 0!important}.bilibili-player-video-control-bottom,.bui-slider .bui-track.bui-track-video-progress .bui-bar-wrap{background-color:transparent!important}.bilibili-player-video-control-bottom{position:relative}.bilibili-player-area .bilibili-player-video-control-bottom,.bilibili-player-area .bilibili-player-video-control-wrap{transition:none!important}
|
||||||
1
min/blur-video-control.min.js
vendored
Normal file
1
min/blur-video-control.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(o,e)=>{const l=async()=>{const o=await SpinQuery.count(".bui-slider .bui-track.bui-track-video-progress,.bilibili-player-video-control-bottom",2);o.forEach((o=>{if(!o.classList.contains("video-control-blur-container")){o.classList.add("video-control-blur-container");o.insertAdjacentHTML("afterbegin",`<div class="video-control-blur-layer"></div>`)}}))};e.applyStyle("blurVideoControlStyle");Observer.videoChange(l);return{reload:()=>{document.querySelectorAll(".video-control-blur-layer").forEach((o=>o.style.display="block"));e.applyStyle("blurVideoControlStyle")},unload:()=>{document.querySelectorAll(".video-control-blur-layer").forEach((o=>o.style.display="none"));e.removeStyle("blurVideoControlStyle")}}})();
|
||||||
1
min/bpx-player-adaptor.min.js
vendored
Normal file
1
min/bpx-player-adaptor.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{const n=async()=>{const e=await SpinQuery.select(".bpx-player-container");if(!e){console.warn("[bpx player polyfill] bpxContainer not found");return}Observer.attributes(e,(()=>{const t=e.getAttribute("data-screen");document.body.classList.toggle("player-mode-webfullscreen",t==="full"||t==="web");t==="wide"?document.body.classList.add("player-mode-widescreen"):""}))};const o=async()=>{const e=await SpinQuery.select((()=>unsafeWindow.$pbp));if(!e){console.warn("[bpx player polyfill] pbp not found");return}const t={aid:e.options.aid.toString(),cid:e.options.cid.toString(),bvid:e.options.bvid};if(Object.values(t).some((e=>e===""||parseInt(e)<=0))){console.warn("[bpx player polyfill] invalid pbp data")}Object.assign(unsafeWindow,t)};const i=async()=>{if(!document.URL.startsWith("https://www.bilibili.com/bangumi/play/")){return}n();o()};return{export:{bpxPlayerPolyfill:i}}})();
|
||||||
285
min/bundle.json
Normal file
285
min/bundle.json
Normal file
@ -0,0 +1,285 @@
|
|||||||
|
{
|
||||||
|
"about.min.css": "E868D1E0B96F68DB0AB9A4F2ACC63275F150A939640E687F044DA3CB6DDA1862",
|
||||||
|
"about.min.html": "A8C988A0C1082BB52F8F6AC599E7E234D88D75869C51AA6C15A8C75897DC4918",
|
||||||
|
"about.min.js": "24BA69AE2E90CF016271065D73A21A4CC43CFE486EB23918B5394653005044FF",
|
||||||
|
"activity-apis.min.js": "459D26DB0BB447FEFE6F1842541A119E67C63573A800E56AD7FEC71D20087CEF",
|
||||||
|
"activity-image-saver.min.js": "737286593031A8539FD5A511A28CAD02F1D9ED5E23C05D917A05D9DDBA2BE9AB",
|
||||||
|
"airborne.min.css": "2224FDD07845BD008E193B5E575B14243B27F3E151B46DF3D5D66270154E8278",
|
||||||
|
"airborne.min.js": "C100780643B398D9F1AFC00C3FF16E5EAC87C1690180AB38A35B03B87A996BDA",
|
||||||
|
"airborne-old.min.js": "6CED3BE1B69D3D7AC80B7755EECEA556F334E04435DFFD5E98934D1295B605BF",
|
||||||
|
"aria2-rpc.min.js": "E045BA326012EA67A72D7D3A7B0A33ECBF812A244AEB7DB1BBCB350E8AFBCFC0",
|
||||||
|
"aria2-rpc-profile-item.vue.min.js": "54C7C1639F3A0AE5AFC5FFFED3C9F6D7AD6CE28344ABCF238147D18E8B8D50C6",
|
||||||
|
"aria2-rpc-profiles.vue.min.js": "4A3AF9390F155C03DF50DAC04D8EB8A8E1C794B185E38B01C202B10CE227AEDF",
|
||||||
|
"ass-utils.min.js": "6F5D6564F82FEEE4F1BA108F7283653AB8A3A704DB0CE8EDC741A761CCBDBC7B",
|
||||||
|
"auto-continue.min.js": "8EF0A775E1520C5D1A6058A3289EB2E47D16681EF3E2B6043780E2FDAC919CAA",
|
||||||
|
"auto-draw.min.js": "303469718E41C156C763AE085FC62B42AEFD654B7E6083DAF111C5D5EE4CA619",
|
||||||
|
"auto-play.min.js": "67A4735A629EC325009C8F79838FC1A852AB9AF15DFF8A2B60F0F0943DC3A4A9",
|
||||||
|
"auto-play-control.min.js": "2133E452091800D15F858CB9C26CE5D6AD3A9B46020EE669C39077843039B358",
|
||||||
|
"bangumi-timeline.vue.min.js": "C24D3F9D45C57ED653F085BA3A9E9B67296F4E1D1E16215D9C5206DB2D48A48C",
|
||||||
|
"batch-download.min.js": "044D6945486C5C7E76B8E6C2F98973F4D7C554BE0A09DB2055C9030B284C1B78",
|
||||||
|
"batch-warning.min.js": "15A2134D855D9098B9485AA8023B5D98838F67D18FAB414B0C1FCD32F9BD05DD",
|
||||||
|
"biliplus-redirect.min.js": "EEFF7EE484A8D214E8FA110694E99F8BB62BD7263D1458DC83E7047F4CD6B9D4",
|
||||||
|
"blackboard.min.js": "09E24A83A4B0AFDC1AFC22CD48E3DB443B557B432C147A9B8E64635983200CB7",
|
||||||
|
"blackboard.vue.min.js": "3AA5E607BBB54CC8302741EFDBB03D43CBEEA1DC045A17E9F72C524862033CB2",
|
||||||
|
"blur-video-control.min.css": "B72FA7AD198ED1C9A9620A83881441F96F9FF3083ED12203A324B9753A7CCFFD",
|
||||||
|
"blur-video-control.min.js": "F5C4C5E45BEB5BB671788FB72677FE121D6834C775912D7B1BCFE4A4EAFA599A",
|
||||||
|
"bpx-player-adaptor.min.js": "4CF00DB19BCD71686B816D6DCB78770169630862181CEA6D6F393F2E2C0C59A5",
|
||||||
|
"bvid-convert.min.css": "5405081513C4B5B7CD0E0C1B021CAD25EFA63CA03AD70CD8FA6F62F116BB8D96",
|
||||||
|
"bvid-convert.min.js": "AD6703BE3ABDC91DD4968B853474834B879B33A21DE4D3570C83D4BDF845020E",
|
||||||
|
"category-regions.min.js": "BD33FB46292CE98B5961E8C4F1A2BF2E6500E1EA425373E64D2139C3356E184F",
|
||||||
|
"check-in-center.min.js": "8C6E3DA9EF8A447B5A9FA69BAD0BC4FC8D506740CEE8AED1F08F90FA41412E3F",
|
||||||
|
"clear-cache.min.js": "5CF322A148027F065A7F24DFD47F797AE915C20742B0B7C649E0B6D77397A144",
|
||||||
|
"collapse-live-side-bar.min.css": "22348786547D2D8DB659A306AF2E9C1F2050D66488778C71545AAEF785FD57E6",
|
||||||
|
"collapse-live-side-bar.min.js": "9B4296F88C32FD081E4FD0DD48B4353C243A423446CF1CA047EB3B574D597F80",
|
||||||
|
"column-image-exporter.min.js": "C8FA96C64E21D0195D95F1B7A5E67EFFC778DD46E2FCB4ACBE69C48E76B5E046",
|
||||||
|
"combo-like.min.js": "E32FE23747479132F90C3D66CA6EB78031B4F7388F77CC56668E41B3F05FE954",
|
||||||
|
"comment.min.css": "8D8B635B1020DDCCCF748F34B4EEC60CBB409166C53F70800836960B40D0BD05",
|
||||||
|
"comment.min.js": "1634EEADF5BF2A29E6D39AFDA17804AB2442CDA3BCB0B4D9DBAA6F6E7E965F72",
|
||||||
|
"comment-apis.min.js": "D0E6EF724B5C068AD55EE9F740090A782447CE373080848FCA24879FC56E5E8B",
|
||||||
|
"comment-dark.min.css": "E980508E86203743C36FEE4F7149BFF53961ECBC4EC140E8C162D18D395B940A",
|
||||||
|
"comments-translate.min.js": "5B17DEBBFDC6081952CCB698FF2F822138248F7B47C52584E4F0851AD1D99A9A",
|
||||||
|
"compact-layout.min.css": "CAC8B0DBA8E90B38D31F0811B7B469709052204AC36D5D3F20FE5D0899FDDCCB",
|
||||||
|
"compact-layout.min.js": "CB183077272C81C9D9DD86B0AD67EA0297F4D6F22253B16DDC6C3394A441A6FF",
|
||||||
|
"copy-comment-link.min.js": "991A5633FE2737904B3199068FD66F5E749EBB63D3E7BFB4E86323CFCF725F88",
|
||||||
|
"copy-feeds-link.min.js": "36D7C804F088A6C6905CD91C5F9D2D58E20634C7E0814AE03740CCEC790F6BB4",
|
||||||
|
"custom-control-background.min.css": "1981FD2BF3B17ECF33F98D5DEDAF0D32ACBE9532A51FDB70822286991AB98EF3",
|
||||||
|
"custom-control-background.min.js": "483F57DDD56F5B3A77C9CB35EB7CA191BF34CB6B3EEF5E12A4C10A42ADE563A2",
|
||||||
|
"custom-navbar.min.css": "3ADECA5A15ABD723ADE914BECC5D351A2ACA672A1C02CEA89C3F6AB0044B8A87",
|
||||||
|
"custom-navbar.min.html": "1F95ABCE9F19727CAF3B48C40E517EA4C2F602E9C2A73BD822B56BF91AB3F631",
|
||||||
|
"custom-navbar.min.js": "EFA569755E0D45AE866FB59D9AD91C90C2DD720D1D61A8A46DC89597539379F2",
|
||||||
|
"custom-navbar-activities.min.js": "A7AB41C75EFEF45F3186D5A110629FA98F16C552E3B6F58BA0A735CB86E58547",
|
||||||
|
"custom-navbar-blank.min.js": "E8F08DA7CD2C67F9D064B959A64CFC6658103DBCBE2B9B58D978A1742E02D829",
|
||||||
|
"custom-navbar-category.min.js": "F5E2A5D316D372BF43769D20095C4700A3A3E5F63CE3607F17030AF0784F1D34",
|
||||||
|
"custom-navbar-component.min.js": "1FD222528E46FA3D6E45C2CA156EFE02405352B6BAA2AB8E4D8D27DFFFB30C5B",
|
||||||
|
"custom-navbar-dark-mode.min.js": "6680AC00E0F4873E35821D25E179B086F0978093F5A09EC2FB2EFE14E9EEA495",
|
||||||
|
"custom-navbar-favorites-list.min.js": "8693575A2246D380E5B18AB78B315628BC452CC2207464CA4EE3BC3AE116BA9A",
|
||||||
|
"custom-navbar-history-list.min.js": "EBF794F5DFACBC8099703178AB7A65AF46FFABA0B0E86B83A069B60DB27265CE",
|
||||||
|
"custom-navbar-iframe.min.js": "521D95AFDD0F496BD2B9AFA229D5D0E5DD57C518BAE8337D9753887EC1926C87",
|
||||||
|
"custom-navbar-logo.min.js": "CE70A2E60EBDB145FC07D97A1DDABD1077DAA66CE83574B97788216D788BA4C5",
|
||||||
|
"custom-navbar-messages.min.js": "17F42493B555476F3F1E4A6BF0E3AD0F0B4D8742F235B0FF60BD450AAA97588E",
|
||||||
|
"custom-navbar-rank.min.js": "3661DA6EB1485C71FCDC6BA50EF432252AB7019C9398031D4243C679183466E1",
|
||||||
|
"custom-navbar-search-box.min.js": "E1813FD6A9B597A1E906C91DF4377006227ED50C6ADB1CF411A1779AE0C4F73B",
|
||||||
|
"custom-navbar-settings.min.js": "B41F2AF7AF10B968472DCF2539E9C530F4117D7D3811378D2DE163536CF31E51",
|
||||||
|
"custom-navbar-simple-link.min.js": "51E2FDD06832E585E86884890D1DC6321A802D43332D7E7B5758A20BC1AB1E03",
|
||||||
|
"custom-navbar-subscriptions.min.js": "D99A25DE4ABB104FA95166F51EB4FEE9DFDC4AE162CF189ECBCF99CA2E5E0E6C",
|
||||||
|
"custom-navbar-upload.min.js": "F5425031E7696C2C8EB0FAF1967C09276054AFFF5AE93E05C0246F8040B207AF",
|
||||||
|
"custom-navbar-user-info.min.js": "9CF5F25078FF5380B1C5BD74DCABCC84DF5E5593C2E3000567BED82FE57749E2",
|
||||||
|
"custom-navbar-video-list.min.js": "A4D01957587605411A33DF9E27DB7FC5A8646540A1E6B14C0B60702853B1FBEB",
|
||||||
|
"custom-navbar-watchlater-list.min.js": "CD6D45F0B6FE382BE57CEF6C2F77734496FE1296000EBB843B558DDB5D4C51DD",
|
||||||
|
"danmaku-converter.min.js": "C54666E9910A927B54051EAB7C3DB6F93C1F6010A47614A619AFD7487C3F7183",
|
||||||
|
"danmaku-segment.min.js": "43CC3236AFABA89BD0AE24D640809BE333772824E3994541AFC3CDDD9F881613",
|
||||||
|
"danmaku-send-bar.min.css": "F309FC17E7657BAA676D446458750D8069051617B44DD3D1457B4A9C519B2ED1",
|
||||||
|
"danmaku-send-bar.min.js": "7F694676C4A4EA608C02981C2ABC27945270CC89C89F2F1FB66FD01327DD9066",
|
||||||
|
"dark.min.css": "C0B95FA27A81428BB77582BA1EF6C404B5AA6F4768588F13ECE3072BEB1B9BA3",
|
||||||
|
"dark.user.css": "075EF73D0FD14F0BD6E358EC5BEB0999A3C25628F1825EBE98CD72FF6D455D90",
|
||||||
|
"dark-color-scheme.min.js": "7C89C14ACEE44CCE2E402A63768A3B53251B4B1D82675DD85532AABB8F2082FA",
|
||||||
|
"dark-important.min.css": "29FAC0857FB4BDF4EAD24582D4984471E80FC83EF9BD9A108B17D5AC5617DE75",
|
||||||
|
"dark-navbar.min.css": "7FAD547E326B768904B3739C978DF86FFDDD5E5064FB8F490710D197CCC3018B",
|
||||||
|
"dark-schedule.min.js": "555383CBACD01D02C7965261118D5F4CA93A2F69457776F454F7FF1897F40DBB",
|
||||||
|
"dark-styles.min.js": "C184E5E0815BCBFF473916569CB66111C94D289FB9AB575E3945006227C55C27",
|
||||||
|
"debounce.min.js": "E64A2AD8E8C063787466D50788E8D5D49B27DDCEF5D2B7EA534B4E6B606E9124",
|
||||||
|
"default-danmaku-settings.min.css": "D9942B184FEDA7B08CFA0C34920E97D7A83B81762DCBF757642EBB60F95FF25D",
|
||||||
|
"default-danmaku-settings.min.js": "901EA05F842932F436F0ABEAC99802D286575F9033CE078AA246FD1453B98998",
|
||||||
|
"default-live-quality.min.js": "3DE4EC96DE1CB7F187E61B7045EC14EBBF74B1853A990B4FE32372F27D47F4E4",
|
||||||
|
"default-player-layout.min.js": "2F018C09DCCB9D0DD671ED4868A1EAC365D63CC51618EE076598C6624E3BEA7E",
|
||||||
|
"default-player-mode.min.js": "4AB01DAFFC591F20B02C1C9F3E3E682102A43AD5B22A711D79DC422606CD9B68",
|
||||||
|
"default-video-quality.min.js": "20C0F41F683D685CCD22BD91F0EB4C2227146DD5586EB65388EE8FA97F46F7D2",
|
||||||
|
"default-video-speed.min.js": "720B588D410C267C1EE411927C9FC9FBBAE693A6938134416962E7B5A0682D25",
|
||||||
|
"disable-danmaku-highlights.min.js": "1F8C7267B7015ABB737D2457FCCC2E48CC31364E63ACF330770D61B152C9ABC6",
|
||||||
|
"disable-feeds-details.min.js": "3255289129448347672530526BA7F90558144A150B268F37F7D575BF0E4F521E",
|
||||||
|
"disable-profile-popup.min.js": "E76C14C9E3ADBD6E5F46651AA93D0BD05619CAB4AE9CA126F6C567F9B69A81A4",
|
||||||
|
"disable-up-danmaku-style.min.js": "A714412A8D4643876BCBF23989930CB19205EB4E0505A963AF9770D88D975D4B",
|
||||||
|
"double-click-fullscreen.min.js": "CBC72858267E1BC7CD6FC4333573899213F6A81ECCE51F85D00CFB5EEA9C42BC",
|
||||||
|
"download-audio.min.js": "E6A2237E51954AA27A53FBF9FD015C25DA11363D6B9697EE0BB747B922C6B2FE",
|
||||||
|
"download-danmaku.min.js": "7896ECB1B2F82F34FF833956D2639E3DB20575655B2A32BEED03BF24CFF36073",
|
||||||
|
"download-live-records.min.js": "9E32B842115C7D489688713D426206C611C444AA6BFA246F0BA07873EB49AA29",
|
||||||
|
"download-package.min.js": "C11976A53D17D48510B932DF2E6FA51E955ACF2889D85E083B53DDBC75FD599D",
|
||||||
|
"download-subtitle.min.js": "A568C091C0F180EB7771C8BCC3EA46ECD1EF39E2674D737BB4B2EC52760C3163",
|
||||||
|
"download-video.min.css": "ABED6E1EE0F75AE64E1698FEF98CE9DF94EBDC707AABE4C305108CA73156C7A5",
|
||||||
|
"download-video.min.html": "BBF00C1AE2C6C0FE534F72C9C7D513AB1039E2390C1E5742D452296F52AAA4F3",
|
||||||
|
"download-video.min.js": "FC561BFA1B57590209892BDC4AB982F09A7D7B99E91D7A25BDD7316014243E9D",
|
||||||
|
"dpi-img.vue.min.js": "006E641C11D51051F13BDE630DBC57E4F9FA58E3F106D6D073FBB7A100E9D222",
|
||||||
|
"expand-danmaku.min.js": "1D855006799D56AF09697EB8F6488303DB05811E8F3C84298AC08A4FE3A4CFA1",
|
||||||
|
"expand-description.min.css": "4B8023CD9C6AFFD65A8FB33F3735480AF1151DC1F3E2AC551442266268A6F873",
|
||||||
|
"expand-description.min.js": "528ED5892BDDE16EAA4F60BD962FCC7A70E0E4E322ED3F798AFC6D72D6C3C99B",
|
||||||
|
"extend-feeds-live.min.css": "BD0BF6E670808C940B3F3F7D8798B02676A58AA204449AAAE6E162D27EB8598A",
|
||||||
|
"extend-feeds-live.min.js": "CACEC3C5DE877639BBD2DC6BC5A4C4FFDD160B32C338DA1824F68E1985139F83",
|
||||||
|
"extend-video-speed.min.js": "5654150CB792C7413C3FBFAE22477DB2E85EEF55611A0F01B64128214DBDB390",
|
||||||
|
"favorites-redirect.min.js": "9DB5FF294C7A49AD9341201C1FA0C8D7EBE7BFC1424DD74C4B796D1F0E24CFD1",
|
||||||
|
"feeds-apis.min.js": "5265857A2834C53C9373EA45BCE71B240EA2ABF9CA23303E09DB600B4C38C8D4",
|
||||||
|
"feeds-filter.min.js": "CF558BFD3860AC3E11757FFFF6A8AABE70DF7DFA1D1077684A1BF08868C649DB",
|
||||||
|
"feeds-filter-card.vue.min.js": "C57D50BF9C6661827B898B238539A8AAC86314A040A15780FD77B33C18E4E83F",
|
||||||
|
"feeds-image-exporter.min.js": "97392AFED64DEB5115ACDAE01BF97D41C32A68E431154269E1ADF40F66FA9B4B",
|
||||||
|
"feeds-translate.min.css": "40DEBECA26B25286F8D887810F3AB4DF6CF58D401ADDF545C0CFE32386479E0A",
|
||||||
|
"feeds-translate.min.js": "D94ECE12B5E72A08B36910A9C699E274ED7C60554136962F8B3BB7CAEDEA8EE8",
|
||||||
|
"feeds-translate-providers.min.js": "5F335096874B2A4A6893FB1D279757B2383D3B481FE7480C1CC28002A50F3CFF",
|
||||||
|
"ffmpeg-support.min.js": "16155341488FEA896B71CE5F221F12056F6A02C4583DFB52685FA5284E1ED1E4",
|
||||||
|
"fill-with-comments.min.js": "67AFFFA2DA2D0DF4AAC34D85B20B903380C5EE6D6D2A72FF6E151CFD3455CF0D",
|
||||||
|
"filter-type-switch.vue.min.js": "7DC5765516D1619E7E238338F479ADDA0CBA622C5C04DAB5658B4492A39B8CE2",
|
||||||
|
"fixed-sidebars.min.js": "BB818373B513C8313A266505ED1822F5FF4AB05350E3F2C517D2428531534DED",
|
||||||
|
"fix-fullscreen.min.js": "0C94A778CDAAECC0C97D36833C94B3AB87D562C5AAB23EFFE20241EB53FBA317",
|
||||||
|
"fold-comment.min.css": "DC2BD559553EA58FC438DB083783135897BF691D7CA59D436550C2F364F7D525",
|
||||||
|
"fold-comment.min.js": "C9826C7091AF5216FEA14DEF272F967685A0399EFBAEBEF01FFA93EC06514855",
|
||||||
|
"frame-playback.min.css": "DFA2EDCA1A66F6E16D694FB82E86468B6DABDD15E124473B2D15E779E6EBA9A5",
|
||||||
|
"frame-playback.min.html": "16D3B459911BA6810CFCA7B0356E79ADD5EC579910C8E14BED74619D0997CF8A",
|
||||||
|
"frame-playback.min.js": "F1F0F4131F4D3BEAD3E396D76374530B43FF58C92DFA0E137C11640C0D05D663",
|
||||||
|
"full-activity-content.min.js": "996BD62D7633175DCA46E94F50C4ED48ED81D17C28B5C9DE1B3BA4C1D5F2B8F2",
|
||||||
|
"full-page-title.min.css": "F498775B5E2983BAD5331C5F3A383EE4A18BE27A44F6BEC53B2E780E95237ACD",
|
||||||
|
"full-page-title.min.js": "F82215B10EFDFFEDC2C0A2A29546754C1EFAC72C47712F7D35B72D1160A6DCB2",
|
||||||
|
"fullscreen-gift-box.min.css": "5545AECC1568238D93035CADB9F721775EA705EDF4C9F6735C20699DC51811B2",
|
||||||
|
"fullscreen-gift-box.min.js": "D020C9840F838AD5164A9B33F2E94D9F08CD7E319C09C9AAABD206F61B1E9E63",
|
||||||
|
"full-tweets-title.min.css": "13A0CF1C96F374CED3FA59A532E28B4B620D7A4C374385A363F32AD1A7656764",
|
||||||
|
"full-tweets-title.min.js": "5A32D349D6DDD4F1DE73175D9A0AFE520B316F73A852B2BBE6A0436C8D8CBBB2",
|
||||||
|
"gbk.min.js": "0EDFCB94F519365A8CCA9BF3AECE57DC6DB273EF3F41545095B8F03625782F0D",
|
||||||
|
"get-number.min.js": "E644267B8A2DCEF2577BB9270F5C738BCE89C1C128071EBD3645903A930E08E0",
|
||||||
|
"gui-settings.min.css": "54ABFAE9B7A91CB8D7D2A6D3FAB844C256DFC2286710D592E85FB9A8479823F2",
|
||||||
|
"gui-settings.min.html": "93F0A4FA7D83E5E9E71F919D5C26D8413BCDCA51AED0DA4C3D821B3ABACEBB02",
|
||||||
|
"gui-settings.min.js": "7E18926B9A9F0BDFDFD8755EAF237951195DA849835A6C266F15E3A5A191EB40",
|
||||||
|
"haruna-scale.min.js": "2410662D47006D2AC49FE43DEB85F8D2C1B6F6D353DD767C2F11F7802A81F605",
|
||||||
|
"hide-bangumi-reviews.min.js": "0E8D100A27D523008041BAF95B7809855B505F4C02D4EE32CC62917528E46DBE",
|
||||||
|
"hide-bangumi-sponsors.min.js": "61CF35F5F1DDD9BA068196E4D02C8F206178D58A6DFD43DE5024A7AE50A2029D",
|
||||||
|
"hide-banner.min.css": "BA9733218C61A6B9E38DF568C236C07464A42A39626578F167DB8E8D2A157F23",
|
||||||
|
"hide-banner.min.js": "1FC0511F83C87E07F2BDE94A10D7AB2F7067E77AC93261D563BB699BECFB035D",
|
||||||
|
"hide-category.min.css": "2EB4AB96C9EA12E91910AB3F1EAAFD76CFED77890CF2138232388415E1418C46",
|
||||||
|
"hide-category.min.js": "343424E56C09D06ECC9CEFEF79B8F780B7E1D9082F1878CF3D35ADD33FA294D6",
|
||||||
|
"hide-hash-tags.min.js": "4FEAC8E0B78D7AAC2B7A6D8B2576AA15D310008BBAC5D2A5E7DCC4E33011723E",
|
||||||
|
"hide-old-entry.min.js": "73A12F8A4B369E5486FAD0388F09768B9A48D29C52BF25123C7CFC885C99D709",
|
||||||
|
"hide-recommend-live.min.js": "FD5FDCC21319A707089A565B0466A1F4335770BCEF6623718B5E1C4D5C87E826",
|
||||||
|
"hide-related-videos.min.js": "B0FF19C6080EB7C3D64C3BFF91FDF68D70FEC4E5445717175E74245A2DEABBB9",
|
||||||
|
"hide-top-search.min.js": "36FF3FCBEC3ABB61E2458AA94C0B9F59224AE38A483B354FB17C671190592892",
|
||||||
|
"home-hidden.min.css": "BF0142F2C96EE72EBC76D5D4909A5CE5BA382C142F19E5E54248A177D9585E99",
|
||||||
|
"home-hidden.min.js": "71B082DFC0EF6C1996FAD37699A4F4F4AF64B7AB691167F5462B2ED13F82206B",
|
||||||
|
"home-video.vue.min.js": "ACD3918903369692BF0AA0ADBE3E77B8D6B942EA1DAAB7138B362D263E9DC1F4",
|
||||||
|
"horizontal-scroll.min.js": "BCD68AB83706669D24A782219F3D45EA0AF0A9C0317309CB003924444452519C",
|
||||||
|
"i18n.de-DE.min.js": "540CD614C274A80578B8F759B437675ECFEB6C16DF62BA0E39AB113F26C9852F",
|
||||||
|
"i18n.en-US.min.js": "481D6038EC4EEEE518217B03E32850A339F9D7BC4E55EC471BA5C26B2464D6B1",
|
||||||
|
"i18n.ja-JP.min.js": "8270B398C684EE98459C3C73BC9B2BB8D28E8F2E2E9833AA788C82DA20659830",
|
||||||
|
"i18n.min.css": "E8D2E9E5231CE9C1AB581FC0C0341057C095B65E635B0B81DF426841AD0E8A47",
|
||||||
|
"i18n.min.js": "369DC13D72758D1DF42387931D7E0165F22CF05EBB8DC24F800EF463472A1600",
|
||||||
|
"i18n.zh-TW.min.js": "803F67270809E3258E2B302ADE542B12EF222C83EDC67FB8C68301C5F4E3A1CC",
|
||||||
|
"icon.vue.min.js": "15324A41E910361F9A245D6B3EB16019075EE460287570CBEA0F12AC71E1F158",
|
||||||
|
"icons.min.css": "D8DB1DF404C10FB3038B390925A9E95D06E5BABBDC618162D7888CA59C964F42",
|
||||||
|
"idm-support.min.js": "FFC04DB396943736244572CF4B9C0C03EFBD1C3BC563AA95528B360E0852B774",
|
||||||
|
"image-resolution.min.js": "EA2E359FE63974C03EE0EF0D9A03B8F7733B06E3837497F49E7C2B4971586D58",
|
||||||
|
"image-viewer.min.css": "AD6A0C1A3A7BE65DDA25AC8DB77E574776F0B2998C808D6ACC09452EEA0FA7F7",
|
||||||
|
"image-viewer.min.html": "5F1EEE9FBFD9D2EB2E2F73A57CB3DB2448A60E3D3480A297A7FC88038F60DF21",
|
||||||
|
"index.min.html": "94B83D9EBB9005C1286A7E0759A7683932F8DADA20D07E5E9D8FF867B04D4B95",
|
||||||
|
"key-binding-presets.min.js": "550BC7B2441DFE4744B54A161207EA4B5DB949AB7B3C377C66F549E710D8CE22",
|
||||||
|
"key-bindings.min.js": "88736417D177F7F6173D087441220979B76C63A510BE75E09DF4B27D4DEBFB57",
|
||||||
|
"keymap.min.css": "331DE00E7A7A9B7727CA7F4A1411158477A8EE5EE38E596DEEE9B6ADB4C0B321",
|
||||||
|
"keymap.min.js": "7767C27DE7A8BE8B784D94A876D1CBF3CAC7D209AF8687AE211601C94522B143",
|
||||||
|
"live-control-bar.min.js": "5AA182EB22062DEB54D727E7B42F6DA8535F982DA303963BA9AD4BE19889467A",
|
||||||
|
"live-pip.min.js": "2112A21139895537DCD4DDA6EC2719B31D312E8C34BBBA690D388FB24200C5D9",
|
||||||
|
"live-socket.min.js": "8AB690D1979FB64E7BA6126417700C0DD96C0E5C43712543590753B8344996C8",
|
||||||
|
"live-speed-boost.min.js": "2E3AB65C4E673B9190E91D8238554E313D47BE672FB8391EBE3E86589C14EA5A",
|
||||||
|
"magic-grid.min.js": "1CDDA7436511423934EBA3E9CCE3CD1BC913C9B8DAFE09C06939935B4F02DD3D",
|
||||||
|
"mdi.min.js": "8A22F2F37F88F74FC07CE2FECA7CE135182058BE24409BAF3DEF0D5845B0BE1A",
|
||||||
|
"medal-helper.min.css": "D27933BDA0CEAC6916271A9EAA0803342290207CC44AD1916B0244BE7BA3CBEE",
|
||||||
|
"medal-helper.min.html": "5D7057259368BE97DED3375DD904695B245AA2BF338C5E18CB3CF61DD913617C",
|
||||||
|
"medal-helper.min.js": "8EDA07A5DB9737437BAB9634712D536EE76B55F35DE758C126546849030B82F3",
|
||||||
|
"menu-repeat-video.min.js": "A8A8CE04FC9B8B4118A2358488DE1BF5A9F576A24A657861426696C565EC7197",
|
||||||
|
"minimal-home.vue.min.js": "DFA2E873F7948766950084DB5640A1299F63A6E45BAC943A3D1B9CB0E4A2E19F",
|
||||||
|
"minimal-home-search.vue.min.js": "83ACE262CBA7CB68260746B25DD3009D12BA351220F5732BD74EF0B87CBB5D3A",
|
||||||
|
"mini-player-touch-move.min.css": "285AE33BA492FFE4CE0AE4E079C5C0C6661D70C13010FEBE05A1DA133AF7A7B7",
|
||||||
|
"mini-player-touch-move.min.js": "0570B3238223DE1FE0C3662237CF0D2CFC0AF0918EB256629AC5FE090C691FEC",
|
||||||
|
"narrow-danmaku.min.js": "C171A92EED435ACB8040B0F50BBCA0E04519D64173133D566F0E91C9E613E93C",
|
||||||
|
"new-styles.min.js": "32CCD2D03D8C41EE77D8FB21BFEAD20CAE24B30D4FAA1FF348C1FD4AA1798E10",
|
||||||
|
"no-banner.min.css": "DA096F94E7FA26992F3F71245E704D69A1C222D0ADA6F1990FA5D948507CE15F",
|
||||||
|
"no-live-autoplay.min.js": "31917BE96EE9B8F8AC7E5FA17465AC8873ED7BB48AC3A44F4374E79C85363B70",
|
||||||
|
"no-mini-video-autoplay.min.js": "D0738ED56C685C3B02F39C0D1A0694ACE71A07397A59C6FE37CD9BC496592462",
|
||||||
|
"notify-new-version.min.js": "08A418212A8078EE83864E3AED782D597DE8E41AA2E4DD4B7D6FBBF83696B627",
|
||||||
|
"online-info-row.vue.min.js": "A1BE0481CEE968FE2239B05B9473751B4E9931BE5EF40D677E46B3C0ED43C974",
|
||||||
|
"outer-watchlater.min.css": "BB56A80224F7B37869C17C976C301623C47BBCCDB18F7E009A4F97B6C685C0DC",
|
||||||
|
"outer-watchlater.min.js": "5FC13134BBC69E8A1061A33D4BE6ED24508A8093D569B1CF33680AF2DE1BF86E",
|
||||||
|
"override-navbar.min.css": "E5AA612841281169CA367A238FB934F807900A385CE2298B7352FF3CA4623757",
|
||||||
|
"override-navbar.min.js": "0FF50371A02F47EE384515544EB87D34CEE2DB449B9B864B5627A9645F921DAB",
|
||||||
|
"pako-inflate.min.js": "1B89766B342D4A561B0CF7D5A68B2900B6D1772E507EEB1AF56FA7CABE40BCEC",
|
||||||
|
"player-agent.min.js": "84B45B3C687A189A2523257BD95BA046E784D2EC1BF5AE63F7465227A6D69DBD",
|
||||||
|
"player-context-menu.min.js": "D84439ABC219CBCDF4C431DAA73E799265485F3C5C07AE57F9A251C7CF967E4A",
|
||||||
|
"player-focus.min.js": "9A290D6749E68A4A88563983413A296BFA9B5C18B978F9CF80799196AEC0F9EE",
|
||||||
|
"player-on-top.min.js": "0D9AA8561E97A6FFCEABDA206B6A57EB87C1B3EF5D0D53EDABA3ED5EFB0DF687",
|
||||||
|
"player-ready.min.js": "991AFD42587163977DAA57325F93B11E6C8A605CDACC6D5A5F3593B723B6AD21",
|
||||||
|
"player-shadow.min.js": "36F509FF2C19FBF1322B798E0321F62CF8BF171C34FD48E2A6F5D387B5DDFD82",
|
||||||
|
"quality-errors.min.js": "A691A407FC4F80C6B2D243CBFADC636FCFFC4DC35B9E305AEF4184AD3ECFC56B",
|
||||||
|
"quick-favorite.min.css": "7829AE09EC0F9057C3970CDF4CEADC76A86269C1DA714E7BC64E6D783621076B",
|
||||||
|
"quick-favorite.min.js": "0E9F058A2843A0D7F860E78E157FAA1A3DA8E63F5E12C2A35D4BFC48E62D284C",
|
||||||
|
"rank-list.vue.min.js": "A47750316E45D61F2AA56FDDD08F1D2D715BA103B42C4000D0C348020998737F",
|
||||||
|
"record-live-danmaku.min.js": "CF1C55683CB20688FAA39B9150144F5C907D8150BF42C1AD2729FB44AB06A604",
|
||||||
|
"record-live-danmaku.vue.min.js": "CFBB560D1C9C1D3510A4217E141FEDD4A7F227F3825859BB7F729544A1B86DAC",
|
||||||
|
"remember-video-speed.min.js": "207AB95275A06977CE46AE37C5892FB7823A696C67DC40B4B13EAE82DED330C6",
|
||||||
|
"remove-guide-popup.min.js": "801E2EAA47B55CBBF8DF2570781A76C411BB3EA3A8C3A87BB0A8369FF9E6D9EB",
|
||||||
|
"remove-promotions.min.css": "0BF20D07A075A2F6F2B59A3234B53FCBDC87D4A3640707B604B187D681100758",
|
||||||
|
"remove-promotions.min.js": "A59D69F284C865B414B63B855EE25EC6614E1205C38267BC76E3C034A1C1751D",
|
||||||
|
"remove-top-mask.min.js": "AD087C766DF146FDF8DCFF5F98950DBFAA4A43E3848FEEA0EC8D3A0A5CD276EA",
|
||||||
|
"remove-video-popup.min.js": "97E6C386E85D79BFA9FA86422F06FB7723DED0AA25F27A7F94BCFB222AF7865E",
|
||||||
|
"remove-vote-popup.min.js": "00FB123A3E41AC0EB8D35F1C37E2E6A38C87E6DFD8666488E3A37E8B6B12BABF",
|
||||||
|
"remove-watermark.min.js": "261CB4D9DE5A2B565F9FE540741775C5A85CC4622A4F31F48F3D7BBAF5B46EB3",
|
||||||
|
"reorder.min.js": "ECB93247175BCC5B9C689307680167B6C0C753F16265B6934A24020960866293",
|
||||||
|
"restore-floors.min.js": "8110AC44E378163F8966BDED29F31E683AD2E05F22B4C21EB4EBB3B854577F25",
|
||||||
|
"screenshot.min.css": "FDC0FCE6BE0109792BF3152C9D13EF10BFCED20DE680AE2DE6AEA6E59C07722A",
|
||||||
|
"screenshot.min.js": "B780CFDE3BF26058691E2F883E2149DDB33AE66DE78F44F1C2E9D8084A0953AB",
|
||||||
|
"scrollbar.min.css": "E17BDD4F223F7992A1AF279D7EBA58D9FBB51217F45964C79E30DC2ACBC15B46",
|
||||||
|
"scroll-out-player.min.js": "B68B23E79E164E1B33EEABD1D58AB478896409567E629C44A79E1AFF5D21AD7C",
|
||||||
|
"search.vue.min.js": "A3F4445026C3094C38EA4753BF7F22A8CD8D29D47CB2526BF3D88A29CC1EDD11",
|
||||||
|
"selectable-column-text.min.js": "78B4CB6E8BA8641FFB546AECF4FE0EF0937FE6B383B2C0970957588FC87747DB",
|
||||||
|
"seo-jump.min.js": "1FE9D71B9B213511AA693C1F59B3F2278FF12BFAD3827081890501B1FB084DC4",
|
||||||
|
"settings-search.min.js": "915A490D620437A7F23BA1AAE68DD771C9099B6998D28BE64D1FE0AE067619DA",
|
||||||
|
"settings-side-bar.min.js": "47DC1BB710EEB8266392B4346EDA60195784D3E177EA2B637C22DA5887463813",
|
||||||
|
"settings-tooltip.en-US.min.js": "E0E238BB76A0594C6B95B10F09AAA5C5D1BD0A46FB925DEEE4E8458C5ADB0F13",
|
||||||
|
"settings-tooltip.ja-JP.min.js": "246DFF859F1B5C968C2CE964E6DB94742EEF01CC7D009A7CAF6A03DD90261AC1",
|
||||||
|
"settings-tooltip.loader.min.js": "477DE4B69F477D67BCBC72CE33C91986EB2A5620D6F2D1D8367BBC388C5E3E5C",
|
||||||
|
"settings-tooltip.min.css": "031B4E11744977C54496A3DB0FAB794401DC1FED2E53D9F729DA4218CD98E8D5",
|
||||||
|
"settings-tooltip.min.js": "C7F9A79EB623BF58CB81DE4A9E74FC6C2EDB2613403EFE6D09B36FB460159A13",
|
||||||
|
"settings-tooltip.zh-CN.min.js": "21CD103B470AC97288304D4471D733E43BD89E82A2D2A6CD4CF70F4D448293D9",
|
||||||
|
"show-cover-before-play.min.css": "E4050D66F8014029270CB5A4DEFDE2F847B095BA9ED4274BFED3E131B737B06D",
|
||||||
|
"show-cover-before-play.min.js": "59A0FB3D33643BAA3E11813ABF290B26F286CC4FF19EE0089A90DFE3FE768BCF",
|
||||||
|
"show-dead-video-title.min.js": "5B968442E71F947F70C57C9FDA083935200CBA9B1038131F1587E70A2B723798",
|
||||||
|
"simple-home.vue.min.js": "DBD5E67110994DD45C9BA6E9E8757911E10123841DE0C98F38C44B8DC7B7B089",
|
||||||
|
"simple-home-bangumi-category.vue.min.js": "5E0DBCA5694737CA6FFFEABB28B3FA29716C62355D8FBF14D86C4810BCF53E91",
|
||||||
|
"simple-home-categories.vue.min.js": "D7E57894EF71600A35A71914AD19DF0BE80331D1214A3E403076FCB21594F47C",
|
||||||
|
"simple-home-feeds.vue.min.js": "5217FE9FCE4C7434BED5FFCEE352935E572F6D950379D4FBF01E4F2AEB9BF8DD",
|
||||||
|
"simple-home-normal-category.vue.min.js": "354311133748055CB493D2668F8467D5E69B2607CC1F86F09EF8E7C097FAA344",
|
||||||
|
"simplify-home.min.css": "80191DE93D093D6F10A49145F39C14211120F2ED1C73F7CA40D63760EFFA3C73",
|
||||||
|
"simplify-home.min.js": "1E19F28B357C24B9B7F53ADC782DD6D4EEED6751EA879984D967C5FB4C925A9D",
|
||||||
|
"simplify-home.vue.min.js": "D240B92014227534732CBE098C0BE4801C7ADCA6A6956F7CA8B1D428C419E4E0",
|
||||||
|
"simplify-liveroom.min.css": "270C1FEFD6DDDF65959752C6092761477149E74561C9D40927EADC1657CE6515",
|
||||||
|
"simplify-liveroom.min.js": "5D3D3D008C7E5D79E6E08F31D0CFB183A2F90E2749AE31BE1CA75B52D63A1A6B",
|
||||||
|
"skip-charge-list.min.css": "D3C988CE131CEBFAC8A60360529C83EC4AE1B9EA122F9A6924F19963E25A4FE9",
|
||||||
|
"skip-charge-list.min.js": "3F89374310F5F7BD66E782C629FEE09FA9E5E15076F17075E871F0E984656157",
|
||||||
|
"slideshow-cards.vue.min.js": "A787FF3B86C074173CECF4E58630D1F20AE249F7C15B07EC22F371D0FD423B7E",
|
||||||
|
"slip.min.js": "407C046F6F04D990F4EFD59AB1A26FC995D8BE277CEA9E50C4621136D46D5875",
|
||||||
|
"subtitle-converter.min.js": "DFE6DC4471D1119B486811BB3D07336EEA90E92D90A67646D5CA2CC1CB43F833",
|
||||||
|
"superchat-translate.min.css": "F4874FE716A750AE0D21DA44393F286E5AABFFA949476E2FA06CDBE2748CF095",
|
||||||
|
"superchat-translate.min.js": "F899066D438937436E9E5F5063B2E43E26D23E658AEDBB6875269BB04BEFBAAC",
|
||||||
|
"text-validate.min.js": "019DBB7EDDEAFAE3128A8E30BF07A1B36F3D3141C828601DC59CA40983081756",
|
||||||
|
"theme-colors.min.js": "D13CD1E05900F46FB4548E466291E69840F260AADAFEF6536457386BB9A22118",
|
||||||
|
"title.min.js": "410BD8BF29719424EE2B18AD14238A70ACDF47222E4C0D68F0C70B6D1708BC4B",
|
||||||
|
"toast.min.css": "9CA6502A7993A30A5C5253F2BC35BAC0581C00B8E034F9D13A34317942CB1D17",
|
||||||
|
"toast.min.js": "5CF4132CC88404C3AE2F74FFCC6FD12C26E1F9BDE45D558B3A86312D78DDE60E",
|
||||||
|
"touch-move.min.js": "A962710FE0A970E098A1CB1B5C1F63DBA824386F0CE444621555E62CC4542E1A",
|
||||||
|
"touch-navbar.min.js": "A97A7E536A45DE1DF3F7CC174CF95D855FA6034FB9F7D98B818A7363BADDFE48",
|
||||||
|
"touch-player.min.css": "63AB17E935430EDB022DF196F6FFC22AE9F29976A764D56E781FAD4D936CF320",
|
||||||
|
"touch-player.min.js": "FDFCB93C336C5FA9C8EE133B8F7CC697DBAD5803BBBDC3D7651802ED4E0A4FC4",
|
||||||
|
"trending-videos.min.js": "48C91D2D5589C2AA7EA112A21F3DEBF012ABAD8C0654396A4039684A52703745",
|
||||||
|
"trending-videos.vue.min.js": "6B72D00C8A04F1B32A5BA0950FBDBFE51BD1F0597DED29B012DB11058BBA8C52",
|
||||||
|
"tweets.min.css": "9015C1F165C91B9205ABBE4E8A3B5FA83DB1EB4B5CF2442846AF61E44FF178A8",
|
||||||
|
"unfold-feeds.min.js": "586FFB95BF24CA22E68ACE4CC4ABF25F5A2CE84C70D657D0CD62E666C4589B5B",
|
||||||
|
"url-params-clean.min.js": "AAE0C3DEE0886E0E7B0D5CB117A4103D634358F92626498C03E22F756CE137F8",
|
||||||
|
"v-checkbox.vue.min.js": "D630823220562A011DDF7164A8D12E775548C6B81907EB6525B3211B822590B1",
|
||||||
|
"v-dropdown.vue.min.js": "3D1D4DC0D8DD06C58C88A530A04DC1D5BEE6690119709B809CD3FA24C8C51C83",
|
||||||
|
"video-card.vue.min.js": "D2B6151ABD2010C05A5AFE9C9B32124C0D2A263E8386043E4F585E75FF0AD4F9",
|
||||||
|
"video-card-info.min.js": "D0738ED56C685C3B02F39C0D1A0694ACE71A07397A59C6FE37CD9BC496592462",
|
||||||
|
"video-danmaku.min.js": "225DDECB97C854DC57A857BB7AABE9C490D7EA464C81A4C67780E1684AC30CB1",
|
||||||
|
"video-dash.min.js": "B731A15492D933AF1CDFBD9EAE09D9264D2B4BCAAE3F5FD2C522ADABD6F1F44B",
|
||||||
|
"video-downloader-fragment.min.js": "D0738ED56C685C3B02F39C0D1A0694ACE71A07397A59C6FE37CD9BC496592462",
|
||||||
|
"video-info.min.js": "A81B4F409A75D818DF23C41A3F2D95E77BD0520DB6C03712F0FE30EAECDF4FBE",
|
||||||
|
"video-list.vue.min.js": "D4764DC983B24BB9F5089E0D4AB5CEB89275F181A5ED75364CAEB1DFC44B2726",
|
||||||
|
"video-speed-common.min.js": "1F8A81026E35390558C8D11EBCDC5455319D83B65EF16F54FD2AD4335E40CFD6",
|
||||||
|
"video-speed-controller.min.js": "07DEB5145EEF3C1899CA865E2458C94BF3B4AC9CDDBE542EDD03B0E10D0535D0",
|
||||||
|
"video-story.min.js": "DC3811422EE8696E12408E3CA6AD2E3D7068AAC1B0E3577A40C5613BAD5C6467",
|
||||||
|
"view-cover.min.js": "F130EEF94C7CA22FF80B9E3BA6D0333C5CA00434508BB5A7F1AF13F3F29A7F2E",
|
||||||
|
"volume-overdrive.min.js": "10FDFBC393D785195039FD7A66E5E5D3E62BC0E7AC142DC8074CA84A226A48EE",
|
||||||
|
"watchlater.min.js": "A3965AADCB9D2B45AE67FBFD89EA1B37E2855B41B0D690E6EB6B21D7A7FC2449",
|
||||||
|
"watchlater-api.min.js": "B3845A5E25C937ADD799584C791BAE53F0051D54EAB9DFA08ABBEB91055C7175",
|
||||||
|
"watchlater-expire-warnings.min.js": "58CD05CCB0F3A0759DEBCDCB65CFCB7A074BA535CD396E6F1128D28CC4105091"
|
||||||
|
}
|
||||||
BIN
min/bundle.zip
Normal file
BIN
min/bundle.zip
Normal file
Binary file not shown.
1
min/bvid-convert.min.css
vendored
Normal file
1
min/bvid-convert.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bvid-convert{border:2px solid #8882;border-radius:8px;padding:6px 8px;margin:4px 0;order:-1;width:auto;box-sizing:border-box;user-select:text}.bvid-convert-item{font-size:14px;display:flex;align-items:center}.bvid-convert .mdi{font-size:15px;padding:1px;margin-left:4px;cursor:pointer;line-height:1;display:inline-flex}.bvid-convert .mdi.mdi-link::before{transform:rotate(135deg)}
|
||||||
1
min/bvid-convert.min.js
vendored
Normal file
1
min/bvid-convert.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(i,e)=>{const n=["https://www.bilibili.com/video/","https://www.bilibili.com/bangumi/"].some((i=>document.URL.startsWith(i)));if(i.preferAvUrl&&document.URL.startsWith("https://www.bilibili.com/video/")){SpinQuery.select((()=>unsafeWindow.aid)).then((i=>{if(!i){return}if(document.URL.includes("videocard_series")){console.log("skip video series");return}const e=document.URL.replace(/\/(video|bangumi)\/(BV[\w]+)/i,((e,n)=>`/${n}/av${i}`));if(document.URL!==e){history.replaceState({},document.title,e)}}))}return{widget:{content:`<div class="bvid-convert"></div>`,condition:async()=>{if(n){return Boolean(await SpinQuery.select((()=>unsafeWindow.aid||unsafeWindow.bvid)))}else{return false}},success:()=>{e.applyStyle("bvidConvertStyle");const i=(i,e)=>{if(!i||!e){return""}return`\n<div class="bvid-convert-item">av${i}<i class="mdi mdi-link aid"></i></div>\n<div class="bvid-convert-item">${e}<i class="mdi mdi-link bvid"></i></div>\n`};const n=dq(".bvid-convert");n.addEventListener("click",(i=>{const e=i.target;const n=e.classList;if(n.contains("mdi")){if(n.contains("mdi-check")){return}const i=e.previousSibling;if(i){const e=window.location.search?`?${window.location.search}`:"";GM.setClipboard(`https://www.bilibili.com/video/${i.textContent}${e}`,"text");n.remove("mdi-link");n.add("mdi-check");setTimeout((()=>{n.remove("mdi-check");n.add("mdi-link")}),1e3)}}}));const t=async()=>{const e=dq(".bvid-convert");e.innerHTML=i(unsafeWindow.aid,unsafeWindow.bvid);const n=await SpinQuery.select(".av-link,.bv-link,.bvid-link");if(n){e.innerHTML=i(unsafeWindow.aid,n.innerHTML)}};Observer.videoChange(t)}}}})();
|
||||||
1
min/category-regions.min.js
vendored
Normal file
1
min/category-regions.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(n,i)=>{const e={anime:1,bangumi:13,china:167,manga:-1,music:3,dance:129,game:4,knowledge:36,tech:188,life:160,food:211,animal:217,kichiku:119,fashion:155,information:202,entertainment:5,column:-1,movie:181,tv:11,film:23,documentary:177};const a={anime:"v/douga",bangumi:"anime",china:"guochuang",manga:"",music:"v/music",dance:"v/dance",game:"v/game",knowledge:"v/knowledge",tech:"v/tech",life:"v/life",food:"v/food",animal:"v/animal",kichiku:"v/kichiku",fashion:"v/fashion",information:"v/information/",entertainment:"v/ent",column:"",movie:"v/cinephile",tv:"tv",film:"cinema",documentary:"documentary"};return{export:{RegionCodes:e,RegionLinks:a}}})();
|
||||||
1
min/check-in-center.min.js
vendored
Normal file
1
min/check-in-center.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,n)=>{const s=[{id:"seeds-to-coins",icon:"mdi-seed-outline",name:"瓜子换硬币",action:async()=>{const e="https://api.live.bilibili.com/xlive/revenue/v1/wallet/silver2coin";const n=await Ajax.postTextWithCredentials(e,formData({csrf:getCsrf(),csrf_token:getCsrf()}));const s=JSON.parse(n);if(s.code!==0){Toast.info(s.message,"瓜子换硬币",3e3)}else{Toast.success(`${s.message}\n剩余银瓜子:${s.data.silver}`,"瓜子换硬币",3e3)}}},{id:"live-check-in",icon:"mdi-calendar-check",name:"直播间签到",action:async()=>{const e="https://api.live.bilibili.com/xlive/web-ucenter/v1/sign/DoSign";const n=await Ajax.getJsonWithCredentials(e);if(n.code!==0){Toast.info(n.message,"直播间签到",3e3)}else{const{text:e,specialText:s,allDays:t,hadSignDays:i}=n.data;const a=`签到成功, 获得了${e} ${s}\n本月进度: ${i} / ${t}`;Toast.success(a,"直播间签到",3e3)}}}];return{widget:{content:s.map((e=>`\n<button\n class="gui-settings-flat-button"\n id="${e.id}">\n<i class="mdi mdi-24px ${e.icon}"></i>\n<span>${e.name}</span>\n</button>\n`)).join("\n"),condition:()=>Boolean(getUID()),success:()=>{s.forEach((e=>{const n=document.getElementById(e.id);if(!n){return}n.addEventListener("click",(s=>{try{n.disabled=true;e.action(n,s)}finally{n.disabled=false}}))}))}}}})();
|
||||||
1
min/clear-cache.min.js
vendored
Normal file
1
min/clear-cache.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(n,c)=>({widget:{content:`\n<button\n class="gui-settings-flat-button"\n id="clear-cache">\n<i class="icon-clear"></i>\n<span>清除缓存</span>\n</button>`,condition:()=>typeof offlineData==="undefined",success:()=>{var c;(c=dq("#clear-cache"))===null||c===void 0?void 0:c.addEventListener("click",(()=>{n.cache={};Toast.success("已删除全部缓存.","清除缓存",5e3)}))}}}))();
|
||||||
1
min/collapse-live-side-bar.min.css
vendored
Normal file
1
min/collapse-live-side-bar.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.side-bar-cntr{transition:.24s ease-out!important;overflow:visible!important;transform:translateZ(0) translateX(100%)!important}.side-bar-cntr:hover{transform:translateZ(0)!important}.side-bar-cntr::after{right:calc(100% + 4px);transform:translateY(-50%) rotate(45deg);width:8px;height:8px;border-radius:2px;box-sizing:border-box;border:4px solid #aaa;border-top-color:transparent;border-right-color:transparent}body.dark .side-bar-cntr::after{border:4px solid #eee;border-top-color:transparent;border-right-color:transparent}.side-bar-cntr::before{right:calc(100% - 8px);transform:translateY(-50%);width:32px;height:48px;border-radius:8px 0 0 8px;background-color:#fff;border:1px solid #e9eaec}body.dark .side-bar-cntr::before{background-color:#222;border-color:transparent}.side-bar-cntr::after,.side-bar-cntr::before{content:"";transition:.24s ease-out;cursor:pointer;position:fixed;top:50%}.side-bar-cntr:hover::after,.side-bar-cntr:hover::before{opacity:0}
|
||||||
1
min/collapse-live-side-bar.min.js
vendored
Normal file
1
min/collapse-live-side-bar.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,l)=>l.toggleStyle("collapseLiveSideBarStyle"))();
|
||||||
1
min/column-image-exporter.min.js
vendored
Normal file
1
min/column-image-exporter.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,n)=>({widget:{condition:()=>document.URL.startsWith("https://www.bilibili.com/read/cv"),content:`\n<button class="gui-settings-flat-button column-image-export">\n<i class="mdi mdi-24px mdi-export"></i>\n<span>导出图片</span>\n</button>`,success:()=>{const t=dq(".column-image-export");const e=dq(t,"span");t.addEventListener("click",(async()=>{try{t.disabled=true;e.textContent="下载中...";const a=[];const o=document.title.replace(/ - 哔哩哔哩$/,"");const i=dq(".banner-image .card-image__image");const s=retrieveImageUrl(i);if(s){a.push({...s,name:`${o}-banner${s.extension}`})}const c=dqa('.article-content .img-box img:not([class*="cut-off-"])');c.forEach((t=>{const n=retrieveImageUrl(t);if(n){a.push({...n,name:`${o}-${a.length}${n.extension}`})}}));if(a.length===0){Toast.info("此专栏没有检测到任何图片.","专栏图片导出");return}const{DownloadPackage:r}=await n.importAsync("download-package");const l=await Promise.all(a.map((({url:t})=>Ajax.getBlob(t))));const d=new r;l.forEach(((t,n)=>d.add(a[n].name,t)));await d.emit(`${o}.zip`)}catch(t){logError(t)}finally{e.textContent="导出图片";t.disabled=false}}))}}}))();
|
||||||
1
min/combo-like.min.js
vendored
Normal file
1
min/combo-like.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{(async()=>{const e=await SpinQuery.select((()=>document.querySelector(".ops span.like")));if(!e){return}e.style.userSelect="none";function t(t,n){const s=new CustomEvent(t,n);e.dispatchEvent(s)}const n=200;let s=true;e.addEventListener("touchstart",(e=>{e.preventDefault();s=true;setTimeout((()=>s=false),n);t("mousedown",e)}));e.addEventListener("touchend",(e=>{e.preventDefault();t("mouseup",e);if(s){t("click",e)}}))})()})();
|
||||||
1
min/comment-apis.min.js
vendored
Normal file
1
min/comment-apis.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{const o="bb-comment";const r=[];const n=[];const s=[];const c=[];const i=e=>{const t=e.querySelector(".con .user .name");const o=e=>{const t=e.querySelector(".reply-face");const o=e.querySelector(".reply-con .user .name");return{id:e.getAttribute("data-id"),element:e,userID:t.getAttribute("data-usercard-mid"),userName:o.textContent,content:e.querySelector(".text-con").textContent,timeText:e.querySelector(".info .time").textContent,likes:parseInt(e.querySelector(".info .like span").textContent)}};const r={id:e.getAttribute("data-id"),element:e,userID:t.getAttribute("data-usercard-mid"),userName:t.textContent,content:e.querySelector(".con .text").textContent,timeText:e.querySelector(".con .info .time").textContent,likes:parseInt(e.querySelector(".con .like span").textContent),replies:[]};if(dq(e,".reply-box .view-more")){const t=dq(e,".reply-box");Observer.childList(t,(t=>{r.replies=dqa(e,".reply-box .reply-item").map(o);if(t.length!==0){r.onRepliesUpdate&&r.onRepliesUpdate(r.replies)}}))}else{r.replies=dqa(e,".reply-box .reply-item").map(o)}return r};const a=e=>{if(e.observer){return}e.items=dqa(e.element,".list-item.reply-wrap").map(i);e.items.forEach((e=>{n.forEach((t=>t(e)))}));e.observer=Observer.childListSubtree(e.element,(t=>{t.forEach((t=>{const o=e=>e instanceof HTMLElement&&e.classList.contains("list-item")&&e.classList.contains("reply-wrap");t.addedNodes.forEach((t=>{if(o(t)){const o=i(t);e.items.push(o);n.forEach((e=>e(o)))}}));t.removedNodes.forEach((t=>{if(o(t)){const o=t.getAttribute("data-id");const r=e.items.findIndex((e=>e.id===o));if(r!==-1){const[t]=e.items.splice(r,1);s.forEach((e=>e(t)))}}}))}))}))};const l=e=>{if(e instanceof HTMLElement&&e.classList.contains(o)){const t={element:e,items:[]};r.push(t);a(t);c.forEach((e=>e(t)))}};const d=e=>{r.forEach((t=>e(t)));c.push(e)};const m=e=>{const{added:t,removed:o}=e;d((e=>{if(t){e.items.forEach((e=>t(e)));n.push(t)}if(o){s.push(o)}}))};Observer.childListSubtree(document.body,(e=>{e.forEach((e=>{e.addedNodes.forEach((e=>l(e)))}))}));dqa("."+o).forEach(l);return{export:{commentAreas:r,forEachCommentArea:d,forEachCommentItem:m}}})();
|
||||||
1
min/comment-dark.min.css
vendored
Normal file
1
min/comment-dark.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bb-comment .comment-list .list-item .info .hate.hated>i,.bb-comment .comment-list .list-item .info .hate>i,.bb-comment .comment-list .list-item .info .like.liked>i,.bb-comment .comment-list .list-item .info .like>i,.bb-comment .comment-list .list-item .info .operation .spot,.bb-comment .comment-list .list-item>.con>.info>.floor,.bb-comment .comment-list .list-item>.con>.info>.time,.bb-comment .comment-list .reply-con>.info>.time,.bb-comment .comment-send .comment-emoji .text,.dynamic-hate i,.dynamic-hate:hover i,.dynamic-hated i,.dynamic-hated:hover i,.dynamic-like i,.dynamic-like:hover i,.dynamic-liked i,.dynamic-liked:hover i,.dynamic-spot,.textarea-container .comm-tool .comm-emoji .icon-face{filter:brightness(0) invert(1)!important}.bb-comment .comment-list .list-item .info .hate span,.bb-comment .comment-list .list-item .info .hate.hated span,.bb-comment .comment-list .list-item .info .hate:hover span,.bb-comment .comment-list .list-item .info .like span,.bb-comment .comment-list .list-item .info .like.liked span,.bb-comment .comment-list .list-item .info .like:hover span{color:#eee!important}
|
||||||
1
min/comment.min.css
vendored
Normal file
1
min/comment.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/comment.min.js
vendored
Normal file
1
min/comment.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{addSettingsListener("useCommentStyle",(e=>{document.body.classList.toggle("simplify-comment",e)}),true);return t.toggleStyle("useCommentStyleStyle")})();
|
||||||
1
min/comments-translate.min.js
vendored
Normal file
1
min/comments-translate.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{const a=async()=>{const{getTranslator:a}=await e.importAsync("feeds-translate-providers");const n=Vue.extend({template:`\n<div class="translate-container">\n<div class="translate" v-if="!working && !translated" @click="translate()">\n<i class="mdi mdi-earth"></i>翻译\n</div>\n<i v-if="working" class="translating mdi mdi-18px mdi-loading mdi-spin"></i>\n<div class="translated" v-if="translated">翻译自<a :href="activeTranslator.link" target="_blank">{{ activeTranslator.name }}</a>:</div>\n<div v-if="translated" class="translate-result">{{ result }}</div>\n</div>\n`,props:{text:{type:String,required:true}},data(){return{result:"",working:false,activeTranslator:{}}},computed:{translated(){return this.result!==""}},methods:{async translate(){try{this.working=true;const e=this.text;const n=this.activeTranslator=a();this.result=await n.translate(e,{targetLanguage:(()=>{if(t.i18n){return languageNameToCode[t.i18nLanguage]}if(t.feedsTranslateLanguage!==""){return t.feedsTranslateLanguage}return})()});console.log(e,n,this.result)}catch(t){logError(t)}finally{this.working=false}}}});const r=t=>{const e=dqa(t,".text, .text-con");if(e.length===0){return}e.forEach((t=>{if(t.nextElementSibling&&t.nextElementSibling.classList.contains("translate-container")){return}const e=new n({propsData:{text:t.innerText}}).$mount();t.insertAdjacentElement("afterend",e.$el)}))};const{forEachCommentItem:s}=await e.importAsync("comment-apis");s({added:t=>{const{element:e}=t;t.onRepliesUpdate=t=>t.forEach((t=>r(t.element)));r(e)}})};if(t.feedsTranslate){e.applyStyle("feedsTranslateStyle");a()}return{export:{commentsTranslate:a}}})();
|
||||||
1
min/compact-layout.min.css
vendored
Normal file
1
min/compact-layout.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/compact-layout.min.js
vendored
Normal file
1
min/compact-layout.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,c)=>{const o=["https://www.bilibili.com/","https://www.bilibili.com/watchlater/#/list","https://www.bilibili.com/ranking"];if(o.includes(location.href.replace(location.search,""))){document.body.classList.add("compact");c.applyImportantStyle("compactLayoutStyle")}return{reload:()=>{if(o.includes(location.href.replace(location.search,""))){document.body.classList.add("compact");c.applyImportantStyle("compactLayoutStyle")}},unload:()=>{document.body.classList.remove("compact");c.removeStyle("compactLayoutStyle")}}})();
|
||||||
1
min/copy-comment-link.min.js
vendored
Normal file
1
min/copy-comment-link.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{(async()=>{const{forEachCommentItem:t}=await e.importAsync("comment-apis");const i=["https://t.bilibili.com","https://space.bilibili.com","https://live.bilibli.com"];const n=t=>{if(document.URL.match(/\/\/t\.bilibili\.com\/(\d+)/)){return""}if(i.every((t=>!document.URL.includes(t)))){return""}let e=t;while(e!==null&&e!==document.body){if(e.hasAttribute("data-did")){return`https://t.bilibili.com/${e.getAttribute("data-did")}`}e=e.parentElement}return""};const l=t=>{const e=t=>{t.forEach((t=>{const e=dq(t.element,".opera-list ul");if(!e||dq(e,".copy-link")){return}const i=document.createElement("li");i.classList.add("copy-link");i.textContent="复制链接";i.addEventListener("click",(()=>{const e=n(t.element)||document.URL.replace(/#.+$/,"");GM.setClipboard(`${e}#reply${t.id}`,"text");console.log("[Copy Comment Link]",`${e}#reply${t.id}`)}));e.appendChild(i)}))};e([t,...t.replies]);t.onRepliesUpdate=t=>e(t)};t({added:l})})()})();
|
||||||
1
min/copy-feeds-link.min.js
vendored
Normal file
1
min/copy-feeds-link.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,a)=>{(async()=>{const{forEachFeedsCard:t,addMenuItem:e}=await a.importAsync("feeds-apis");const i=t=>{e(t,{className:"copy-link",text:"复制链接",action:()=>{GM.setClipboard(`https://t.bilibili.com/${t.id}`,"text")}})};t({added:i})})()})();
|
||||||
1
min/custom-control-background.min.css
vendored
Normal file
1
min/custom-control-background.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bilibili-player-video-control-mask{background:0 0!important}.bilibili-player-video-control .bilibili-player-video-control-bottom,.bilibili-player-video-control .bui-slider .bui-track.bui-track-video-progress .bui-bar-wrap{background:rgba(0,0,0,var(--custom-control-background-opacity))!important}
|
||||||
1
min/custom-control-background.min.js
vendored
Normal file
1
min/custom-control-background.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(o,t)=>{addSettingsListener("customControlBackgroundOpacity",(o=>{document.documentElement.style.setProperty("--custom-control-background-opacity",o)}),true);const n=()=>{t.applyStyle("customControlBackgroundStyle");if(!o.touchVideoPlayer){t.applyImportantStyleFromText(`\n .bilibili-player-video-control-bottom\n {\n margin: 7px 0 0 0 !important;\n padding: 8px 0 0 !important;\n }\n`,"control-background-non-touch")}};n();return{reload:n,unload:()=>{t.removeStyle("customControlBackgroundStyle");const o=document.getElementById("control-background-non-touch");o&&o.remove()}}})();
|
||||||
1
min/custom-navbar-activities.min.js
vendored
Normal file
1
min/custom-navbar-activities.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar-blank.min.js
vendored
Normal file
1
min/custom-navbar-blank.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{const{NavbarComponent:n}=e.import("custom-navbar-component");class r extends n{constructor(t){super();this.number=t;this.flex="1 0 auto";this.disabled=true}get name(){return"blank"+this.number}}return{export:{Blank:r}}})();
|
||||||
1
min/custom-navbar-category.min.js
vendored
Normal file
1
min/custom-navbar-category.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar-component.min.js
vendored
Normal file
1
min/custom-navbar-component.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{function n(t,e,n){if(e in t){Object.defineProperty(t,e,{value:n,enumerable:true,configurable:true,writable:true})}else{t[e]=n}return t}const s=380;class r{constructor(e="",s="",r="0 0 auto",i=false,a=false,o=null,u=null,c=null,l=0,d=t.touchNavBar,h=false){this.html=e;this.popupHtml=s;this.flex=r;this.disabled=i;this.requestedPopup=a;this.initialPopup=o;this.onPopup=u;this.href=c;this.notifyCount=l;this.touch=d;this.active=h;n(this,"noPadding",false);n(this,"transparent",false);n(this,"boundingWidth",0)}get name(){return"blank1"}static cleanUpOrders(){const e=_.sortBy(Object.entries(t.customNavbarOrder),(([,t])=>t));console.log(e);t.customNavbarOrder=_.fromPairs(e.map((([t],e)=>[t,e])))}get order(){const e=t.customNavbarOrder[this.name];const n=Object.values(_.groupBy(Object.values(t.customNavbarOrder),(t=>t))).some((t=>t.length>1));if(e===undefined||n){r.cleanUpOrders();return t.customNavbarOrder[this.name]}return e}get hidden(){return t.customNavbarHidden.includes(this.name)}get element(){return dq(`.custom-navbar li[data-name='${this.name}']`)}async setNotifyCount(t){const e=await SpinQuery.select(`.custom-navbar li[data-name='${this.name}'] .notify-count`);if(!e||t<=0){e.innerHTML="";return}e.innerHTML=t.toString()}async setNotifyStyle(t){const e=await SpinQuery.select(`.custom-navbar li[data-name='${this.name}'] .notify-count`);if(!e){return}const n={1:"number",2:"dot",3:"hidden"};e.classList.remove(...Object.values(n));e.classList.add(n[t])}checkPosition(t=false){if(this.boundingWidth===0||this.hidden){return true}const e=this.element;const n=e.querySelector(".main-content ~ .popup-container");if(!n){return true}n.style.transform="";if(t){return true}const r=e.getBoundingClientRect();const i=r.left+r.width/2;const a=document.documentElement.clientWidth;const o=i-this.boundingWidth/2;const u=i+this.boundingWidth/2;if(o<0){n.style.transform=`translateX(${Math.abs(o)+1}px)`}else if(u>a){n.style.transform=`translateX(${-(u-a)-1}px)`}return i<=s/2||a-i<=s/2}}return{export:{NavbarComponent:r}}})();
|
||||||
1
min/custom-navbar-dark-mode.min.js
vendored
Normal file
1
min/custom-navbar-dark-mode.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,a)=>{const{NavbarComponent:e}=a.import("custom-navbar-component");class s extends e{constructor(){super();this.touch=false;this.href=()=>t.useDarkStyle=!t.useDarkStyle;addSettingsListener("useDarkStyle",(t=>{if(t){this.html=`<svg style="width: 18px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 47.96 47.96"><path d="M24,12A12,12,0,1,0,36,24,12,12,0,0,0,24,12Zm0,20a8,8,0,1,1,8-8A8,8,0,0,1,24,32Z"/><path d="M24,9a2,2,0,0,0,2-2V4a2,2,0,0,0-4,0V7A2,2,0,0,0,24,9Z"/><path d="M36,14a2,2,0,0,0,1.42-.59l2.12-2.12a2,2,0,1,0-2.83-2.83l-2.12,2.12A2,2,0,0,0,36,14Z"/><path d="M44,22H41a2,2,0,0,0,0,4h3a2,2,0,1,0,0-4Z"/><path d="M37.4,34.61a2,2,0,1,0-2.83,2.82l2.12,2.13a2,2,0,0,0,2.83-2.83Z"/><path d="M24,39a2,2,0,0,0-2,2v3a2,2,0,0,0,4,0V41A2,2,0,0,0,24,39Z"/><path d="M10.53,34.61,8.41,36.73a2,2,0,0,0,0,2.83,2,2,0,0,0,2.82,0l2.13-2.13a2,2,0,1,0-2.83-2.82Z"/><path d="M9,24a2,2,0,0,0-2-2H4a2,2,0,0,0,0,4H7A2,2,0,0,0,9,24Z"/><path d="M10.53,13.39a2,2,0,0,0,1.41.59,2,2,0,0,0,1.42-3.42L11.23,8.44a2,2,0,0,0-2.82,2.83Z"/></svg>`}else{this.html=`<svg style="width: 18px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M24.48,42.18A18.66,18.66,0,0,1,22.11,5,2,2,0,0,1,23.56,8.6,11.32,11.32,0,1,0,39.4,24.44,2,2,0,0,1,43,25.89,18.68,18.68,0,0,1,24.48,42.18ZM16.36,11.32A14.66,14.66,0,1,0,36.68,31.64,15.35,15.35,0,0,1,15,17.68,15.2,15.2,0,0,1,16.36,11.32Z"/></svg>`}}),true)}get name(){return"darkMode"}}return{export:{DarkMode:s}}})();
|
||||||
1
min/custom-navbar-favorites-list.min.js
vendored
Normal file
1
min/custom-navbar-favorites-list.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar-history-list.min.js
vendored
Normal file
1
min/custom-navbar-history-list.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar-iframe.min.js
vendored
Normal file
1
min/custom-navbar-iframe.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{function r(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}const{NavbarComponent:i}=t.import("custom-navbar-component");class a extends i{constructor(e,t,i){super();r(this,"iframeName",void 0);const{src:a,width:n,height:s,lazy:h,iframeName:m}=i;this.boundingWidth=parseInt(n);this.iframeName=m;this.html=e;this.href=t;this.popupHtml=`\n<iframe src='${a}' frameborder='0' width='${n}' height='${s}'></iframe>\n`;this.noPadding=true;this.requestedPopup=h?false:true;this.touch=false;this.transparent=true}get name(){return this.iframeName+"Iframe"}}return{export:{Iframe:a}}})();
|
||||||
1
min/custom-navbar-logo.min.js
vendored
Normal file
1
min/custom-navbar-logo.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,o)=>{const{NavbarComponent:s}=o.import("custom-navbar-component");class a extends s{constructor(){super();this.href=`https://www.bilibili.com/`;this.touch=false;addSettingsListener("customNavbarSeasonLogo",(()=>this.getLogo()),true)}async getLogo(){if(t.customNavbarSeasonLogo){const t=await Ajax.getJson("https://api.bilibili.com/x/web-show/res/locs?pf=0&ids=142");if(t.code===0){this.html=`<img height="38" class="custom-navbar-season-logo" src="${t.data[142][0].litpic.replace("http:","https:")}">`;return}}this.html=`<i class="custom-navbar-iconfont custom-navbar-icon-logo"></i>`}get name(){return"logo"}}return{export:{Logo:a}}})();
|
||||||
1
min/custom-navbar-messages.min.js
vendored
Normal file
1
min/custom-navbar-messages.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{function s(t,e,s){if(e in t){Object.defineProperty(t,e,{value:s,enumerable:true,configurable:true,writable:true})}else{t[e]=s}return t}const{NavbarComponent:i}=e.import("custom-navbar-component");class a extends i{constructor(){super();s(this,"totalCount",void 0);s(this,"settings",void 0);this.href="https://message.bilibili.com/";this.html="消息";this.popupHtml=`\n<ul id="message-list">\n<li><a data-name="reply" target="_blank" href="https://message.bilibili.com/#/reply">回复我的</a></li>\n<li><a data-name="at" target="_blank" href="https://message.bilibili.com/#/at">@我的</a></li>\n<li><a data-name="like" target="_blank" href="https://message.bilibili.com/#/love">收到的赞</a></li>\n<li><a data-name="user_msg" target="_blank" href="https://message.bilibili.com/#/whisper">我的消息</a></li>\n<li><a data-name="sys_msg" target="_blank" href="https://message.bilibili.com/#/system">系统通知</a></li>\n</ul>\n`;this.requestedPopup=true;this.active=document.URL.startsWith("https://message.bilibili.com/");this.fetchSettings().then((t=>{if(t){this.updateCount();this.setupEvents();this.onPopup=()=>this.updateCount()}}))}get name(){return"messages"}async fetchSettings(){const t=await Ajax.getJsonWithCredentials(`https://api.vc.bilibili.com/link_setting/v1/link_setting/get?msg_notify=1&show_unfollowed_msg=1`);if(t.code!==0){return}await this.setNotifyStyle(t.data.msg_notify);this.settings={notify:t.data.msg_notify!==3,hideNotFollowedCount:t.data.show_unfollowed_msg===1,json:t.data};console.log(this.settings);return t.data.msg_notify!==3}async setupEvents(){const t=await SpinQuery.select("#message-list");const e=[...t.querySelectorAll("a[data-name]")];e.forEach((t=>{t.addEventListener("click",(()=>{const e=t.getAttribute("data-count");if(!e){return}const s=parseInt(e);t.removeAttribute("data-count");this.totalCount-=s;if(this.totalCount<0){this.totalCount=0}this.setNotifyCount(this.totalCount)}))}))}async updateCount(){const t=await Ajax.getJsonWithCredentials(`https://api.bilibili.com/x/msgfeed/unread`);const e=await Ajax.getJsonWithCredentials(`https://api.vc.bilibili.com/session_svr/v1/session_svr/single_unread`);const s=await SpinQuery.select("#message-list");const i=[...s.querySelectorAll("a[data-name]")];const a=i.map((t=>t.getAttribute("data-name")));if(t.code!==0||e.code!==0){return}t.data["user_msg"]=e.data.follow_unread||0;if(!this.settings.hideNotFollowedCount){t.data["user_msg"]+=e.data.unfollow_unread||0}this.totalCount=a.reduce(((e,s)=>e+(t.data[s]||0)),0);if(!this.totalCount){return}await this.setNotifyCount(this.totalCount);a.forEach(((e,s)=>{const a=t.data[e];if(a>0){i[s].setAttribute("data-count",a.toString())}else{i[s].removeAttribute("data-count")}}))}}return{export:{Messages:a}}})();
|
||||||
1
min/custom-navbar-rank.min.js
vendored
Normal file
1
min/custom-navbar-rank.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(l,i)=>{const{NavbarComponent:t}=i.import("custom-navbar-component");class a extends t{constructor(){super();this.href="https://www.bilibili.com/v/popular/rank/all";this.html="排行";this.popupHtml=`\n<ul id="ranking-list">\n<li><a target="_blank" href="https://www.bilibili.com/v/popular/all">综合热门</a></li>\n<li><a target="_blank" href="https://www.bilibili.com/v/popular/weekly">每周必看</a></li>\n<li><a target="_blank" href="https://www.bilibili.com/v/popular/history">入站必刷</a></li>\n<li><a target="_blank" href="https://www.bilibili.com/v/popular/rank/all">排行榜</a></li>\n</ul>\n`}get name(){return"rankingLink"}}return{export:{Rank:a}}})();
|
||||||
1
min/custom-navbar-search-box.min.js
vendored
Normal file
1
min/custom-navbar-search-box.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar-settings.min.js
vendored
Normal file
1
min/custom-navbar-settings.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{const s=async()=>{await SpinQuery.select(".custom-navbar-settings");const{Slip:s}=await t.importAsync("slip");const a=dq("#custom-navbar-settings");a.addEventListener("click",(async()=>{const e=dq(".custom-navbar-settings");if(e){e.classList.toggle("show");dq(".gui-settings-mask").click()}}));a.addEventListener("mouseover",(()=>{const t={blank1:"弹性空白1",logo:"Logo",category:"主站",rankingLink:"排行",drawingLink:"相簿",bangumiLink:"番剧",musicLink:"音频",gamesIframe:"游戏中心",livesIframe:"直播",matchLink:"赛事",shopLink:"会员购",mangaIframe:"漫画",blank2:"弹性空白2",search:"搜索框",userInfo:"用户信息",messages:"消息",activities:"动态",bangumi:"订阅",watchlaterList:"稍后再看",favoritesList:"收藏",historyList:"历史",upload:"投稿入口",blank3:"弹性空白3",darkMode:"夜间模式开关"};Vue.component("order-item",{props:["item"],template:`\n<li @mouseenter="viewBorder(true)"\n @mouseleave="viewBorder(false)"\n :class="{hidden: hidden()}">\n<i class="mdi mdi-menu"></i>\n {{item.displayName}}\n<button @click="toggleHidden()">\n<i v-if="hidden()" class="mdi mdi-eye-off"></i>\n<i v-else class="mdi mdi-eye"></i>\n</button>\n</li>\n`,methods:{hidden(){return e.customNavbarHidden.includes(this.item.name)},viewBorder(e){const t=dq(`.custom-navbar li[data-name='${this.item.name}']`);if(t!==null){t.classList.toggle("view-border",e)}},toggleHidden(){const t=this.hidden();if(t===false){e.customNavbarHidden.push(this.item.name)}else{const t=e.customNavbarHidden.indexOf(this.item.name);if(t===-1){return}e.customNavbarHidden.splice(t,1)}this.$forceUpdate();const s=dq(`.custom-navbar li[data-name='${this.item.name}']`);if(s!==null){s.style.display=t?"flex":"none"}e.customNavbarHidden=e.customNavbarHidden}}});const a=_.debounce((t=>{document.documentElement.style.setProperty("--navbar-bounds-padding",`0 ${t}%`);e.customNavbarBoundsPadding=t}),200);new Vue({el:".custom-navbar-settings",mounted(){const t=dq(".custom-navbar-settings .order-list");const a=({sourceItem:s,targetItem:a,orderBefore:n,orderAfter:r})=>{if(n===r){return}const i=Object.entries(e.customNavbarOrder).filter((([e])=>e in customNavbarDefaultOrders));const o=i.sort(((e,t)=>e[1]-t[1])).map((e=>e[0]));if(n<r){for(let t=n+1;t<=r;t++){const s=o[t];e.customNavbarOrder[s]=t-1;const a=dq(`.custom-navbar li[data-name='${s}']`);a.style.order=(t-1).toString()}}else{for(let t=n-1;t>=r;t--){const s=o[t];e.customNavbarOrder[s]=t+1;const a=dq(`.custom-navbar li[data-name='${s}']`);a.style.order=(t+1).toString()}}e.customNavbarOrder[o[n]]=r;const d=dq(`.custom-navbar li[data-name='${o[n]}']`);d.style.order=r.toString();t.insertBefore(s,a);e.customNavbarOrder=e.customNavbarOrder};new s(t);t.addEventListener("slip:beforewait",(e=>{if(e.target.classList.contains("mdi-menu")){e.preventDefault()}}),false);t.addEventListener("slip:beforeswipe",(e=>e.preventDefault()),false);t.addEventListener("slip:reorder",(e=>{a({sourceItem:e.target,targetItem:e.detail.insertBefore,orderBefore:e.detail.originalIndex,orderAfter:e.detail.spliceIndex});return false}),false)},computed:{orderList(){const s=Object.entries(e.customNavbarOrder);return s.filter((e=>e[0]in t)).sort(((e,t)=>e[1]-t[1])).map((e=>({displayName:t[e[0]],name:e[0],order:e[1]})))}},data:{boundsPadding:e.customNavbarBoundsPadding},watch:{boundsPadding(e){a(e)}},methods:{close(){dq(".custom-navbar-settings").classList.remove("show")},restoreDefault(){if(typeof customNavbarDefaultOrders==="undefined"){Toast.error("未找到默认值设定, 请更新您的脚本.","自定义顶栏",3e3);return}if(confirm("确定要恢复默认顶栏布局吗? 恢复后页面将刷新.")){this.boundsPadding=5;e.customNavbarOrder=customNavbarDefaultOrders;location.reload()}}}})}),{once:true})};return{export:{initSettingsPanel:s}}})();
|
||||||
1
min/custom-navbar-simple-link.min.js
vendored
Normal file
1
min/custom-navbar-simple-link.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{const{NavbarComponent:n}=e.import("custom-navbar-component");class s extends n{constructor(t,e,n){super();this.linkName=n;this.html=t;this.href=e;this.touch=false;this.active=document.URL.startsWith(e)}get name(){return this.linkName+"Link"}}return{export:{SimpleLink:s}}})();
|
||||||
1
min/custom-navbar-subscriptions.min.js
vendored
Normal file
1
min/custom-navbar-subscriptions.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(i,s)=>{const{NavbarComponent:t}=s.import("custom-navbar-component");class a extends t{constructor(){super();this.boundingWidth=380;this.noPadding=true;const i=getUID();this.href=`https://space.bilibili.com/${i}/bangumi`;this.html="订阅";this.active=[`https://space.bilibili.com/${i}/bangumi`,`https://space.bilibili.com/${i}/cinema`,`https://space.bilibili.com/${i}/subs`].includes(document.URL.replace(/\?.*$/,""));this.popupHtml=`\n<div class="subscriptions">\n<ul class="subscriptions-tabs">\n<li class="tab" :class="{selected: bangumi}" @click="bangumi = true">追番</li>\n<li class="tab" :class="{selected: !bangumi}" @click="bangumi = false">追剧</li>\n<div class="tab-placeholder"></div>\n<a class="view-all" target="_blank" :href="'https://space.bilibili.com/${i}/' + (bangumi ? 'bangumi' : 'cinema')">\n 查看更多\n<i class="mdi mdi-dots-horizontal"></i>\n</a>\n</ul>\n<div class="content">\n<transition name="subscriptions-content" mode="out-in">\n<bangumi-subscriptions v-if="bangumi" type="bangumi" :key="'bangumi'"></bangumi-subscriptions>\n<bangumi-subscriptions v-else type="cinema" :key="'cinema'"></bangumi-subscriptions>\n</transition>\n</div>\n</div>`;this.initialPopup=()=>{this.init()}}async init(){new Vue({el:await SpinQuery.select(".custom-navbar .subscriptions"),data:{bangumi:true},components:{"bangumi-subscriptions":{props:["type"],components:{"dpi-img":()=>s.importAsync("dpi-img.vue")},template:`\n<div class="bangumi-subscriptions" :class="{center: loading || !loading && cards.length === 0}">\n<div v-if="loading" class="loading">\n<i class="mdi mdi-18px mdi-loading mdi-spin"></i>\n 加载中...\n</div>\n<div v-if="!loading && cards.length === 0" class="empty">空空如也哦 = ̄ω ̄=</div>\n<a v-if="!loading" v-for="card of cards" :key="card.id" :href="card.playUrl" target="_blank" class="bangumi-subscriptions-card">\n<dpi-img class="cover" :src="card.coverUrl" :size="{height: 64}"></dpi-img>\n<div class="card-info">\n<h1 class="title" :title="card.title">{{card.title}}</h1>\n<div class="progress-row">\n<div v-if="card.status" class="status" :class="'status-' + card.status">\n {{card.statusText}}\n</div>\n<div v-if="card.progress" class="progress" :title="card.progress + ' | ' + card.latest">{{card.progress}} | {{card.latest}}</div>\n<div v-else class="progress" :title="card.latest">{{card.latest}}</div>\n<a class="info" :href="card.mediaUrl" target="_blank" title="详细信息">\n<i class="mdi mdi-information-outline"></i>\n</a>\n</div>\n</div>\n</a>\n</div>\n`,data(){return{loading:true,cards:[]}},async mounted(){try{const i=await Ajax.getJsonWithCredentials(`https://api.bilibili.com/x/space/bangumi/follow/list?type=${this.type!=="bangumi"?"2":"1"}&pn=1&ps=16&vmid=${getUID()}`);if(i.code!==0){logError(`加载订阅信息失败: ${i.message}`);return}const s=i=>{switch(i){case 1:return"想看";case 2:default:return"在看";case 3:return"看过"}};this.cards=i.data.list.map((i=>({title:i.title,coverUrl:i.square_cover.replace("http:","https:"),latest:i.new_ep.index_show,progress:i.progress,id:i.season_id,status:i.follow_status,statusText:s(i.follow_status),playUrl:`https://www.bilibili.com/bangumi/play/ss${i.season_id}`,mediaUrl:`https://www.bilibili.com/bangumi/media/md${i.media_id}`}))).sort(((i,s)=>{let t=i.status;if(t!==3){t=3-t}let a=s.status;if(a!==3){a=3-a}return t-a}))}finally{this.loading=false}}}}})}get name(){return"bangumi"}}return{export:{Subscriptions:a}}})();
|
||||||
1
min/custom-navbar-upload.min.js
vendored
Normal file
1
min/custom-navbar-upload.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,i)=>{const{NavbarComponent:a}=i.import("custom-navbar-component");class l extends a{constructor(){super();this.href="https://member.bilibili.com/v2#/upload/video/frame";this.html=`\n<svg style="width:16px;height:16px;padding:3px;box-sizing:content-box;" viewBox="0 0 785 886">\n<path d="M582,374L582,566C582,585.333 576.167,600.833 564.5,612.5C552.833,624.167 537.333,630 518,630L262,630C242.667,630 227.167,624.167 215.5,612.5C203.833,600.833 198,585.333 198,566L198,374L32,374C22,374 14.1667,371.167 8.5,365.5C2.83333,359.833 0,352 0,342C0,338.667 1.16666,334.5 3.5,329.5C5.83333,324.5 8.66666,320 12,316L371,9C377.667,3.00006 385.167,6.10352e-005 393.5,0C401.833,6.10352e-005 409.333,3.00006 416,9L774,316C780,322.667 783.333,330.167 784,338.5C784.667,346.833 783.333,354.333 780,361L764,370C760,372.667 754.667,374 748,374ZM70,758L710,758C729.333,758 744.833,763.833 756.5,775.5C768.167,787.167 774,802.667 774,822C774,841.333 768.167,856.833 756.5,868.5C744.833,880.167 729.333,886 710,886L70,886C50.6667,886 35.1667,880.167 23.5,868.5C11.8333,856.833 6,841.333 6,822C6,802.667 11.8333,787.167 23.5,775.5C35.1667,763.833 50.6667,758 70,758Z" />\n</svg>\n<div id="upload-button">投稿</div>`;this.popupHtml=`\n<ul id="upload-actions">\n<li><a target="_blank" href="https://member.bilibili.com/platform/upload/text/apply">专栏投稿</a></li>\n<li><a target="_blank" href="https://member.bilibili.com/platform/upload/audio/">音频投稿</a></li>\n<li><a target="_blank" href="https://member.bilibili.com/platform/upload/video/frame">视频投稿</a></li>\n<li><a target="_blank" href="https://member.bilibili.com/platform/upload-manager/article">投稿管理</a></li>\n<li><a target="_blank" href="https://member.bilibili.com/platform/home">创作中心</a></li>\n</ul>\n`}get name(){return"upload"}}return{export:{Upload:l}}})();
|
||||||
1
min/custom-navbar-user-info.min.js
vendored
Normal file
1
min/custom-navbar-user-info.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar-video-list.min.js
vendored
Normal file
1
min/custom-navbar-video-list.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,i)=>{function e(t,i,e){if(i in t){Object.defineProperty(t,i,{value:e,enumerable:true,configurable:true,writable:true})}else{t[i]=e}return t}const{NavbarComponent:s}=i.import("custom-navbar-component");class a extends s{constructor({mainUrl:t,name:i,apiUrl:s,listName:a,listMap:l}){super();e(this,"listName",void 0);this.href=t;this.listName=a;this.html=i;this.noPadding=true;this.requestedPopup=false;this.popupHtml=`\n<ol class="video-list ${a}">\n<li class="loading">加载中...</li>\n</ol>\n`;this.initialPopup=async()=>{if(!l){return}const e=await SpinQuery.select(`.video-list.${a}`);if(e===null){return}const r=await Ajax.getJsonWithCredentials(s);let n="";if(r.code!==0){logError(`加载${i}信息失败. 错误码: ${r.code} ${r.message}`)}else{n=l(r).join("")}e.insertAdjacentHTML("beforeend",n+`\n<li class="more"><a target="_blank" href="${t}">查看更多</a></li>\n`);e.classList.add("loaded")}}get name(){return this.listName+"List"}}class l extends a{constructor(){super({name:"收藏",mainUrl:`https://space.bilibili.com/${getUID()}/favlist`,apiUrl:"https://api.bilibili.com/medialist/gateway/coll/resource/recent",listName:"favorites",listMap:t=>{if(!t.data||t.data.length===0){return[`<li class="loading empty">空空如也哦 = ̄ω ̄=</li>`]}return t.data.map((t=>`\n<li>\n<a target="_blank" href="https://www.bilibili.com/video/av${t.id}">${t.title}</a>\n</li>`))}});this.active=document.URL.replace(/\?.*$/,"")===`https://space.bilibili.com/${getUID()}/favlist`}}class r extends a{constructor(){super({name:"历史",mainUrl:"https://www.bilibili.com/account/history",apiUrl:"https://api.bilibili.com/x/v2/history?pn=1&ps=6",listName:"history",listMap:t=>{if(!t.data||t.data.length===0){return[`<li class="loading empty">空空如也哦 = ̄ω ̄=</li>`]}return t.data.map((t=>{let i=[];let e="";const s=t.page?t.page.page:1;let a=t.progress>=0?t.progress/t.duration:1;if(isNaN(a)){a=0}if(s!==1){i.push(`p=${s}`);e+=`看到第${s}话`}if(t.progress>0&&t.progress<t.duration){i.push(`t=${t.progress}`);e+=` ${Math.floor(a*100)}%`}else if(t.progress===0){e+=` 刚开始看`}else{e+=" 100%"}return`\n<li class="history-item">\n<a target="_blank" href="https://www.bilibili.com/video/av${t.aid}?${i.join("&")}">\n<span class="title">${t.title}</span>\n<span class="description">${e}</span>\n<div class="progress background">\n<div class="progress foreground" style="--progress: ${a*100}%"></div>\n</div>\n</a>\n</li>`}))}});this.active=document.URL.replace(/\?.*$/,"")==="https://www.bilibili.com/account/history"}}return{export:{FavoritesList:l,HistoryList:r}}})();
|
||||||
1
min/custom-navbar-watchlater-list.min.js
vendored
Normal file
1
min/custom-navbar-watchlater-list.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,i)=>{function e(t,i,e){if(i in t){Object.defineProperty(t,i,{value:e,enumerable:true,configurable:true,writable:true})}else{t[i]=e}return t}const{NavbarComponent:a}=i.import("custom-navbar-component");class s extends a{constructor(){super();e(this,"vm",void 0);this.boundingWidth=380;this.noPadding=true;this.href="https://www.bilibili.com/watchlater/#/list";this.html="稍后再看";this.active=document.URL.startsWith("https://www.bilibili.com/watchlater/");this.popupHtml=`\n<div class="watchlater-list loading">\n<div class="loading-tip">\n 加载中...\n</div>\n<div class="empty-tip" v-if="filteredCards.length === 0">\n 空空如也哦 = ̄ω ̄=\n</div>\n<div class="header">\n \x3c!--<div class="operations">\n<div v-if="!redirect" class="round-button" title="播放全部"><i class="mdi mdi-play-circle-outline"></i></div>\n<div class="round-button" title="移除已观看"><i class="mdi mdi-eye-check-outline"></i></div>\n<div class="round-button" title="清空全部"><i class="mdi mdi-trash-can-outline"></i></div>\n</div>--\x3e\n<div class="search">\n<input type="text" placeholder="搜索" v-model="search">\n</div>\n<a class="round-button" target="_blank" href="https://www.bilibili.com/medialist/play/watchlater" title="播放全部">\n<i class="mdi mdi-play"></i>\n</a>\n<a class="round-button" href="https://www.bilibili.com/watchlater/#/list" title="查看更多" target="_blank">\n<i class="mdi mdi-dots-horizontal"></i>\n</a>\n</div>\n<transition-group name="cards" tag="div" class="cards">\n<div class="watchlater-card" v-for="(card, index) of filteredCards" :key="card.aid">\n<a class="cover-container" target="_blank" :href="card.href">\n<dpi-img class="cover" :src="card.coverUrl" :size="{width: 130, height: 85}"></dpi-img>\n<div class="floating remove" title="移除" @click.prevent="remove(card.aid, index)"><i class="mdi mdi-close"></i></div>\n<div class="floating duration">{{card.durationText}}</div>\n<div class="floating viewed" v-if="card.complete">\n 已观看\n</div>\n</a>\n<a class="title" target="_blank" :href="card.href" :title="card.title">{{card.title}}</a>\n<a class="up" target="_blank" :href="'https://space.bilibili.com/' + card.upID" :title="card.upName">\n<dpi-img class="face" :src="card.upFaceUrl" :size="20"></dpi-img>\n<div class="name">{{card.upName}}</div>\n</a>\n</div>\n</transition-group>\n \x3c!--<div class="undo round-button">\n<i class="mdi mdi-undo-variant"></i>\n 撤销\n</div>--\x3e\n</div>\n`;this.initialPopup=()=>{this.init()};this.onPopup=()=>{var t;(t=this.vm)===null||t===void 0?void 0:t.updateList()}}async init(){this.vm=new Vue({el:await SpinQuery.select(`.custom-navbar [data-name="${this.name}"] .watchlater-list`),store:store,components:{DpiImg:()=>i.importAsync("dpi-img.vue")},data:{cards:[],filteredCards:[],search:"",lastRemovedAid:0,redirect:t.watchLaterRedirect&&t.watchLaterRedirectNavbar},computed:{...Vuex.mapState(["watchlaterList"])},watch:{search(){this.updateFilteredCards()}},methods:{...Vuex.mapActions(["toggleWatchlater"]),async updateList(){const{getWatchlaterList:t}=await i.importAsync("watchlater-api");const e=await t(true);if(!e){this.cards=[];return}const a=t=>{if(this.redirect){return`https://www.bilibili.com/video/${t.bvid}`}return`https://www.bilibili.com/medialist/play/watchlater/${t.bvid}`};const s=e.map((t=>{const i=(()=>{if(t.pages===undefined){return a(t)}const i=t.pages.map((t=>t.cid));const e=t.cid===0?1:i.indexOf(t.cid)+1;return this.redirect?`${a(t)}?p=${e}`:a(t)})();const e=Math.round(1e3*t.progress/t.duration)/1e3;return{aid:t.aid,bvid:t.bvid,href:i,coverUrl:t.pic.replace("http:","https:"),durationText:formatDuration(t.duration),duration:t.duration,complete:t.progress<0||e>.95,title:t.title,upName:t.owner.name,upFaceUrl:t.owner.face.replace("http:","https:"),upID:t.owner.mid}}));this.cards=s;if(this.search){this.updateFilteredCards()}else{this.filteredCards=s}},async remove(t,i){this.cards.splice(i,1);await this.toggleWatchlater(t);this.lastRemovedAid=t},async undo(){const t=this.lastRemovedAid;if(t!==0){await this.toggleWatchlater(t)}},updateFilteredCards:_.debounce((function(){const t=this.search.toLowerCase();const i=this.$el.querySelector(".cards");i.scrollTo(0,0);this.filteredCards=this.cards.filter((i=>i.title.toLowerCase().includes(t)||i.upName.toLowerCase().includes(t)))}),100)},async mounted(){try{await this.updateList()}finally{this.$el.classList.remove("loading")}}})}get name(){return"watchlaterList"}}return{export:{WatchlaterList:s}}})();
|
||||||
1
min/custom-navbar.min.css
vendored
Normal file
1
min/custom-navbar.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/custom-navbar.min.html
Normal file
1
min/custom-navbar.min.html
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 61 KiB |
1
min/custom-navbar.min.js
vendored
Normal file
1
min/custom-navbar.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/danmaku-converter.min.js
vendored
Normal file
1
min/danmaku-converter.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/danmaku-segment.min.js
vendored
Normal file
1
min/danmaku-segment.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(settings,resources)=>{const proto={nested:{DmWebViewReply:{fields:{state:{type:"int32",id:1},text:{type:"string",id:2},textSide:{type:"string",id:3},dmSge:{type:"DmSegConfig",id:4},flag:{type:"DanmakuFlagConfig",id:5},specialDms:{rule:"repeated",type:"string",id:6},checkBox:{type:"bool",id:7},count:{type:"int64",id:8},commandDms:{rule:"repeated",type:"CommandDm",id:9},dmSetting:{type:"DanmuWebPlayerConfig",id:10}}},CommandDm:{fields:{id:{type:"int64",id:1},oid:{type:"int64",id:2},mid:{type:"int64",id:3},command:{type:"string",id:4},content:{type:"string",id:5},progress:{type:"int32",id:6},ctime:{type:"string",id:7},mtime:{type:"string",id:8},extra:{type:"string",id:9},idStr:{type:"string",id:10}}},DmSegConfig:{fields:{pageSize:{type:"int64",id:1},total:{type:"int64",id:2}}},DanmakuFlagConfig:{fields:{recFlag:{type:"int32",id:1},recText:{type:"string",id:2},recSwitch:{type:"int32",id:3}}},DmSegMobileReply:{fields:{elems:{rule:"repeated",type:"DanmakuElem",id:1}}},DanmakuElem:{fields:{id:{type:"int64",id:1},progress:{type:"int32",id:2},mode:{type:"int32",id:3},fontsize:{type:"int32",id:4},color:{type:"uint32",id:5},midHash:{type:"string",id:6},content:{type:"string",id:7},ctime:{type:"int64",id:8},weight:{type:"int32",id:9},action:{type:"string",id:10},pool:{type:"int32",id:11},idStr:{type:"string",id:12},attr:{type:"int32",id:13}}},DanmuWebPlayerConfig:{fields:{dmSwitch:{type:"bool",id:1},aiSwitch:{type:"bool",id:2},aiLevel:{type:"int32",id:3},blocktop:{type:"bool",id:4},blockscroll:{type:"bool",id:5},blockbottom:{type:"bool",id:6},blockcolor:{type:"bool",id:7},blockspecial:{type:"bool",id:8},preventshade:{type:"bool",id:9},dmask:{type:"bool",id:10},opacity:{type:"float",id:11},dmarea:{type:"int32",id:12},speedplus:{type:"float",id:13},fontsize:{type:"float",id:14},screensync:{type:"bool",id:15},speedsync:{type:"bool",id:16},fontfamily:{type:"string",id:17},bold:{type:"bool",id:18},fontborder:{type:"int32",id:19},drawType:{type:"string",id:20}}}}};const decode=_.curry((async(type,blob,toastTitle="")=>{const buffer=new Uint8Array("arrayBuffer"in Blob.prototype?await blob.arrayBuffer():await new Response(blob).arrayBuffer());if(!window.protobufPromise){window.protobufPromise=new Promise((async(resolve,reject)=>{const library=await Ajax.monkey({url:"https://cdn.jsdelivr.net/npm/protobufjs@6.10.1/dist/light/protobuf.min.js",method:"GET"}).catch((e=>logError(e)));if(!library){const e="加载依赖库失败, 请稍后重试.";Toast.error(e,toastTitle||"错误");reject(e)}eval(library);resolve(window.protobuf)}))}const protobuf=await window.protobufPromise;const root=protobuf.Root.fromJSON(proto);const reply=root.lookupType(type);const message=reply.decode(buffer);return reply.toObject(message)}));const decodeDanmakuSegment=decode("DmSegMobileReply");const decodeDanmakuView=decode("DmWebViewReply");return{export:{proto:proto,decodeDanmakuSegment:decodeDanmakuSegment,decodeDanmakuView:decodeDanmakuView,test:async e=>{const t=`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=157340456&pid=92150659&segment_index=${e}`;const i=await Ajax.getBlob(t);const o=await decodeDanmakuSegment(i);console.log(o);unsafeWindow.testResult=o},testView:async()=>{const e=`https://api.bilibili.com/x/v2/dm/web/view?type=1&oid=157340456`;const t=await Ajax.getBlob(e);const i=await decodeDanmakuView(t);console.log(i);unsafeWindow.testResult=i}}}})();
|
||||||
1
min/danmaku-send-bar.min.css
vendored
Normal file
1
min/danmaku-send-bar.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.live-web-player-controller .danmaku-send-bar{display:none}.live-web-player-controller{background-image:linear-gradient(to bottom,transparent 20%,rgba(0,0,0,.9))}@media screen and (min-width:1038px){.player-full-win:not(.danmaku-send-bar-unloaded) .live-web-player-controller .control-area .danmaku-send-bar{display:flex;margin:0 24px;flex:1 1 0;height:24px;justify-content:center;align-items:center}.player-full-win:not(.danmaku-send-bar-unloaded) .live-web-player-controller .control-area .danmaku-send-bar input{outline:0!important;border:none;border-bottom:2px solid #fff8;background-color:transparent;color:#fff;padding:4px;line-height:normal;flex:1;width:0;max-width:400px;min-width:70px}.player-full-win:not(.danmaku-send-bar-unloaded) .live-web-player-controller .control-area .danmaku-send-bar input:focus-within{border-color:var(--theme-color)}.player-full-win:not(.danmaku-send-bar-unloaded) .live-web-player-controller .control-area .danmaku-send-bar input::-webkit-input-placeholder{color:#fff8!important}.player-full-win:not(.danmaku-send-bar-unloaded) .live-web-player-controller .control-area .right-area{flex:0 0 auto!important}}
|
||||||
1
min/danmaku-send-bar.min.js
vendored
Normal file
1
min/danmaku-send-bar.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{(async()=>{const{waitForControlBar:e}=await t.importAsync("live-control-bar");let n=false;let a;const l="danmaku-send-bar";e({init:()=>{t.applyStyle("danmakuSendBarStyle")},callback:async e=>{const t=dq(e,".left-area");const r=await SpinQuery.select(".control-panel-ctnr .chat-input-ctnr .chat-input");const s=await SpinQuery.select(".control-panel-ctnr .chat-input-ctnr ~ .bottom-actions .bl-button--primary");if([t,r,s].some((e=>e===null))){console.warn("[danmakuSendBar] ref elements not found",t===null,r===null,s===null);return}if(dq(e,`.${l}`)){return}if(!a){const e=Vue.extend({template:`\n<div class="${l}">\n<input\n type="text"\n placeholder="发个弹幕呗~"\n :value="value"\n @keydown.enter="send()"\n @input="updateValue($event.target.value)"\n maxlength="30"\n />\n</div>\n`,data(){return{value:r.value}},mounted(){r.addEventListener("input",this.listenChange);r.addEventListener("change",this.listenChange);if(!n){const e=Object.getOwnPropertyDescriptors(HTMLTextAreaElement.prototype).value;Object.defineProperty(r,"value",{...e,set(t){e.set.call(this,t);raiseEvent(r,"input")}});n=true}},beforeDestroy(){r.removeEventListener("input",this.listenChange);r.removeEventListener("change",this.listenChange)},methods:{updateValue(e){r.value=e;raiseEvent(r,"input")},send(){if(!s.disabled){this.value="";s.click()}},listenChange(e){this.value=e.target.value}}});a=(new e).$mount().$el}t.insertAdjacentElement("afterend",a)}})})();return{reload:()=>document.body.classList.remove("danmaku-send-bar-unloaded"),unload:()=>document.body.classList.add("danmaku-send-bar-unloaded")}})();
|
||||||
1
min/dark-color-scheme.min.js
vendored
Normal file
1
min/dark-color-scheme.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,s)=>{const a=matchMedia("(prefers-color-scheme: dark)");const o=async a=>{if(a!==e.useDarkStyle){console.log("[dark-color-scheme]",a,e.useDarkStyle);e.useDarkStyle=a;if(a){await s.fetchByKey("useDarkStyle")}else{const e=await s.importAsync("dark-styles");console.log("[dark-color-scheme]",e);e===null||e===void 0?void 0:e.unload()}}};o(a.matches);a.addEventListener("change",(e=>{o(e.matches)}))})();
|
||||||
1
min/dark-important.min.css
vendored
Normal file
1
min/dark-important.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
min/dark-navbar.min.css
vendored
Normal file
1
min/dark-navbar.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
#link-navbar-vm>.link-navbar .nav-item:hover,.bili-header-m .nav-menu .nav-con .nav-item:hover,.link-navbar .nav-item:hover,.nav-header-wrapper .nav-header .nav-header-search-bar,.right-part>.shortcuts-ctnr .shortcut-item:hover,.search-bar-ctnr .search-bar,.shortcuts-ctnr .shortcut-item:hover,.uns_box ul.menu li:not(.b-post):hover,.z_top .z_top_nav ul li:hover{background-color:#222!important}#app>.link-navbar,#app>.nav-header-wrapper,#link-navbar-vm>.link-navbar,#navbar-vm>.link-navbar,.b-header-mask-wrp .b-header-mask,.bili-header-m .nav-menu .nav-mask,.bili-header-m .nav-menu.blur-black .nav-mask,.link-navbar{background-color:#333!important}.z_top .i-link:hover,.z_top .z_top_nav ul li.home:hover{background-color:transparent!important}#app>.nav-header-wrapper>.nav-header{background:0 0!important}#app>.link-navbar .main-ctnr .nav-logo,#app>.link-navbar .nav-item.selected .label,#app>.link-navbar .nav-item:hover .icon-font,#app>.nav-header-wrapper>.nav-header .nav-header-mainsite,#app>.nav-header-wrapper>.nav-header .order-center,#link-navbar-vm>.link-navbar .main-ctnr .nav-logo,#link-navbar-vm>.link-navbar .nav-item:hover,.bili-header-m .nav-menu .nav-con .nav-item .t,.link-navbar .main-ctnr .custom-link>a,.link-navbar .main-ctnr .nav-logo,.my-link-btn .label,.nav-header-wrapper .nav-header .nav-header-search-bar,.right-part>.shortcuts-ctnr,.right-part>.shortcuts-ctnr .shortcut-item:hover,.search-bar-ctnr .search-bar input,.shortcut-item .list-item span,.shortcuts-ctnr .shortcut-item,.uns_box li.u-i a.i-link,.z_top a,.z_top.b-header-blur .uns_box li.u-i a.i-link,.z_top.b-header-blur .z_top_nav li a.i-link{color:#eee!important}.search-bar-ctnr .search-bar .placeholder,.search-bar-ctnr .search-bar .search-btn,.search-bar-ctnr .search-bar input::placeholder{color:#878787!important}.uns_box li.u-i:hover a.i-link,.z_top .i-link:hover{color:var(--theme-color)}.link-navbar,.link-navbar-ctnr{box-shadow:none!important}.link-navbar .main-ctnr .nav-logo::before,.nav-header-wrapper .nav-header .order-icon{filter:brightness(0) invert(1)!important}.search-bar-ctnr .search-bar{border-color:transparent!important;box-shadow:0 2px 10px 1px #0002}
|
||||||
1
min/dark-schedule.min.js
vendored
Normal file
1
min/dark-schedule.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{class i{constructor(...e){if(e.length===0){const e=new Date;this.hour=e.getHours();this.minute=e.getMinutes()}else if(e.length===1){const[t]=e;[this.hour,this.minute]=t.split(":").slice(0,2).map((e=>this.validatePart(e)));this.normalize()}else if(v.length===2){[this.hour,this.minute]=e}}validatePart(e){const t=parseInt(e);if(!isNaN(t)&&t>=0&&t<=59){return t}else{return null}}normalize(){while(this.minute<0){this.minute+=60;this.hour-=1}while(this.minute>=60){this.minute-=60;this.hour+=1}while(this.hour<0){this.hour+=24}while(this.hour>=24){this.hour-=24}}lessThan(e){if(this.hour<e.hour||this.hour===e.hour&&this.minute<e.minute){return true}return false}greaterThan(e){if(this.hour>e.hour||this.hour===e.hour&&this.minute>e.minute){return true}return false}equals(e){return this.hour===e.hour&&this.minute===e.minute}isInRange(e,t){if(e.equals(t)){return false}let i=this.greaterThan(e)&&this.lessThan(t);if(e.greaterThan(t)){i=this.greaterThan(e)||this.lessThan(t)}const s=i||this.equals(e);return s}static millisecondsBefore(e){const t=new i;const s=(new Date).getSeconds();const r=1e3*(t.hour*3600+t.minute*60+s);const n=1e3*(e.hour*3600+e.minute*60);let h=n-r;if(t.greaterThan(e)||t.equals(e)&&s!==0){h+=24*3600*1e3}return h}}function s(){if(e.darkSchedule){const t=new i(e.darkScheduleStart);const r=new i(e.darkScheduleEnd);const n=new i;const h=n.isInRange(t,r);if(e.useDarkStyle!==h){e.useDarkStyle=h}let u=0;if(h){u=i.millisecondsBefore(r)}else{u=i.millisecondsBefore(t)}if(u!==0){setTimeout((()=>s()),u)}}}setTimeout((()=>fullyLoaded((()=>s()))));return{export:{ScheduleTime:i}}})();
|
||||||
1
min/dark-styles.min.js
vendored
Normal file
1
min/dark-styles.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{const l=()=>{SpinQuery.select(".custom-scrollbar").then((e=>e&&e.classList.remove("custom-scrollbar")))};const i=()=>{document.body.classList.remove("dark");t.removeStyle("darkStyleNavBar");t.removeStyle("darkStyle");t.removeStyle("darkStyleImportant")};const o=[/\/\/member\.bilibili\.com\/platform\/(upload|allowance)\//,"//member.bilibili.com/v2","//member.bilibili.com/video/upload.html","//member.bilibili.com/article-text/home","//www.bilibili.com/audio/submit/","//member.bilibili.com/studio/bs-editor/projects","//www.bilibili.com/s/video/","//member.bilibili.com/platform","//live.bilibili.com/p/html/live-lottery/anchor-join.html","//account.bilibili.com/subtitle/edit/#/editor","/york/allowance-charge","//cm.bilibili.com/quests/#/task"];const r=()=>{if(e.noDarkOnMember&&o.some((e=>{if(typeof e==="string"){return document.URL.replace(location.search,"").includes(e)}else{return e.test(document.URL.replace(location.search,""))}}))){i();return}document.body.classList.add("dark");window.localStorage.setItem("pbp_theme_v4","b");l();if(!e.useDarkStyleAsUserStyle){t.applyImportantStyle("darkStyleNavBar");t.applyStyle("darkStyle");t.applyImportantStyle("darkStyleImportant")}};r();addSettingsListener("useDarkStyleAsUserStyle",(()=>{i();r()}));return{reload:r,unload:i,export:{load:r,unload:i}}})();
|
||||||
1
min/dark.min.css
vendored
Normal file
1
min/dark.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
13
min/dark.user.css
Normal file
13
min/dark.user.css
Normal file
File diff suppressed because one or more lines are too long
1
min/debounce.min.js
vendored
Normal file
1
min/debounce.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(n,l)=>{function u(n,l,u){var e,t,i,r,f;if(null==l)l=100;function o(){var a=Date.now()-r;if(a<l&&a>=0){e=setTimeout(o,l-a)}else{e=null;if(!u){f=n.apply(i,t);i=t=null}}}var a=function(){i=this;t=arguments;r=Date.now();var a=u&&!e;if(!e)e=setTimeout(o,l);if(a){f=n.apply(i,t);i=t=null}return f};a.clear=function(){if(e){clearTimeout(e);e=null}};a.flush=function(){if(e){f=n.apply(i,t);i=t=null;clearTimeout(e);e=null}};return a}return{export:{debounce:u}}})();
|
||||||
1
min/default-danmaku-settings.min.css
vendored
Normal file
1
min/default-danmaku-settings.min.css
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bilibili-player-video-danmaku-setting-wrap{display:none!important}
|
||||||
1
min/default-danmaku-settings.min.js
vendored
Normal file
1
min/default-danmaku-settings.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{async function i(e,t){const i=await SpinQuery.select((()=>document.querySelector(e)));if(!i){return}i.checked=t;raiseEvent(i,"change")}Observer.videoChange((()=>{if(!e.enableDanmaku){i(".bilibili-player-video-danmaku-switch>input",false)}if(e.rememberDanmakuSettings){const i={subtitlesPreserve:".bilibili-player-video-danmaku-setting-left-preventshade input",smartMask:".bilibili-player-video-danmaku-setting-left-danmaku-mask input"};async function n(){const n=await SpinQuery.select((()=>document.querySelector(".bilibili-player-video-danmaku-setting")));if(!n){return}await loadLazyPanel(".bilibili-player-video-danmaku-setting");setTimeout((()=>t.removeStyle("defaultDanmakuSettingsStyle")),300);for(const[t,n]of Object.entries(e.danmakuSettings)){const e=await SpinQuery.select((()=>document.querySelector(i[t])));if(e!==null&&e.checked!==undefined&&e.checked!==n){e.click()}}}async function a(){for(const t in e.danmakuSettings){const n=await SpinQuery.select((()=>document.querySelector(i[t])));if(!n){return}n.addEventListener("click",(()=>{e.danmakuSettings=Object.assign(e.danmakuSettings,{[t]:n.checked})}))}}n();a()}}))})();
|
||||||
1
min/default-live-quality.min.js
vendored
Normal file
1
min/default-live-quality.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,l)=>{(async()=>{if(!document.URL.match(/^https:\/\/live.bilibili.com\/(blanc\/)?(\d+)/)){return}const l=Resource.all.useDefaultLiveQuality.dropdown;const i=l.items;const e=t.defaultLiveQuality;const o=await SpinQuery.select(".bilibili-live-player-video-controller-switch-quality-btn");if(o===null){console.warn("qualitySettings null");return}const n=async()=>{const t=o.children[0].getAttribute("data-title");if(t==="4K"&&e==="原画"){console.log("stop for 4K");return}const l=dqa(o,".bilibili-live-player-video-controller-html-tooltip-option .text-btn");const n=l.map((t=>t.getAttribute("data-title")));console.log(t,n,e);if(t!==e){let t=e;while(!n.includes(t)){const l=i.indexOf(t);if(l>=i.length-1){console.log("reached lowest quality");return}t=i[l+1]}const o=l[n.indexOf(t)];console.log(o);while(!(o.classList.contains("active")||dq(".bilibili-live-player-video-controller-switch-quality-info"))){await(()=>new Promise((t=>setTimeout((()=>t()),3e3))))();o.click();console.log("click")}}};Observer.childList(o,(()=>{console.log(o.childElementCount);if(o.childElementCount>0){n()}}))})()})();
|
||||||
1
min/default-player-layout.min.js
vendored
Normal file
1
min/default-player-layout.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,o)=>{class t{setCookie(e,o){document.cookie=`${e}=${o};path=/;domain=.bilibili.com;max-age=31536000`}clearCookie(e){document.cookie=`${e}=;path=/;domain=.bilibili.com;max-age=0`}getValue(e){return document.cookie.replace(new RegExp(`(?:(?:^|.*;\\s*)${e}\\s*\\=\\s*([^;]*).*$)|^.*$`),"$1")}checkSettings(){return e.useDefaultPlayerLayout}checkCookies(){}useNewLayout(){}useOldLayout(){}setLayout(e){if(e){this.useNewLayout()}else{this.useOldLayout()}}}class s extends t{checkCookies(){super.checkCookies();const o=this.getValue(this.cookieKey);if(o===""||parseInt(o)<0&&e.defaultPlayerLayout!=="旧版"){console.log(`default/old -> new`);this.useNewLayout()}else if(e.defaultPlayerLayout!=="新版"){console.log(`new -> old`);this.useOldLayout()}}constructor(){super();this.cookieKey="stardustvideo";this.checkCookies()}useNewLayout(){super.useNewLayout();this.setCookie(this.cookieKey,1)}useOldLayout(){super.useOldLayout();this.setCookie(this.cookieKey,-1)}}class u extends t{checkCookies(){super.checkCookies();const o=this.getValue(this.cookieKey);if(o===""||parseInt(o)<=0&&e.defaultBangumiLayout!=="旧版"){console.log(`default/old -> new`);this.useNewLayout()}else if(e.defaultBangumiLayout!=="新版"){console.log(`new -> old`);this.useOldLayout()}}constructor(){super();this.cookieKey="stardustpgcv";this.checkCookies()}useNewLayout(){super.useNewLayout();this.setCookie(this.cookieKey,"0606")}useOldLayout(){super.useOldLayout();this.setCookie(this.cookieKey,0)}}const i=new s;addSettingsListener("defaultPlayerLayout",(e=>{i.setLayout(e==="新版")}));const a=new u;addSettingsListener("defaultBangumiLayout",(e=>{a.setLayout(e==="新版")}))})();
|
||||||
1
min/default-player-mode.min.js
vendored
Normal file
1
min/default-player-mode.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{if(typeof isEmbeddedPlayer!=="undefined"&&isEmbeddedPlayer()){return}const a=[{name:"常规",action:()=>{}},{name:"宽屏",action:async()=>{const{playerAgent:e}=await t.importAsync("player-agent");await e.widescreen()}},{name:"网页全屏",action:async()=>{const{playerAgent:e}=await t.importAsync("player-agent");await e.webFullscreen()}},{name:"全屏",action:async()=>{const{playerAgent:e}=await t.importAsync("player-agent");const a=await SpinQuery.condition((()=>document.querySelector(e.query.video.element.selector)),(e=>e!==null&&e.readyState===4&&document.readyState==="complete"&&document.hasFocus()));if(a===null){console.warn("[默认播放器模式] 未能应用全屏模式, 等待超时.");return}await e.fullscreen()}}];let n=()=>{};let i=()=>{};async function o(){const{playerAgent:a}=await t.importAsync("player-agent");if(e.autoLightOff){await SpinQuery.unsafeJquery();const e=await a.query.control.buttons.settings();if(!e){return}e.mouseover().mouseout();const t=async e=>{const t=await SpinQuery.select(".bilibili-player-video-btn-setting-right-others-content-lightoff .bui-checkbox-input");t.checked=e;raiseEvent(t,"change")};n=()=>t(true);i=()=>t(false)}}async function r(){await o();const{playerReady:r}=await t.importAsync("player-ready");const{playerAgent:s}=await t.importAsync("player-agent");await r();Observer.videoChange((async()=>{const e=await s.query.video.element();if(!e){return}if(d){n()}e.addEventListener("ended",i);e.addEventListener("pause",i);e.addEventListener("play",n)}));const c=await s.query.video.element();if(!c){return}const l=a.find((t=>t.name===e.defaultPlayerMode));const y=async()=>{const e=!dq("body[class*=player-mode-]");if(l&&e){l.action()}};const d=_.get(JSON.parse(localStorage.getItem("bilibili_player_settings")),"video_status.autoplay",false);if(e.applyPlayerModeOnPlay&&!d){c.addEventListener("play",y,{once:true})}else{y()}}r()})();
|
||||||
1
min/default-video-quality.min.js
vendored
Normal file
1
min/default-video-quality.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,a)=>{const t=[{name:"4K",value:120},{name:"1080P60",value:116},{name:"1080P+",value:112},{name:"1080P",value:80},{name:"720P60",value:74},{name:"720P",value:64},{name:"480P",value:32},{name:"360P",value:15},{name:"自动",value:0}];async function n(){const a=".bilibili-player-video-quality-menu .bui-select-list>li.bui-select-item";await SpinQuery.select(a);const n=dqa(a);if(!n){return}const[i]=n.map((e=>parseInt(e.getAttribute("data-value")))).sort(descendingSort((e=>e)));const[l]=t.filter((a=>a.name===e.defaultVideoQuality)).map((e=>e.value)).sort(descendingSort((e=>e)));const[u]=t.map((e=>e.value)).filter((e=>e<=Math.min(l,i))).sort(descendingSort((e=>e)));const s=await SpinQuery.select("video");function r(){n.forEach((e=>{if(parseInt(e.getAttribute("data-value"))===u){e.click()}}));this.removeEventListener("play",r)}s.addEventListener("play",r)}Observer.videoChange(n)})();
|
||||||
1
min/default-video-speed.min.js
vendored
Normal file
1
min/default-video-speed.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{function i(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}class a{static getDefaultVideoSpeed(){return parseFloat(e.defaultVideoSpeed)}static formatSpeedText(e){if(e===1){return"倍数"}return Math.trunc(e)===e?`${e}.0x`:`${e}x`}static getSpeedFromSetting(){for(const[t,i]of Object.entries(e.rememberVideoSpeedList)){if(i.some((e=>e===unsafeWindow.aid))){return parseFloat(t)}}}static rememberSpeed(t,i,a=false){let s=-1;for(const t of Object.values(e.rememberVideoSpeedList)){s=t.indexOf(i);if(s!==-1){t.splice(s,1);break}}if(s===-1&&!a){return}if(!e.rememberVideoSpeedList[t]){e.rememberVideoSpeedList[t]=[]}e.rememberVideoSpeedList[t].push(i);e.rememberVideoSpeedList=e.rememberVideoSpeedList}constructor(e,t,s){i(this,"_containerElement",void 0);i(this,"_menuListElement",void 0);i(this,"_nameBtn",void 0);i(this,"_videoElement",void 0);i(this,"_nativeSpeedVal",1);this._containerElement=e;this._videoElement=t;this._nativeSpeedVal=s;this._nameBtn=this._containerElement.querySelector(`.${a.classNameMap.speedNameBtn}`);this._menuListElement=this._containerElement.querySelector(`.${a.classNameMap.speedMenuList}`)}get playbackRate(){return this._videoElement.playbackRate}get nativeSpeedVal(){return this._nativeSpeedVal}getSpeedMenuItem(e){if(e){return this._menuListElement.querySelector(`.${a.classNameMap.speedMenuItem}[data-value="${e}"]`)}return this._menuListElement.querySelector(`.${a.classNameMap.speedMenuItem}.${a.classNameMap.active}`)}observe(){Observer.all(this._menuListElement,(t=>{t.forEach((t=>{const i=t.target;if(!i.classList.contains(a.classNameMap.active)){return}const s=parseFloat(i.dataset.value||"1");this._containerElement.dispatchEvent(new CustomEvent("changed",{detail:{speed:s}}));if(a.nativeSupportedRates.includes(s)){this._nativeSpeedVal=s;this._containerElement.dispatchEvent(new CustomEvent("native-speed-changed",{detail:{speed:this._nativeSpeedVal}}))}if(e.extendVideoSpeed&&a.nativeSupportedRates.includes(s)){var n;(n=this._menuListElement.querySelector(`.${a.classNameMap.speedMenuItem}.extended.${a.classNameMap.active}`))===null||n===void 0?void 0:n.classList.remove(a.classNameMap.active)}if(!unsafeWindow.aid){throw"aid is undefined"}if(e.useDefaultVideoSpeed){if(e.rememberVideoSpeed){a.rememberSpeed(s,unsafeWindow.aid,s!==a.getDefaultVideoSpeed())}else{e.defaultVideoSpeed=s.toString()}}}))}))}extendMenuItem(){this._menuListElement.addEventListener("click",(e=>{const t=e.target;const i=parseFloat(t.dataset.value);if(e.target.classList.contains("extended")){this.setUnsafeVideoSpeed(i)}if(a.extendedSupportedRates.includes(this.playbackRate)&&this._nativeSpeedVal===i){this.forceUpdate(i)}}));for(const e of a.extendedSupportedRates){const t=document.createElement("li");t.innerText=a.formatSpeedText(e);t.classList.add(a.classNameMap.speedMenuItem,"extended");t.dataset.value=e.toString();this._menuListElement.prepend(t)}}reset(){this.setUnsafeVideoSpeed(1)}setVideoSpeed(e){if(a.supportedRates.includes(e)){this.getSpeedMenuItem(e).click()}}setUnsafeVideoSpeed(e){if(a.nativeSupportedRates.includes(e)){this.getSpeedMenuItem(e).click()}else{this.forceUpdate(e)}}forceUpdate(e){var t,i;(t=this._menuListElement.querySelector(`.${a.classNameMap.speedMenuItem}[data-value="${this.playbackRate}"]`))===null||t===void 0?void 0:t.classList.remove(a.classNameMap.active);(i=this._menuListElement.querySelector(`.${a.classNameMap.speedMenuItem}[data-value="${e}"]`))===null||i===void 0?void 0:i.classList.add(a.classNameMap.active);this._videoElement.playbackRate=e;this._containerElement.classList.remove(a.classNameMap.show);this._nameBtn.innerText=a.formatSpeedText(e)}}i(a,"classNameMap",{speedMenuList:"bilibili-player-video-btn-speed-menu",speedMenuItem:"bilibili-player-video-btn-speed-menu-list",speedNameBtn:"bilibili-player-video-btn-speed-name",speedContainer:"bilibili-player-video-btn-speed",active:"bilibili-player-active",show:"bilibili-player-speed-show",video:"bilibili-player-video"});i(a,"nativeSupportedRates",[.5,.75,1,1.25,1.5,2]);i(a,"extendedSupportedRates",[2.5,3]);i(a,"supportedRates",e.extendVideoSpeed?[...a.nativeSupportedRates,...a.extendedSupportedRates]:a.nativeSupportedRates);if(e.useDefaultVideoSpeed||e.extendVideoSpeed){let t=1;Observer.videoChange((async()=>{const i=await SpinQuery.select(`.${a.classNameMap.speedContainer}`);const s=await SpinQuery.select(`.${a.classNameMap.video} video`);if(!i){throw"speed container element not found!"}if(!s){throw"video element not found!"}const n=new a(i,s,t);n.observe();if(e.extendVideoSpeed){n.extendMenuItem();i.addEventListener("native-speed-changed",(e=>{t=e.detail.speed}))}setTimeout((()=>{e.useDefaultVideoSpeed&&n.setVideoSpeed(e.rememberVideoSpeed&&a.getSpeedFromSetting()||a.getDefaultVideoSpeed())}),100)}))}return{export:{VideoSpeedController:a}}})();
|
||||||
1
min/disable-danmaku-highlights.min.js
vendored
Normal file
1
min/disable-danmaku-highlights.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(n,a)=>a.toggleStyle(`\n.b-danmaku-high .b-danmaku-high-icon {\n display: none !important;\n}\n.b-danmaku-high .b-danmaku-high-text {\n margin: 0 !important;\n text-shadow: inherit;\n}\n.b-danmaku-high {\n display: block !important;\n padding: 0 !important;\n line-height: 1.125 !important;\n}\n`.trim(),"disable-danmaku-highlights"))();
|
||||||
1
min/disable-feeds-details.min.js
vendored
Normal file
1
min/disable-feeds-details.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{let n=true;const i="disable-feeds-details-style";const s=`\n.card[data-did] .content { cursor: text }\n.card[data-did] .content .details {\n font-size: 12px;\n opacity: 0.6;\n cursor: pointer;\n display: inline-block;\n}\n`;e.applyImportantStyleFromText(".card[data-did] .content .details { display: none }","disable-feeds-details-init-style");const o=()=>e.applyImportantStyleFromText(s,i);let a=false;(async()=>{const{forEachFeedsCard:t,supportedUrls:i}=await e.importAsync("feeds-apis");a=i.some((t=>document.URL.includes(t)));if(!a){return}o();const s=t=>{const e=t.element;e.addEventListener("click",(t=>{if(t.ctrlKey||!n){return}const i=dqa(e,".content");const s=t.target;if(s.hasAttribute("click-title")){return}const o=dqa(e,".im-popup");if(o.some((t=>t.contains(s)))){return}if(i.some((t=>t===s||t.contains(s)))){t.stopImmediatePropagation()}}),{capture:true});const i=dq(e,".post-content");if(!i){return}const s=[".video-container",".bangumi-container",".media-list",".article-container"].some((t=>dq(i,t)));if(s){return}if(i.classList.contains("repost")){const t=dq(i,".content");if(!t){return}const e=document.createElement("div");e.classList.add("details");e.setAttribute("click-title","详情");e.innerHTML=`\n 详情<i class="mdi mdi-chevron-right" click-title></i>\n`;t.insertAdjacentElement("beforeend",e)}};t({added:s})})();return{reload:()=>{if(a){o();n=true}},unload:()=>{if(a){const t=document.getElementById(i);t&&t.remove();n=false}}}})();
|
||||||
1
min/disable-profile-popup.min.js
vendored
Normal file
1
min/disable-profile-popup.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{let i=false;const r=()=>{if(document.URL.replace(location.search,"")==="https://t.bilibili.com/"){if(i){return}(async()=>{const t=await SpinQuery.select(".live-up-list");if(t!==null){t.addEventListener("mouseenter",(t=>{if(e.fixedSidebars||e.extendFeedsLive){t.stopImmediatePropagation()}}),{capture:true});i=true}})()}};return{export:{disableProfilePopup:r}}})();
|
||||||
1
min/disable-up-danmaku-style.min.js
vendored
Normal file
1
min/disable-up-danmaku-style.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(n,a)=>a.toggleStyle(`\n.b-danmaku-up .b-danmaku-up-tip {\n display: none !important;\n}\n.b-danmaku-up {\n padding: 0 !important;\n line-height: 1.125 !important;\n background-color: transparent !important;\n border-radius: 0 !important;\n}\n`.trim(),"disable-up-danmaku-style"))();
|
||||||
1
min/double-click-fullscreen.min.js
vendored
Normal file
1
min/double-click-fullscreen.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(i,e)=>{const l=()=>{const e=["https://www.bilibili.com/bangumi/","https://www.bilibili.com/video/"];if(!e.some((i=>document.URL.startsWith(i)))){return}if(i.touchVideoPlayer&&i.touchVideoPlayerDoubleTapControl){Toast.info("在开启了<span>播放器触摸支持-启用双击控制</span>后, <span>双击全屏</span>功能将无效.","提示");i.doubleClickFullscreen=false;return}Observer.videoChange((async()=>{await SpinQuery.unsafeJquery();const e=await SpinQuery.condition((()=>dq(".bilibili-player-area")),(i=>i!==null&&unsafeWindow.$(".bilibili-player-video").data("events")));if(e===null){return}const l="double-click-fullscreen";if(!e.classList.contains(l)){e.classList.add(l);const n=unsafeWindow.$(".bilibili-player-video");const s=i.doubleClickFullscreenPreventSingleClick?n.data("events").click[0].handler:()=>{};const c=new DoubleClickEvent((()=>dq(".bilibili-player-video-btn-fullscreen").click()),(i=>s(i)));if(i.doubleClickFullscreenPreventSingleClick){n.unbind("click")}c.bind(n[0])}}))};l()})();
|
||||||
1
min/download-audio.min.js
vendored
Normal file
1
min/download-audio.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{class n{constructor(){this.sid=null;this.progress=null}async getDownloadUrl(){const e=`https://www.bilibili.com/audio/music-service-c/web/url?sid=${this.sid}&privilege=2&quality=2`;const t=await Ajax.getJsonWithCredentials(e);if(t.code===0){return t.data.cdns.shift()}else{logError("获取下载链接失败, 请确保当前账号有下载权限.","下载音频",1e4);return null}}async download(){const e=await this.getDownloadUrl();return new Promise(((t,n)=>{const s=new XMLHttpRequest;s.open("GET",e);s.responseType="blob";s.addEventListener("load",(()=>t(s.response)));s.addEventListener("error",(()=>n(s.status)));s.addEventListener("progress",(e=>this.progress&&this.progress(100*e.loaded/e.total)));s.send()}))}}const s="下载音频";return{export:n,widget:{content:`\n<button\n disabled\n class="gui-settings-flat-button"\n id="download-audio">\n<i class="icon-download"></i>\n<span>${s}</span>\n<a id="download-audio-link" style="display: none"></a>\n</button>`,condition:()=>document.URL.includes("bilibili.com/audio"),success:async()=>{await SpinQuery.select((()=>document.querySelector("#app")));const e=document.querySelector("#download-audio");const t=e.querySelector("span");const o=new n;o.progress=e=>{t.innerHTML=`${Math.round(e)}%`};const i=document.querySelector("#download-audio-link");e.addEventListener("click",(async e=>{if(o.sid===null||e.target===i){return}const n=await o.download();t.innerHTML=s;const r=i.getAttribute("href");if(r){URL.revokeObjectURL(r)}i.setAttribute("href",URL.createObjectURL(n));const d=(()=>{const e=document.querySelector(".song-title");if(e){return e.getAttribute("title")}else{return"神秘音频"}})();i.setAttribute("download",d+".m4a");i.click()}));Observer.childList("#app",(()=>{const t=document.URL.match(/bilibili\.com\/audio\/au([\d]+)/);if(t&&t[1]){e.disabled=false;o.sid=t[1]}else{e.disabled=true}}))}}}})();
|
||||||
1
min/download-danmaku.min.js
vendored
Normal file
1
min/download-danmaku.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(n,t)=>{const{getFriendlyTitle:e}=t.import("title");const{DanmakuConverter:a,XmlDanmaku:o}=t.import("danmaku-converter");const s=async()=>{const n=e();const t={font:"微软雅黑",alpha:.4,duration:n=>{switch(n.type){case 4:case 5:return 4;default:return 6}},blockTypes:[7,8],resolution:{x:1920,y:1080},bottomMarginPercent:.15,bold:false};let a={...t,title:n};try{await loadDanmakuSettingsPanel();const n=localStorage.getItem("bilibili_player_settings");if(n){const t=JSON.parse(n);const e=(n,e)=>_.get(t,`setting_config.${n}`,e);a.blockTypes=(()=>{const n=[];const e={scroll:[1,2,3],top:[5],bottom:[4],color:["color"]};for(const[a,o]of Object.entries(e)){if(_.get(t,`block.type_${a}`,true)===false){n.push(...o)}}return n.concat(7,8)})();a.bold=e("bold",false);a.alpha=_.clamp(1-parseFloat(e("opacity","0.4")),0,1);const o=1.4-.4*e("fontsize",1);a.resolution={x:Math.round(1920*o),y:Math.round(1080*o)};a.duration=(()=>{const n=18-3*e("speedplus",0);return t=>{switch(t.type){case 4:case 5:return 4;default:return n}}})();const s=e("danmakuArea",0);a.bottomMarginPercent=s>=100?0:s/100;if(a.bottomMarginPercent===0&&e("preventshade",false)){a.bottomMarginPercent=.15}const c=_.get(t,"block.list",[]);a.blockFilter=n=>{for(const t of c){if(!t.s){continue}switch(t.t){case"keyword":{if(n.content.includes(t.v)){return false}break}case"regexp":{if(new RegExp(t.v).test(n.content)){return false}break}case"user":{if(n.userHash===t.v){return false}break}}}return true}}else{console.warn("[弹幕转换] 未找到播放器设置");a={...a,...t}}a.font=dq(".bilibili-player-video-danmaku-setting-right-font .bui-select-result").innerText}catch(n){logError(n);a={...a,...t}}for(const[n,e]of Object.entries(a)){if(e===undefined||e===null){console.warn("danmaku config invalid for key",n,", value =",e);a[n]=t[e]}}console.log(a);return a};async function c(n){const t=new a(await s());const e=t.xmlStringToAssDocument(n);return e.generateAss()}const r=async n=>{const t=new a(await s());const e=t.xmlDanmakuToAssDocument(n.xmlDanmakus.map((n=>new o(n))));return e.generateAss()};async function i(n){const c=e();let r;const i=(unsafeWindow||window).aid;const l=parseInt((unsafeWindow||window).cid);const{DanmakuInfo:u,JsonDanmaku:d}=await t.importAsync("video-info");switch(n){case"xml":{const n=new u(l);await n.fetchInfo();r=new Blob([n.rawXML],{type:"text/xml"});break}case"json":{const n=await new d(i,l).fetchInfo();r=new Blob([JSON.stringify(n.jsonDanmakus)],{type:"text/json"});break}case"ass":{console.log("start ass");const n=await new d(i,l).fetchInfo();console.log("get json danmaku");const t=new a(await s());console.log("get config");const e=n.xmlDanmakus.map((n=>new o(n)));console.log("map");const c=t.xmlDanmakuToAssDocument(e);console.log("convert");r=new Blob([c.generateAss()],{type:"text/ass"});break}}const f=URL.createObjectURL(r);const m=dq("#danmaku-link");const p=m.getAttribute("href");if(p){URL.revokeObjectURL(p)}m.setAttribute("download",`${c}.${n}`);m.setAttribute("href",f);m.click()}return{export:{downloadDanmaku:i,convertToAss:c,convertToAssFromJson:r,getUserDanmakuConfig:s},widget:{content:`\n<a id="danmaku-link" style="display:none"></a>\n<button\n class="gui-settings-flat-button"\n id="download-danmaku-xml">\n<i class="icon-danmaku"></i>\n<span><span>下载弹幕</span><span>(XML)</span></span>\n</button>\n<button\n class="gui-settings-flat-button"\n id="download-danmaku-json">\n<i class="icon-danmaku"></i>\n<span><span>下载弹幕</span><span>(JSON)</span></span>\n</button>\n<button\n class="gui-settings-flat-button"\n id="download-danmaku-ass">\n<i class="icon-danmaku"></i>\n<span><span>下载弹幕</span><span>(ASS)</span></span>\n</button>\n`,condition:async()=>{let n=await SpinQuery.select((()=>(unsafeWindow||window).cid));return Boolean(n)},success:()=>{const n=["xml","json","ass"];const t=n.map((n=>dq(`#download-danmaku-${n}`)));const e=(n,e)=>{n.addEventListener("click",(async()=>{try{t.forEach((n=>n.disabled=true));await i(e)}catch(n){logError(n)}finally{t.forEach((n=>n.disabled=false))}}))};n.forEach(((n,a)=>{e(t[a],n)}))}}}})();
|
||||||
1
min/download-live-records.min.js
vendored
Normal file
1
min/download-live-records.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(o,t)=>{const e=()=>document.URL.replace(location.search,"").match(/https:\/\/live\.bilibili\.com\/record\/(.+)/);return{widget:{content:`\n<button class="gui-settings-flat-button" style="position: relative; z-index: 100;" id="download-live-records">\n<i class="icon-download"></i>\n<span>下载录像</span>\n</button>`,condition:async()=>{const o=e();return Boolean(o)},success:()=>{const o=dq("#download-live-records");o.addEventListener("click",(async()=>{try{o.disabled=true;const t=e()[1];const n=await Ajax.getJson(`https://api.live.bilibili.com/xlive/web-room/v1/record/getLiveRecordUrl?rid=${t}&platform=html5`);if(n.code!==0){logError(new Error(`获取录像链接失败: ${n.message}`));return}const i=n.data.list.map((o=>o.url));Toast.success(i.map((o=>`<a class="download-link" target="_blank" href="${o}">${o}</a>`)).join("\n"),"下载录像")}catch(o){logError(o)}finally{o.disabled=false}}))}}}})();
|
||||||
1
min/download-package.min.js
vendored
Normal file
1
min/download-package.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(e,t)=>{function n(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}class a{constructor(){n(this,"entries",[])}download(e,t){const n=document.createElement("a");const i=URL.createObjectURL(t);if(a.lastPackageUrl){URL.revokeObjectURL(a.lastPackageUrl)}a.lastPackageUrl=i;n.setAttribute("href",i);n.setAttribute("download",escapeFilename(e));document.body.appendChild(n);n.click();n.remove()}add(e,t,n={}){if(t===null||t===undefined){return}this.entries.push({name:escapeFilename(e),data:t,options:n})}async blob(){if(this.entries.length===0){return null}if(this.entries.length===1){const e=this.entries[0].data;return typeof e==="string"?new Blob([e]):e}const e=new JSZip;this.entries.forEach((({name:t,data:n})=>{e.file(t,n)}));return await e.generateAsync({type:"blob"})}async emit(t){if(this.entries.length===0){return}if(!t||this.entries.length===1){t=this.entries[0].name}if(e.downloadPackageEmitMode==="分别下载"&&this.entries.length>1){await Promise.all(this.entries.map((e=>a.single(e.name,e.data,e.options))));return}console.log("[DownloadPackage]",{filename:t,files:this.entries.map((e=>e.name))});const n=await this.blob();if(!n){return}return this.download(t,n)}static async single(e,t,n={}){const i=new a;i.add(e,t,n);return await i.emit()}}n(a,"lastPackageUrl","");return{export:{DownloadPackage:a}}})();
|
||||||
1
min/download-subtitle.min.js
vendored
Normal file
1
min/download-subtitle.min.js
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
(()=>(t,e)=>{let n;const s=(t,e)=>{const s=document.createElement("a");const i=URL.createObjectURL(new Blob([t]));if(n){URL.revokeObjectURL(n)}n=i;s.setAttribute("href",i);s.setAttribute("download",escapeFilename(e));document.body.appendChild(s);s.click();s.remove()};const i=async()=>{const{getFriendlyTitle:t}=await e.importAsync("title");const{SubtitleConverter:n,SubtitleSize:s,SubtitleLocation:i}=await e.importAsync("subtitle-converter");const o=await loadSubtitleSettingsPanel();if(!o){logError("未找到字幕设置");return[n.defaultConfig,""]}const a=o.querySelector(".bilibili-player-video-subtitle-setting-lan .bui-select-result").innerHTML;const l=t(true);const c=o.querySelector(".bilibili-player-video-subtitle-setting-fontsize .bui-thumb");const r=parseFloat(c.style.transform.replace(/translateX\(([\d\.]+)/,"$1"));const u={214:s.VeryLarge,163.5:s.Large,107:s.Medium,50.5:s.Small,0:s.VerySmall};const b=u[r];const d=o.querySelector(".bilibili-player-video-subtitle-setting-color .bui-select-result span:first-child");const p=d.getAttribute("style").match(/background:[ ]*(.+);/)[1];const g=o.querySelector(".bilibili-player-video-subtitle-setting-opacity .bui-bar");const f=parseFloat(g.style.transform.replace(/scaleX\(([\d\.]+)/,"$1"));const y=dq(".subtitle-position");const m={bc:i.BottomCenter,bl:i.BottomLeft,br:i.BottomRight,tc:i.TopCenter,tl:i.TopLeft,tr:i.TopRight};const w=Object.entries(m).filter((([t])=>y.classList.contains(`subtitle-position-${t}`))).map((([,t])=>t)).shift();const S=dq("video");const h={title:l,height:S.videoHeight,width:S.videoWidth,color:p,location:w,opacity:f,size:b,boxPadding:1,boxMargin:32};return[h,a]};const o=async(t,n)=>{const{VideoInfo:s}=await e.importAsync("video-info");const i=new s(t);i.cid=typeof n==="string"?parseInt(n):n;await i.fetchInfo();return i.subtitles};return{widget:{content:`\n<button class="gui-settings-flat-button" id="download-subtitle-json">\n<i class="icon-cc-subtitles"></i>\n<span><span>下载字幕</span><span>(JSON)</span></span>\n</button>\n<button class="gui-settings-flat-button" id="download-subtitle-ass">\n<i class="icon-cc-subtitles"></i>\n<span><span>下载字幕</span><span>(ASS)</span></span>\n</button>\n`,condition:videoCondition,success:()=>{const t=dq("#download-subtitle-json");const n=dq("#download-subtitle-ass");const a=[t,n];const l=(t,n)=>{t.addEventListener("click",(async()=>{try{a.forEach((t=>t.disabled=true));const{aid:t,cid:l}=unsafeWindow;if(!t||!l){logError("未找到视频AID和CID");return}const c=await o(t,l);if(c.length===0){Toast.info("当前视频没有字幕.","下载字幕",3e3);return}const[r,u]=await i();const b=c.find((t=>t.language===u))||c[0];const d=await Ajax.getJson(b.url);const p=d.body;if(n){const{SubtitleConverter:t}=await e.importAsync("subtitle-converter");const n=new t(r);const i=await n.convertToAss(p);s(i,r.title+".ass")}else{s(JSON.stringify(p),r.title+".json")}}catch(t){if(typeof t.message==="string"&&t.message.includes("啥都木有")){logError(new Error(`未能获取字幕文件, 请确保当前视频是正常可播放的视频, 而非通过破解/换源等手段达成播放.\n${t.message}`))}else{logError(t)}}finally{a.forEach((t=>t.disabled=false))}}))};l(t,false);l(n,true)}},export:{getSubtitleConfig:i,getSubtitleList:o}}})();
|
||||||
1
min/download-video.min.css
vendored
Normal file
1
min/download-video.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
2
min/download-video.min.html
Normal file
2
min/download-video.min.html
Normal file
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user