Update search module and add error handling for more videos
This commit is contained in:
parent
460934752c
commit
47a493e368
|
@ -18590,9 +18590,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ytsr": {
|
"ytsr": {
|
||||||
"version": "2.0.0-alpha.3",
|
"version": "2.0.0-alpha.4",
|
||||||
"resolved": "https://registry.npmjs.org/ytsr/-/ytsr-2.0.0-alpha.3.tgz",
|
"resolved": "https://registry.npmjs.org/ytsr/-/ytsr-2.0.0-alpha.4.tgz",
|
||||||
"integrity": "sha512-NELl/ubEnBxxU/AofsXu8p6T2BArf/ROLOocblTgeSr7oNPPn6jPv57MCT4cIWJdzxWiHcdl6BqrypoIPejfmw==",
|
"integrity": "sha512-iEXOu0kFwxr9O+mpG3tnZa6TovEOZ92N0rNmyZFEv5EdcFg9FWH8MEUJVMExCFhSYu1rSFv5napQCzDCozizdg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"html-entities": "^1.3.1",
|
"html-entities": "^1.3.1",
|
||||||
"miniget": "^4.1.0"
|
"miniget": "^4.1.0"
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
"yt-xml2vtt": "^1.1.3",
|
"yt-xml2vtt": "^1.1.3",
|
||||||
"ytdl-core": "^4.1.1",
|
"ytdl-core": "^4.1.1",
|
||||||
"ytpl": "^2.0.0-alpha.3",
|
"ytpl": "^2.0.0-alpha.3",
|
||||||
"ytsr": "^2.0.0-alpha.3"
|
"ytsr": "^2.0.0-alpha.4"
|
||||||
},
|
},
|
||||||
"description": "A private YouTube client",
|
"description": "A private YouTube client",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|
|
@ -197,6 +197,10 @@ export default Vue.extend({
|
||||||
},
|
},
|
||||||
|
|
||||||
handleSubscription: function () {
|
handleSubscription: function () {
|
||||||
|
if (this.channelId === '') {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
const currentProfile = JSON.parse(JSON.stringify(this.profileList[this.activeProfile]))
|
const currentProfile = JSON.parse(JSON.stringify(this.profileList[this.activeProfile]))
|
||||||
const primaryProfile = JSON.parse(JSON.stringify(this.profileList[0]))
|
const primaryProfile = JSON.parse(JSON.stringify(this.profileList[0]))
|
||||||
|
|
||||||
|
|
|
@ -195,6 +195,30 @@ export default Vue.extend({
|
||||||
.dispatch('ytGetVideoInformation', this.videoId)
|
.dispatch('ytGetVideoInformation', this.videoId)
|
||||||
.then(async result => {
|
.then(async result => {
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|
||||||
|
const playabilityStatus = result.player_response.playabilityStatus
|
||||||
|
if (playabilityStatus.status !== 'OK') {
|
||||||
|
const errorScreen = playabilityStatus.errorScreen.playerErrorMessageRenderer
|
||||||
|
const reason = errorScreen.reason.simpleText
|
||||||
|
let subReason
|
||||||
|
let skipIndex
|
||||||
|
errorScreen.subreason.runs.forEach((message, index) => {
|
||||||
|
if (index !== skipIndex) {
|
||||||
|
if (message.text.match(/<a.*>/)) {
|
||||||
|
skipIndex = index + 1
|
||||||
|
} else if (!message.text.match(/<\/a>/)) {
|
||||||
|
if (typeof subReason === 'undefined') {
|
||||||
|
subReason = message.text
|
||||||
|
} else {
|
||||||
|
subReason = subReason + message.text
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
throw new Error(`${reason}: ${subReason}`)
|
||||||
|
}
|
||||||
|
|
||||||
this.videoTitle = result.videoDetails.title
|
this.videoTitle = result.videoDetails.title
|
||||||
this.videoViewCount = parseInt(
|
this.videoViewCount = parseInt(
|
||||||
result.player_response.videoDetails.viewCount,
|
result.player_response.videoDetails.viewCount,
|
||||||
|
@ -457,6 +481,10 @@ export default Vue.extend({
|
||||||
.then(result => {
|
.then(result => {
|
||||||
console.log(result)
|
console.log(result)
|
||||||
|
|
||||||
|
if (result.error) {
|
||||||
|
throw new Error(result.error)
|
||||||
|
}
|
||||||
|
|
||||||
this.videoTitle = result.title
|
this.videoTitle = result.title
|
||||||
this.videoViewCount = result.viewCount
|
this.videoViewCount = result.viewCount
|
||||||
if (this.hideVideoLikesAndDislikes) {
|
if (this.hideVideoLikesAndDislikes) {
|
||||||
|
|
Loading…
Reference in New Issue