mirror of
https://github.com/Jellify-Music/App.git
synced 2026-01-06 02:50:30 -06:00
Add lodash
More backend for queuing, image retrieval, and completing mapping to JellifyTrack
This commit is contained in:
@@ -16,5 +16,5 @@ export const findPlayNextIndexStart = (playQueue: JellifyTrack[]) => {
|
||||
* @returns The index to insert songs to add to the user queue
|
||||
*/
|
||||
export const findPlayQueueIndexStart = (playQueue: JellifyTrack[]) => {
|
||||
return playQueue.findIndex(queuedTrack => queuedTrack.QueueType === QueuingType.FromSelection) - 1;
|
||||
return playQueue.findIndex(queuedTrack => queuedTrack.QueuingType === QueuingType.FromSelection) - 1;
|
||||
}
|
||||
@@ -1,13 +1,22 @@
|
||||
import { useQuery } from "@tanstack/react-query";
|
||||
import { QueryKeys } from "../../enums/query-keys";
|
||||
import { getItemsApi } from "@jellyfin/sdk/lib/utils/api/items-api"
|
||||
import { getImageApi } from "@jellyfin/sdk/lib/utils/api/image-api"
|
||||
import { useApi } from "../queries";
|
||||
import { ImageType } from "@jellyfin/sdk/lib/generated-client/models";
|
||||
|
||||
|
||||
export const useImageByItemId = (artistId: string) => useQuery({
|
||||
queryKey: [QueryKeys.ArtistById, artistId],
|
||||
queryFn: (({ queryKey }) => {
|
||||
export const useImageByItemId = (itemId: string, imageType: ImageType) => useQuery({
|
||||
queryKey: [QueryKeys.ImageByItemId, itemId],
|
||||
queryFn: (async ({ queryKey }) => {
|
||||
|
||||
return getItemsApi(useApi.data!).getItems({ ids: [queryKey[1]]});
|
||||
let imageFile = await getImageApi(useApi.data!)
|
||||
.getItemImage({ itemId: queryKey[1], imageType: imageType })
|
||||
.then((response) => {
|
||||
// This should be returning a File per Jellyfin's docs
|
||||
// https://typescript-sdk.jellyfin.org/classes/generated_client.ImageApi.html#getItemImage
|
||||
return (response.data as File)
|
||||
});
|
||||
|
||||
return await imageFile.text();
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user