2023-10-20 19:40:23 +03:30
|
|
|
|
using DocuMed.Common.Models.Claims;
|
|
|
|
|
|
|
|
|
|
|
|
namespace DocuMed.PWA.Utilities;
|
|
|
|
|
|
|
2024-09-28 12:34:36 +03:30
|
|
|
|
public class UserUtility(ILocalStorageService localStorageService) : IUserUtility
|
2023-10-20 19:40:23 +03:30
|
|
|
|
{
|
2024-09-28 12:34:36 +03:30
|
|
|
|
public async Task<string> GetBearerTokenAsync() => await localStorageService.GetItemAsStringAsync(LocalStorageKeys.Token);
|
|
|
|
|
|
public async Task SetBearerTokenAsync(string token) => await localStorageService.SetItemAsStringAsync(LocalStorageKeys.Token, token);
|
2023-10-20 19:40:23 +03:30
|
|
|
|
|
2024-09-28 12:34:36 +03:30
|
|
|
|
public async Task<ApplicationUserSDto> GetUserAsync() => await localStorageService.GetItemAsync<ApplicationUserSDto>(LocalStorageKeys.UserInfo);
|
|
|
|
|
|
public async Task SetUserAsync(ApplicationUserSDto user) => await localStorageService.SetItemAsync<ApplicationUserSDto>(LocalStorageKeys.UserInfo, user);
|
2023-10-24 10:43:48 +03:30
|
|
|
|
public async Task LogoutAsync()
|
|
|
|
|
|
{
|
2024-09-28 12:34:36 +03:30
|
|
|
|
await localStorageService.RemoveItemAsync(LocalStorageKeys.Token);
|
|
|
|
|
|
await localStorageService.RemoveItemAsync(LocalStorageKeys.UserInfo);
|
2023-10-24 10:43:48 +03:30
|
|
|
|
}
|
2023-10-22 15:51:11 +03:30
|
|
|
|
|
2023-10-20 19:40:23 +03:30
|
|
|
|
//public AccessToken<ApplicationUserSDto>? AccessToken { get; set; }
|
|
|
|
|
|
//public List<string> UserClaims => AccessToken == null ? new List<string>() : AccessToken.Permissions;
|
|
|
|
|
|
//public bool HasPermissionTo(string permission) => UserClaims.Any(c => c == permission);
|
|
|
|
|
|
}
|