Beispiel #1
0
        public async Task InterceptBeforeHttpAsync(object sender, HttpClientInterceptorEventArgs e)
        {
            var absPath = e.Request.RequestUri.AbsolutePath;

            if (!absPath.Contains("token") && !absPath.Contains("accounts"))
            {
                try
                {
                    var token = await _authenticationManager.TryRefreshToken();

                    if (!string.IsNullOrEmpty(token))
                    {
                        _snackBar.Add(_localizer["Refreshed Token."], Severity.Success);
                        e.Request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    _snackBar.Add(_localizer["You are Logged Out."], Severity.Error);
                    await _authenticationManager.Logout();

                    _navigationManager.NavigateTo("/");
                }
            }
        }
 public void DisplayErrorAlert(string message)
 {
     _snackbar.Add(message, Severity.Error, opt =>
     {
         opt.SnackbarVariant      = Variant.Filled;
         opt.VisibleStateDuration = 3000;
     });
 }
        public async Task <PageResult <UserVm> > GetUsers(UserFilterInput filter)
        {
            var result = await _client.GetUsers.ExecuteAsync(filter);

            if (result.IsErrorResult())
            {
                _snackbar.Add(string.Join('\n', result.Errors.Select(x => x.Message)), Severity.Error);
            }
            return(new PageResult <UserVm>(result.Data.Users));
        }
Beispiel #4
0
        public void Show(string message, ViewNotifierType type, string title = null, string icon = null)
        {
            var snackType = Severity.Success;

            switch (type)
            {
                case ViewNotifierType.Error:
                    snackType = Severity.Error;
                    break;
                case ViewNotifierType.Warning:
                    snackType = Severity.Warning;
                    break;
                case ViewNotifierType.Info:
                    snackType = Severity.Info;
                    break;
            }

            if (!string.IsNullOrWhiteSpace(title))
                message = $"<b>{title}</b><br />{message}";

            snackbar.Add(message, snackType, config =>
            {
                if (icon != null)
                    config.Icon = icon;
            });
        }
        public async Task <PageResult <ProjectVm> > GetProjectsAsync(PagingFilter pagingFilter, ProjectFilterInput filter)
        {
            var result = await _client.GetProjects.ExecuteAsync(pagingFilter.TakeFirst, pagingFilter.TakePrevious, pagingFilter.After, pagingFilter.Before, filter);

            if (result.IsErrorResult())
            {
                _snackbar.Add(string.Join('\n', result.Errors.Select(x => x.Message)), Severity.Error);
            }
            return(new PageResult <ProjectVm>(result.Data.Projects));
        }
Beispiel #6
0
 void setState(Service1C77State state)
 {
     serviceState.IsWorked    = state.IsWorked;
     serviceState.IsDoStarted = state.IsDoStarted;
     serviceState.TimeWorked  = state.TimeWorked;
     if (state.LastError != string.Empty)
     {
         Task.Run(() => Snackbar.Add(state.LastError, Severity.Error));
     }
     serviceState.LastError = state.LastError;
     OnState1C77Change?.Invoke(serviceState);
 }
 public static IApiClientOperation SendErrorTo(this IApiClientOperation operation, ISnackbar snackbar)
 {
     operation.ConfigureFailure(problem => snackbar.Add(problem.GetDisplayString(), Severity.Error));
     return(operation);
 }
Beispiel #8
0
 public void PrintSuccess(string message)
 {
     _snackbar.Add(message, Severity.Success);
 }
Beispiel #9
0
 /// <summary>
 /// Open toaster
 /// </summary>
 /// <param name="settings">Toaster Settings</param>
 public void Open(ToasterSettings settings)
 {
     _snackbar.Add(GenerateString(settings), GetType(settings));
 }