Files
App/api/libraries.ts
2024-11-22 13:04:47 -06:00

24 lines
878 B
TypeScript

import { Api } from "@jellyfin/sdk";
import { BaseItemDto } from "@jellyfin/sdk/lib/generated-client/models";
import { getItemsApi } from "@jellyfin/sdk/lib/utils/api/items-api";
import _ from "lodash";
export function fetchMusicLibraries(api: Api): Promise<BaseItemDto[]> {
return new Promise(async (resolve, reject) => {
console.log("Fetching music libraries from Jellyfin");
let libraries = await getItemsApi(api).getItems();
if (_.isUndefined(libraries.data.Items)) {
console.log("No libraries found on Jellyfin");
return reject("No libraries found on Jellyfin");
}
let musicLibraries = libraries.data.Items!.filter(library => library.CollectionType == 'music');
console.log(`Found ${musicLibraries.length} music libraries`);
return resolve(musicLibraries);
});
}