mirror of
https://github.com/Jellify-Music/App.git
synced 2026-04-23 03:21:21 -05:00
adding ability to switch user on library selection screen
adding backend to support loading libraries
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { Api } from "@jellyfin/sdk";
|
||||
import { client } from "../../queries";
|
||||
import { fetchCredentials } from "./storage";
|
||||
import { client } from "../../client";
|
||||
|
||||
/**
|
||||
* A promise to build an authenticated Jellyfin API client
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
import { Api } from "@jellyfin/sdk";
|
||||
import { getItemsApi } from "@jellyfin/sdk/lib/utils/api/items-api";
|
||||
import _ from "lodash";
|
||||
|
||||
|
||||
export const fetchMusicLibraries = async (api: Api) => {
|
||||
|
||||
let libraries = await getItemsApi(api).getItems();
|
||||
|
||||
if (_.isUndefined(libraries.data.Items))
|
||||
return Promise.reject("No libraries found on Jellyfin");
|
||||
|
||||
return libraries.data.Items!.filter(library => library.CollectionType == 'music')
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
import { useQuery } from "@tanstack/react-query";
|
||||
import { QueryKeys } from "../../enums/query-keys";
|
||||
import { fetchMusicLibraries } from "./functions/libraries";
|
||||
import { Api } from "@jellyfin/sdk";
|
||||
|
||||
export const useLibraries = (api: Api) => useQuery({
|
||||
queryKey: [QueryKeys.Libraries],
|
||||
queryFn: () => fetchMusicLibraries(api)
|
||||
});
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import { useQuery } from "@tanstack/react-query";
|
||||
import { QueryKeys } from "../../enums/query-keys";
|
||||
import { usePublicApi } from "../queries";
|
||||
import { getSystemApi } from "@jellyfin/sdk/lib/utils/api/system-api";
|
||||
import { createPublicApi } from "./functions/api";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user