singleton stuff

This commit is contained in:
Violet Caulfield
2025-01-19 09:57:58 -06:00
parent 678f946e28
commit d7f074b023
2 changed files with 16 additions and 3 deletions

View File

@@ -64,6 +64,13 @@ export default class Client {
Client.instance.removeCredentials()
}
public static switchUser(): void {
if (!Client.#instance)
Client.instance;
Client.instance.removeUser();
}
private setAndPersistUser(user: JellifyUser) {
this.user = user;
@@ -94,6 +101,12 @@ export default class Client {
storage.delete(MMKVStorageKeys.User)
}
private removeUser() {
this.user = undefined;
storage.delete(MMKVStorageKeys.User)
}
/**
* Uses the jellifyClient to create a public Jellyfin API instance.
* @param serverUrl The URL of the Jellyfin server

View File

@@ -4,8 +4,8 @@ import App from './App';
import {name as appName} from './app.json';
import { PlaybackService } from './player/service'
import TrackPlayer from 'react-native-track-player';
import { Client } from './api/client';
import Client from './api/client';
Client.instance;
AppRegistry.registerComponent(appName, () => App);
TrackPlayer.registerPlaybackService(() => PlaybackService);
Client.instance;