@page "/"; @using TIAMWebApp.Shared.Application.Interfaces @using TIAMWebApp.Shared.Application.Models @using TIAMWebApp.Shared.Application.Utility @using Newtonsoft.Json @using System.IdentityModel.Tokens.Jwt @using TIAMWebApp.Shared.Application.Models.ClientSide @inject NavigationManager NavManager @inject LogToBrowserConsole logToBrowserConsole @inject IUserDataService UserDataService @inject ISecureStorageHandler SecureStorageHandler

AppLaunch

Loading.... @code { protected async override Task OnInitializedAsync() { string userDetailsStr = await SecureStorageHandler.GetFromSecureStorageAsync(nameof(Setting.UserBasicDetails)); logToBrowserConsole.LogToBC(userDetailsStr); if (!string.IsNullOrWhiteSpace(userDetailsStr)) { var userBasicDetail = JsonConvert.DeserializeObject(userDetailsStr); var handler = new JwtSecurityTokenHandler(); var jsontoken = handler.ReadToken(userBasicDetail.AccessToken) as JwtSecurityToken; Setting.UserBasicDetails = userBasicDetail; if (jsontoken.ValidTo < DateTime.UtcNow) { bool isTokenRefreshed = await UserDataService.RefreshToken(); if (isTokenRefreshed) { NavManager.NavigateTo("/home"); } else { NavManager.NavigateTo("/login"); } } else { NavManager.NavigateTo("/home"); } } else { NavManager.NavigateTo("/login"); } } }