44 lines
1.2 KiB
TypeScript
44 lines
1.2 KiB
TypeScript
export default class UserStore {
|
|
private static instance: UserStore;
|
|
|
|
private constructor() { }
|
|
|
|
public static getInstance(): UserStore {
|
|
if (!UserStore.instance) {
|
|
UserStore.instance = new UserStore();
|
|
}
|
|
return UserStore.instance;
|
|
}
|
|
|
|
public connect(accessToken: string, refreshToken: string): void {
|
|
sessionStorage.setItem('accessToken', accessToken);
|
|
sessionStorage.setItem('refreshToken', refreshToken);
|
|
}
|
|
|
|
public isConnected(): boolean {
|
|
return sessionStorage.getItem('accessToken') !== null && sessionStorage.getItem('refreshToken') !== null;
|
|
}
|
|
|
|
public disconnect(): void {
|
|
sessionStorage.removeItem('accessToken');
|
|
sessionStorage.removeItem('refreshToken');
|
|
sessionStorage.removeItem('userPairingId');
|
|
}
|
|
|
|
public getAccessToken(): string | null {
|
|
return sessionStorage.getItem('accessToken');
|
|
}
|
|
|
|
public getRefreshToken(): string | null {
|
|
return sessionStorage.getItem('refreshToken');
|
|
}
|
|
|
|
public pair(userPairingId: string): void {
|
|
sessionStorage.setItem('userPairingId', userPairingId);
|
|
}
|
|
|
|
public getUserPairingId(): string | null {
|
|
return sessionStorage.getItem('userPairingId');
|
|
}
|
|
}
|