mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
Fix BiliPlus in deleted videos
This commit is contained in:
parent
dae4b4fe4f
commit
bef054a970
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
min/biliplus-redirect.min.js
vendored
2
min/biliplus-redirect.min.js
vendored
@ -1 +1 @@
|
|||||||
(()=>{return(i,e)=>{const n=`www.biliplus.com`;const c=["bilibili.com/video/","bilibili.com/bangumi/play","bilibili.com/bangumi/media","space.bilibili.com"];return{widget:{condition:()=>{return c.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=e=>{if(document.URL!==e){i.href=e}else{i.disabled=true}};if(location.host==="space.bilibili.com"){const i=document.URL.replace("space.bilibili.com/",`${n}/space/`);e(i)}else if(document.URL.includes("/bangumi/")){Observer.videoChange(()=>{const i=unsafeWindow.aid||document.querySelector(".av-link,.info-sec-av").innerText.replace(/[aAvV]/g,"");const c=`https://${n}/video/av${i}/`;e(c)})}else{Observer.videoChange(()=>{const i=document.URL.replace(window.location.host,n);e(i)})}}}}}})();
|
(()=>{return(i,e)=>{const n=`www.biliplus.com`;const c=["bilibili.com/video/","bilibili.com/bangumi/play","bilibili.com/bangumi/media","space.bilibili.com"];return{widget:{condition:()=>{return c.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 c=e=>{if(document.URL!==e){i.href=e}else{i.href="";i.disabled=true}};if(location.host==="space.bilibili.com"){const i=document.URL.replace("space.bilibili.com/",`${n}/space/`);c(i)}else if(document.URL.includes("/bangumi/")){Observer.videoChange(()=>{const i=document.querySelector(".av-link,.info-sec-av");const e=unsafeWindow.aid||i.innerText.replace(/[aAvV]/g,"");const o=`https://${n}/video/av${e}/`;c(o)})}else if(e.test(document.URL)){const[,i]=document.URL.match(e);c(`https://${n}/video/${i}/`)}else{Observer.videoChange(()=>{const i=document.URL.replace(window.location.host,n);c(i)})}}}}}})();
|
||||||
@ -15,7 +15,7 @@
|
|||||||
"bangumi-timeline.vue.min.js": "3A02A24CA45655763C3A568F618A10F4009747FB67FCD002EAEBE256F03CEDC4",
|
"bangumi-timeline.vue.min.js": "3A02A24CA45655763C3A568F618A10F4009747FB67FCD002EAEBE256F03CEDC4",
|
||||||
"batch-download.min.js": "73D9904D157C9F105B0C10329447F5F47CD8ACAB0944A083110520A4E847412C",
|
"batch-download.min.js": "73D9904D157C9F105B0C10329447F5F47CD8ACAB0944A083110520A4E847412C",
|
||||||
"batch-warning.min.js": "C4D35814CBCFAD0EFB166D0F34B6F37E034DC59E09719BC3656520120E493475",
|
"batch-warning.min.js": "C4D35814CBCFAD0EFB166D0F34B6F37E034DC59E09719BC3656520120E493475",
|
||||||
"biliplus-redirect.min.js": "54F389F88D24D47DAFEB9603CABFD1C56E13E5CBC46B0DA67EE439A7E913B330",
|
"biliplus-redirect.min.js": "45D9E9CAE332FE8929863FE987DDAFEE239931254BCD82B46DD2D887B6277A5B",
|
||||||
"blackboard.min.js": "5F50F1DDA203AC0C54AB52868881AA43B22007EAEF042618B1A093BBAFFDEE5B",
|
"blackboard.min.js": "5F50F1DDA203AC0C54AB52868881AA43B22007EAEF042618B1A093BBAFFDEE5B",
|
||||||
"blackboard.vue.min.js": "65C08D7C295519E833C1CE001E583726410603A482B3036D55F0186ADC5BE1EF",
|
"blackboard.vue.min.js": "65C08D7C295519E833C1CE001E583726410603A482B3036D55F0186ADC5BE1EF",
|
||||||
"blur-video-control.min.css": "B72FA7AD198ED1C9A9620A83881441F96F9FF3083ED12203A324B9753A7CCFFD",
|
"blur-video-control.min.css": "B72FA7AD198ED1C9A9620A83881441F96F9FF3083ED12203A324B9753A7CCFFD",
|
||||||
|
|||||||
BIN
min/bundle.zip
BIN
min/bundle.zip
Binary file not shown.
@ -192,7 +192,13 @@ export const matchPattern = (str, pattern) => {
|
|||||||
}
|
}
|
||||||
export const playerReady = () => {
|
export const playerReady = () => {
|
||||||
return SpinQuery.condition(
|
return SpinQuery.condition(
|
||||||
() => parseInt(dq('.video-data .dm').textContent),
|
() => {
|
||||||
|
const danmakuInfo = dq('.video-data .dm')
|
||||||
|
if (danmakuInfo) {
|
||||||
|
return parseInt(danmakuInfo.textContent)
|
||||||
|
}
|
||||||
|
return NaN
|
||||||
|
},
|
||||||
it => !Number.isNaN(it),
|
it => !Number.isNaN(it),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,11 +17,13 @@ export default {
|
|||||||
<span>转到BiliPlus</span>
|
<span>转到BiliPlus</span>
|
||||||
</a>`,
|
</a>`,
|
||||||
success: () => {
|
success: () => {
|
||||||
const button = document.querySelector('#biliplus-redirect')
|
const button = document.querySelector('#biliplus-redirect') as HTMLAnchorElement & HTMLButtonElement
|
||||||
const setUrl = url => {
|
const videoRegex = /\/video\/(av[\d]+|BV.+)/i
|
||||||
|
const setUrl = (url: string) => {
|
||||||
if (document.URL !== url) {
|
if (document.URL !== url) {
|
||||||
button.href = url
|
button.href = url
|
||||||
} else {
|
} else {
|
||||||
|
button.href = ''
|
||||||
button.disabled = true
|
button.disabled = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -32,11 +34,16 @@ export default {
|
|||||||
}
|
}
|
||||||
else if (document.URL.includes('/bangumi/')) {
|
else if (document.URL.includes('/bangumi/')) {
|
||||||
Observer.videoChange(() => {
|
Observer.videoChange(() => {
|
||||||
const aid = unsafeWindow.aid || document.querySelector('.av-link,.info-sec-av').innerText.replace(/[aAvV]/g, '')
|
const bangumiAid = document.querySelector('.av-link,.info-sec-av') as HTMLElement
|
||||||
|
const aid = unsafeWindow.aid || bangumiAid.innerText.replace(/[aAvV]/g, '')
|
||||||
const url = `https://${host}/video/av${aid}/`
|
const url = `https://${host}/video/av${aid}/`
|
||||||
setUrl(url)
|
setUrl(url)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
else if (videoRegex.test(document.URL)) {
|
||||||
|
const [, id] = document.URL.match(videoRegex)!
|
||||||
|
setUrl(`https://${host}/video/${id}/`)
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
Observer.videoChange(() => {
|
Observer.videoChange(() => {
|
||||||
const url = document.URL.replace(window.location.host, host)
|
const url = document.URL.replace(window.location.host, host)
|
||||||
Loading…
Reference in New Issue
Block a user