Implemented cart hydration and refactored paynow flow
continuous-integration/drone/pr Build is passing
continuous-integration/drone/pr Build is passing
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
using LiteCharms.Features.MidrandBooks.AuthorBooks;
|
||||
using LiteCharms.Features.MidrandBooks.Authors;
|
||||
using LiteCharms.Features.MidrandBooks.Categories;
|
||||
using LiteCharms.Features.MidrandBooks.Payments;
|
||||
using LiteCharms.Features.MidrandBooks.Products;
|
||||
using LiteCharms.Features.MidrandBooks.Products.Models;
|
||||
using LiteCharms.Features.Models;
|
||||
@@ -15,6 +16,9 @@ public partial class Home : ComponentBase
|
||||
[Inject] private AuthorService AuthorService { get; set; } = default!;
|
||||
[Inject] private CategoryService CategoryService { get; set; } = default!;
|
||||
[Inject] private NavigationManager Navigation { get; set; } = default!;
|
||||
[Inject] private HydrationService HydrationService { get; set; } = default!;
|
||||
[Inject] private CancellationToken CancellationToken { get; set; } = default!;
|
||||
[Inject] private CartService CartService { get; set; } = default!;
|
||||
|
||||
[SupplyParameterFromQuery(Name = "q")] public string? SharedSearchQuery { get; set; }
|
||||
[SupplyParameterFromQuery] public long? AuthorId { get; set; }
|
||||
@@ -95,6 +99,17 @@ public partial class Home : ComponentBase
|
||||
|
||||
private bool HasMoreItems => FilteredData.Count() > VisibleCount;
|
||||
|
||||
protected override async Task OnInitializedAsync() => await CartService.LoadCartFromStorageAsync();
|
||||
|
||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||
{
|
||||
if (firstRender == false && HydrationService.CartHydrated == false)
|
||||
{
|
||||
await HydrationService.EnsureCustomerExistsAsync(CancellationToken);
|
||||
await HydrationService.RehydrateCartFromPendingOrderAsync(CancellationToken);
|
||||
}
|
||||
}
|
||||
|
||||
protected override async Task OnParametersSetAsync() => await LoadCatalogDataAsync();
|
||||
|
||||
private async Task LoadCatalogDataAsync()
|
||||
|
||||
Reference in New Issue
Block a user