Handle album artist play
This commit is contained in:
parent
38a4e1b749
commit
185175aa89
1 changed files with 45 additions and 47 deletions
|
@ -26,28 +26,29 @@ export const useHandlePlayQueueAdd = () => {
|
||||||
let songs = null;
|
let songs = null;
|
||||||
|
|
||||||
if (options.byItemType) {
|
if (options.byItemType) {
|
||||||
|
let songsList;
|
||||||
|
let queryFilter: any;
|
||||||
|
let queryKey: any;
|
||||||
if (options.byItemType.type === LibraryItem.ALBUM) {
|
if (options.byItemType.type === LibraryItem.ALBUM) {
|
||||||
// const albumDetail = await queryClient.fetchQuery(
|
queryFilter = {
|
||||||
// queryKeys.albums.detail(server?.id, { id: options.byItemType.id }),
|
|
||||||
// async ({ signal }) =>
|
|
||||||
// api.controller.getAlbumDetail({
|
|
||||||
// query: { id: options.byItemType!.id },
|
|
||||||
// server,
|
|
||||||
// signal,
|
|
||||||
// }),
|
|
||||||
// );
|
|
||||||
|
|
||||||
// if (!albumDetail) return null;
|
|
||||||
|
|
||||||
const queryFilter = {
|
|
||||||
albumIds: options.byItemType?.id || [],
|
albumIds: options.byItemType?.id || [],
|
||||||
sortBy: SongListSort.ALBUM,
|
sortBy: SongListSort.ALBUM,
|
||||||
sortOrder: SortOrder.ASC,
|
sortOrder: SortOrder.ASC,
|
||||||
startIndex: 0,
|
startIndex: 0,
|
||||||
};
|
};
|
||||||
|
|
||||||
const queryKey = queryKeys.songs.list(server?.id, queryFilter);
|
queryKey = queryKeys.songs.list(server?.id, queryFilter);
|
||||||
let songsList;
|
} else if (options.byItemType.type === LibraryItem.ALBUM_ARTIST) {
|
||||||
|
queryFilter = {
|
||||||
|
artistIds: options.byItemType?.id || [],
|
||||||
|
sortBy: SongListSort.ALBUM,
|
||||||
|
sortOrder: SortOrder.ASC,
|
||||||
|
startIndex: 0,
|
||||||
|
};
|
||||||
|
|
||||||
|
queryKey = queryKeys.songs.list(server?.id, queryFilter);
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
songsList = await queryClient.fetchQuery(queryKey, async ({ signal }) =>
|
songsList = await queryClient.fetchQuery(queryKey, async ({ signal }) =>
|
||||||
api.controller.getSongList({
|
api.controller.getSongList({
|
||||||
|
@ -79,10 +80,7 @@ export const useHandlePlayQueueAdd = () => {
|
||||||
case 'subsonic':
|
case 'subsonic':
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
} else if (options.byData) {
|
||||||
}
|
|
||||||
|
|
||||||
if (options.byData) {
|
|
||||||
songs = options.byData.map((song) => ({ ...song, uniqueId: nanoid() }));
|
songs = options.byData.map((song) => ({ ...song, uniqueId: nanoid() }));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Reference in a new issue