mirror of
https://github.com/BluemediaGER/muse.git
synced 2024-11-23 09:15:29 +01:00
Don't silently fail
This commit is contained in:
parent
dcdec2d49e
commit
65dd43ac68
|
@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
### Changed
|
||||||
|
- Track lookups no longer fail silently (error is returned and logged)
|
||||||
|
|
||||||
## [0.3.1] - 2022-01-06
|
## [0.3.1] - 2022-01-06
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
|
@ -43,7 +43,6 @@ export default class {
|
||||||
}
|
}
|
||||||
|
|
||||||
async youtubeVideoSearch(query: string): Promise<QueuedSongWithoutChannel | null> {
|
async youtubeVideoSearch(query: string): Promise<QueuedSongWithoutChannel | null> {
|
||||||
try {
|
|
||||||
const {items} = await this.ytsrQueue.add(async () => this.cache.wrap(
|
const {items} = await this.ytsrQueue.add(async () => this.cache.wrap(
|
||||||
ytsr,
|
ytsr,
|
||||||
query,
|
query,
|
||||||
|
@ -68,14 +67,10 @@ export default class {
|
||||||
throw new Error('No video found.');
|
throw new Error('No video found.');
|
||||||
}
|
}
|
||||||
|
|
||||||
return await this.youtubeVideo(firstVideo.id);
|
return this.youtubeVideo(firstVideo.id);
|
||||||
} catch (_: unknown) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async youtubeVideo(url: string): Promise<QueuedSongWithoutChannel | null> {
|
async youtubeVideo(url: string): Promise<QueuedSongWithoutChannel | null> {
|
||||||
try {
|
|
||||||
const videoDetails = await this.cache.wrap(
|
const videoDetails = await this.cache.wrap(
|
||||||
this.youtube.videos.get,
|
this.youtube.videos.get,
|
||||||
cleanUrl(url),
|
cleanUrl(url),
|
||||||
|
@ -92,9 +87,6 @@ export default class {
|
||||||
playlist: null,
|
playlist: null,
|
||||||
isLive: videoDetails.snippet.liveBroadcastContent === 'live',
|
isLive: videoDetails.snippet.liveBroadcastContent === 'live',
|
||||||
};
|
};
|
||||||
} catch (_: unknown) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async youtubePlaylist(listId: string): Promise<QueuedSongWithoutChannel[]> {
|
async youtubePlaylist(listId: string): Promise<QueuedSongWithoutChannel[]> {
|
||||||
|
@ -280,10 +272,6 @@ export default class {
|
||||||
}
|
}
|
||||||
|
|
||||||
private async spotifyToYouTube(track: SpotifyApi.TrackObjectSimplified, _: QueuedPlaylist | null): Promise<QueuedSongWithoutChannel | null> {
|
private async spotifyToYouTube(track: SpotifyApi.TrackObjectSimplified, _: QueuedPlaylist | null): Promise<QueuedSongWithoutChannel | null> {
|
||||||
try {
|
return this.youtubeVideoSearch(`"${track.name}" "${track.artists[0].name}"`);
|
||||||
return await this.youtubeVideoSearch(`"${track.name}" "${track.artists[0].name}"`);
|
|
||||||
} catch (_: unknown) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue