LaptopsListPage.razor 835 B

1234567891011121314151617181920212223242526272829303132
  1. @page "/laptops/list"
  2. @using RackPeek.Domain.Resources.Laptops
  3. @inject NavigationManager Nav
  4. <ResourcesListComponent TResource="Laptop"
  5. Title="Laptops"
  6. TestId="laptops"
  7. OnCreated="NavigateToNewResource">
  8. <ItemTemplate Context="laptop">
  9. <LaptopCardComponent Laptop="laptop"
  10. OnDeleted="Reload"/>
  11. </ItemTemplate>
  12. </ResourcesListComponent>
  13. @code {
  14. [Inject] IGetAllResourcesByKindUseCase<Laptop> GetAllUseCase { get; set; } = default!;
  15. private Task NavigateToNewResource(string name)
  16. {
  17. Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
  18. return Task.CompletedTask;
  19. }
  20. private async Task Reload(string _)
  21. {
  22. await GetAllUseCase.ExecuteAsync();
  23. }
  24. }