BlazorStart/Start/Client/Components/DeleteContainer.razor
2021-12-16 22:06:41 -08:00

53 lines
1.7 KiB
Plaintext

@using Start.Client.Components.Shared
@using Start.Client.Store.Features.DeleteContainer
@using Fluxor
@inherits Fluxor.Blazor.Web.Components.FluxorComponent
@inject IDispatcher dispatch
@inject IState<DeleteContainerState> state
<Dialog Active="this.state.Value.ShowDeleteContainerForm" OnClose="this.OnDialogClose">
<Header>
Delete Container "@this.state.Value.BookmarkContainerTitleToDelete"
</Header>
<Body>
@if (this.state.Value.DeleteContainerErrorMessage != null)
{
<Alert Type="Alert.AlertType.Error">
@this.state.Value.DeleteContainerErrorMessage
</Alert>
}
<p>
Are you sure you want to delete the bookmark container
"@this.state.Value.BookmarkContainerTitleToDelete"?
</p>
<div class="text-right">
@if (!this.state.Value.IsLoadingDeleteContainer)
{
<button type="button" class="btn" @onclick="this.OnDialogClose">Cancel</button>
<button type="submit" class="btn btn-error" @onclick="this.OnConfirmDelete">Delete</button>
}
else
{
<button type="button" disabled class="btn" @onclick="this.OnDialogClose">Cancel</button>
<button type="submit" disabled class="btn btn-error loading" @onclick="this.OnConfirmDelete">Delete</button>
}
</div>
</Body>
</Dialog>
@code {
public void OnDialogClose()
{
this.dispatch.Dispatch(new HideDeleteContainerFormAction());
}
public void OnConfirmDelete()
{
this.dispatch.Dispatch(new SubmitDeleteContainerAction(
this.state.Value.BookmarkContainerIdToDelete));
}
}