@using Microsoft.AspNetCore.Components.Authorization
@Name @Email @LoginTime
@code { [CascadingParameter] private Task? AuthStateTask { get; set; } private System.Security.Claims.ClaimsPrincipal? UserPrincipal; private string? Name { get; set; } private string? Email { get; set; } private DateTime? LoginTime { get; set; } protected override async Task OnInitializedAsync() { if (AuthStateTask != null) { var authState = await AuthStateTask; UserPrincipal = authState.User; Name = UserPrincipal?.Identity?.Name; Email = UserPrincipal?.FindFirst(System.Security.Claims.ClaimTypes.Email)?.Value; var authTimeClaim = UserPrincipal?.FindFirst("auth_time")?.Value; if (!string.IsNullOrEmpty(authTimeClaim) && long.TryParse(authTimeClaim, out long unixSeconds)) { var dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(unixSeconds); LoginTime = dateTimeOffset.LocalDateTime; } } } }