Ignore missing api when fetching SyncPlay groups
This commit is contained in:
parent
3a120011c8
commit
36299bd850
1 changed files with 12 additions and 7 deletions
|
@ -1,14 +1,18 @@
|
||||||
import { useQuery } from '@tanstack/react-query';
|
import { useQuery } from '@tanstack/react-query';
|
||||||
import { JellyfinApiContext, useApi } from './useApi';
|
import type { Api } from '@jellyfin/sdk/lib/api';
|
||||||
import { getSyncPlayApi } from '@jellyfin/sdk/lib/utils/api/sync-play-api';
|
import { getSyncPlayApi } from '@jellyfin/sdk/lib/utils/api/sync-play-api';
|
||||||
import { AxiosRequestConfig } from 'axios';
|
import type { AxiosRequestConfig } from 'axios';
|
||||||
|
|
||||||
|
import { useApi } from './useApi';
|
||||||
|
|
||||||
const fetchSyncPlayGroups = async (
|
const fetchSyncPlayGroups = async (
|
||||||
currentApi: JellyfinApiContext,
|
api?: Api,
|
||||||
options?: AxiosRequestConfig
|
options?: AxiosRequestConfig
|
||||||
) => {
|
) => {
|
||||||
const { api } = currentApi;
|
if (!api) {
|
||||||
if (!api) throw new Error('No API instance available');
|
console.warn('[fetchSyncPlayGroups] No API instance available');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const response = await getSyncPlayApi(api)
|
const response = await getSyncPlayApi(api)
|
||||||
.syncPlayGetGroups(options);
|
.syncPlayGetGroups(options);
|
||||||
|
@ -16,9 +20,10 @@ const fetchSyncPlayGroups = async (
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useSyncPlayGroups = () => {
|
export const useSyncPlayGroups = () => {
|
||||||
const currentApi = useApi();
|
const { api } = useApi();
|
||||||
return useQuery({
|
return useQuery({
|
||||||
queryKey: [ 'SyncPlay', 'Groups' ],
|
queryKey: [ 'SyncPlay', 'Groups' ],
|
||||||
queryFn: ({ signal }) => fetchSyncPlayGroups(currentApi, { signal })
|
queryFn: ({ signal }) => fetchSyncPlayGroups(api, { signal }),
|
||||||
|
enabled: !!api
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue