private async Task OnEditOidcUpPartyValidSubmitAsync(GeneralOidcUpPartyViewModel generalOidcUpParty, EditContext editContext) { try { if (generalOidcUpParty.Form.Model.ClaimTransforms?.Count() > 0) { foreach (var claimTransform in generalOidcUpParty.Form.Model.ClaimTransforms) { if (claimTransform is OAuthClaimTransformClaimInViewModel claimTransformClaimIn && !claimTransformClaimIn.ClaimIn.IsNullOrWhiteSpace()) { claimTransform.ClaimsIn = new List <string> { claimTransformClaimIn.ClaimIn }; } } } var oidcUpParty = generalOidcUpParty.Form.Model.Map <OidcUpParty>(afterMap: afterMap => { afterMap.UpdateState = PartyUpdateStates.Automatic; afterMap.DisableSingleLogout = !generalOidcUpParty.Form.Model.EnableSingleLogout; afterMap.Client.DisableFrontChannelLogout = !generalOidcUpParty.Form.Model.Client.EnableFrontChannelLogout; if (afterMap.ClaimTransforms?.Count() > 0) { int order = 1; foreach (var claimTransform in afterMap.ClaimTransforms) { claimTransform.Order = order++; } } }); if (generalOidcUpParty.CreateMode) { await UpPartyService.CreateOidcUpPartyAsync(oidcUpParty); } else { await UpPartyService.UpdateOidcUpPartyAsync(oidcUpParty); } generalOidcUpParty.Name = generalOidcUpParty.Form.Model.Name; generalOidcUpParty.Edit = false; await OnStateHasChanged.InvokeAsync(UpParty); } catch (FoxIDsApiException ex) { if (ex.StatusCode == System.Net.HttpStatusCode.Conflict) { generalOidcUpParty.Form.SetFieldError(nameof(generalOidcUpParty.Form.Model.Name), ex.Message); } else { throw; } } }
Task INotificationHandler <OnShowDialogCommand <EditProductComponentViewModel> > .Handle(OnShowDialogCommand <EditProductComponentViewModel> notification, CancellationToken cancellationToken) { notification.OnInvokeAction.Invoke((editProductComponentViewModel, OnStateHasChanged) => { editProductComponentViewModel.IsDisplay = true; OnStateHasChanged.Invoke(); }); return(Task.CompletedTask); }
Task INotificationHandler <OnCloselDialogCommand <DeleteProductComponentViewModel> > .Handle(OnCloselDialogCommand <DeleteProductComponentViewModel> notification, CancellationToken cancellationToken) { notification.OnInvokeAction.Invoke((deleteProductComponentViewModel, OnStateHasChanged) => { deleteProductComponentViewModel.IsDisplay = false; OnStateHasChanged.Invoke(); deleteProductComponentViewModel.RefreshEvent.InvokeAsync("Refresh"); }); return(Task.CompletedTask); }
Task INotificationHandler <OnShowDialogCommand <AddProductComponentViewModel> > .Handle(OnShowDialogCommand <AddProductComponentViewModel> notification, CancellationToken cancellationToken) { notification.OnInvokeAction.Invoke((addProductViewModel, OnStateHasChanged) => { addProductViewModel.IsDisplay = true; addProductViewModel.Product = addProductViewModel.Product ?? new ProductModel(); OnStateHasChanged?.Invoke(); }); return(Task.CompletedTask); }
public async Task UpPartyCancelAsync(GeneralUpPartyViewModel upParty) { if (upParty.CreateMode) { UpParties.Remove(upParty); } else { UpParty.Edit = false; } await OnStateHasChanged.InvokeAsync(UpParty); }
private async Task DeleteLoginUpPartyAsync(GeneralLoginUpPartyViewModel generalLoginUpParty) { try { await UpPartyService.DeleteLoginUpPartyAsync(generalLoginUpParty.Name); UpParties.Remove(generalLoginUpParty); await OnStateHasChanged.InvokeAsync(UpParty); } catch (TokenUnavailableException) { await(OpenidConnectPkce as TenantOpenidConnectPkce).TenantLoginAsync(); } catch (Exception ex) { generalLoginUpParty.Form.SetError(ex.Message); } }
Task INotificationHandler <OnCloselDialogCommand <AddProductComponentViewModel> > .Handle(OnCloselDialogCommand <AddProductComponentViewModel> notification, CancellationToken cancellationToken) { //notification.OnBaseInvoke.Invoke(() => //{ // notification.ViewModel.IsDisplay = false; // notification.ViewModel.Product = null; // notification?.OnStateHasChanged?.Invoke(); // notification.ViewModel.RefreshEvent.InvokeAsync("Refresh Event"); //}); notification.OnInvokeAction.Invoke((addProductViewModel, OnStateHasChanged) => { addProductViewModel.IsDisplay = false; addProductViewModel.Product = null; OnStateHasChanged.Invoke(); addProductViewModel.RefreshEvent.InvokeAsync("Refresh Event"); }); return(Task.CompletedTask); }
protected virtual void StateHasChanging() { OnStateHasChanged?.Invoke(this, EventArgs.Empty); }
private async Task OnEditSamlUpPartyValidSubmitAsync(GeneralSamlUpPartyViewModel generalSamlUpParty, EditContext editContext) { try { if (generalSamlUpParty.Form.Model.ClaimTransforms?.Count() > 0) { foreach (var claimTransform in generalSamlUpParty.Form.Model.ClaimTransforms) { if (claimTransform is SamlClaimTransformClaimInViewModel claimTransformClaimIn && !claimTransformClaimIn.ClaimIn.IsNullOrWhiteSpace()) { claimTransform.ClaimsIn = new List <string> { claimTransformClaimIn.ClaimIn }; } } } var samlUpParty = generalSamlUpParty.Form.Model.Map <SamlUpParty>(afterMap => { afterMap.DisableSingleLogout = !generalSamlUpParty.Form.Model.EnableSingleLogout; afterMap.AuthnBinding = new SamlBinding { RequestBinding = generalSamlUpParty.Form.Model.AuthnRequestBinding, ResponseBinding = generalSamlUpParty.Form.Model.AuthnResponseBinding }; if (!afterMap.LogoutUrl.IsNullOrEmpty()) { afterMap.LogoutBinding = new SamlBinding { RequestBinding = generalSamlUpParty.Form.Model.LogoutRequestBinding, ResponseBinding = generalSamlUpParty.Form.Model.LogoutResponseBinding }; } if (afterMap.ClaimTransforms?.Count() > 0) { int order = 1; foreach (var claimTransform in afterMap.ClaimTransforms) { claimTransform.Order = order++; } } }); if (generalSamlUpParty.CreateMode) { await UpPartyService.CreateSamlUpPartyAsync(samlUpParty); } else { await UpPartyService.UpdateSamlUpPartyAsync(samlUpParty); } generalSamlUpParty.Name = generalSamlUpParty.Form.Model.Name; generalSamlUpParty.Edit = false; await OnStateHasChanged.InvokeAsync(UpParty); } catch (FoxIDsApiException ex) { if (ex.StatusCode == System.Net.HttpStatusCode.Conflict) { generalSamlUpParty.Form.SetFieldError(nameof(generalSamlUpParty.Form.Model.Name), ex.Message); } else { throw; } } }
private async Task OnEditOidcDownPartyValidSubmitAsync(GeneralOidcDownPartyViewModel generalOidcDownParty, EditContext editContext) { try { if (generalOidcDownParty.Form.Model.ClaimTransforms?.Count() > 0) { foreach (var claimTransform in generalOidcDownParty.Form.Model.ClaimTransforms) { if (claimTransform is OAuthClaimTransformClaimInViewModel claimTransformClaimIn && !claimTransformClaimIn.ClaimIn.IsNullOrWhiteSpace()) { claimTransform.ClaimsIn = new List <string> { claimTransformClaimIn.ClaimIn }; } } } var oidcDownParty = generalOidcDownParty.Form.Model.Map <OidcDownParty>(afterMap: afterMap => { if (generalOidcDownParty.Form.Model.Client?.DefaultResourceScope == true) { afterMap.Client.ResourceScopes.Add(new OAuthDownResourceScope { Resource = generalOidcDownParty.Form.Model.Name, Scopes = generalOidcDownParty.Form.Model.Client.DefaultResourceScopeScopes }); } if (!(afterMap.Resource?.Scopes?.Count > 0)) { afterMap.Resource = null; } if (generalOidcDownParty.Form.Model.Client?.ScopesViewModel?.Count() > 0) { afterMap.Client.Scopes = generalOidcDownParty.Form.Model.Client.ScopesViewModel.Map <List <OidcDownScope> >(); } if (afterMap.ClaimTransforms?.Count() > 0) { int order = 1; foreach (var claimTransform in afterMap.ClaimTransforms) { claimTransform.Order = order++; } } }); if (generalOidcDownParty.CreateMode) { await DownPartyService.CreateOidcDownPartyAsync(oidcDownParty); } else { await DownPartyService.UpdateOidcDownPartyAsync(oidcDownParty); if (oidcDownParty.Client != null) { foreach (var existingSecret in generalOidcDownParty.Form.Model.Client.ExistingSecrets.Where(s => s.Removed)) { await DownPartyService.DeleteOidcClientSecretDownPartyAsync(existingSecret.Name); } } } if (oidcDownParty.Client != null && generalOidcDownParty.Form.Model.Client.Secrets.Count() > 0) { await DownPartyService.CreateOidcClientSecretDownPartyAsync(new OAuthClientSecretRequest { PartyName = generalOidcDownParty.Form.Model.Name, Secrets = generalOidcDownParty.Form.Model.Client.Secrets }); } generalOidcDownParty.Name = generalOidcDownParty.Form.Model.Name; generalOidcDownParty.Edit = false; await OnStateHasChanged.InvokeAsync(DownParty); } catch (FoxIDsApiException ex) { if (ex.StatusCode == System.Net.HttpStatusCode.Conflict) { generalOidcDownParty.Form.SetFieldError(nameof(generalOidcDownParty.Form.Model.Name), ex.Message); } else { throw; } } }