jellyfish-web/src/utils/jellyfin-apiclient/compat.ts
2022-11-18 12:55:46 -05:00

23 lines
698 B
TypeScript

import { Api, Jellyfin } from '@jellyfin/sdk';
import { ApiClient } from 'jellyfin-apiclient';
/**
* Returns an SDK Api instance using the same parameters as the provided ApiClient.
* @param {ApiClient} apiClient The (legacy) ApiClient.
* @returns {Api} An equivalent SDK Api instance.
*/
export const toApi = (apiClient: ApiClient): Api => {
return (new Jellyfin({
clientInfo: {
name: apiClient.appName(),
version: apiClient.appVersion()
},
deviceInfo: {
name: apiClient.deviceName(),
id: apiClient.deviceId()
}
})).createApi(
apiClient.serverAddress(),
apiClient.accessToken()
);
};