mirror of
https://github.com/status-im/nft-faucet.git
synced 2025-02-23 12:08:32 +00:00
Return back selection by guid
This commit is contained in:
parent
af4e26eed8
commit
d6eaa8970b
@ -5,10 +5,10 @@
|
||||
<Template Context="cardListItem">
|
||||
<RadzenCard class=@("box"
|
||||
+ (cardListItem.IsDisabled ? " box-disabled" : string.Empty)
|
||||
+ (SelectedItems != null && SelectedItems.Contains(cardListItem) ? " box-selected" : string.Empty))
|
||||
+ (SelectedItems != null && SelectedItems.Contains(cardListItem.Id) ? " box-selected" : string.Empty))
|
||||
Style="width: 250px;" onclick="@(async () => await ToggleSelection(cardListItem))">
|
||||
<div class="d-flex flex-row align-items-center">
|
||||
@if (SelectedItems != null && SelectedItems.Contains(cardListItem))
|
||||
@if (SelectedItems != null && SelectedItems.Contains(cardListItem.Id))
|
||||
{
|
||||
<Checkmark AnchorToTopRightCorner="true"/>
|
||||
}
|
||||
|
@ -6,8 +6,8 @@ namespace NftFaucetRadzen.Components;
|
||||
public partial class CardList : BasicComponent
|
||||
{
|
||||
[Parameter] public CardListItem[] Data { get; set; }
|
||||
[Parameter] public CardListItem[] SelectedItems { get; set; }
|
||||
[Parameter] public EventCallback<CardListItem[]> SelectedItemsChanged { get; set; }
|
||||
[Parameter] public Guid[] SelectedItems { get; set; }
|
||||
[Parameter] public EventCallback<Guid[]> SelectedItemsChanged { get; set; }
|
||||
[Parameter] public bool AllowMultipleSelection { get; set; }
|
||||
[Parameter] public bool AllowUnselect { get; set; }
|
||||
|
||||
@ -18,11 +18,11 @@ public partial class CardList : BasicComponent
|
||||
return;
|
||||
}
|
||||
|
||||
var selectedItems = SelectedItems?.ToList() ?? new List<CardListItem>();
|
||||
var isAlreadySelected = selectedItems.Contains(item);
|
||||
var selectedItems = SelectedItems?.ToList() ?? new List<Guid>();
|
||||
var isAlreadySelected = selectedItems.Contains(item.Id);
|
||||
if (isAlreadySelected && AllowUnselect)
|
||||
{
|
||||
selectedItems.Remove(item);
|
||||
selectedItems.Remove(item.Id);
|
||||
}
|
||||
else if (!isAlreadySelected)
|
||||
{
|
||||
@ -30,7 +30,7 @@ public partial class CardList : BasicComponent
|
||||
{
|
||||
selectedItems.Clear();
|
||||
}
|
||||
selectedItems.Add(item);
|
||||
selectedItems.Add(item.Id);
|
||||
}
|
||||
SelectedItems = selectedItems.ToArray();
|
||||
await SelectedItemsChanged.InvokeAsync(SelectedItems);
|
||||
|
@ -2,6 +2,7 @@ namespace NftFaucetRadzen.Models;
|
||||
|
||||
public class CardListItem
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
public string ImageName { get; set; }
|
||||
public string Header { get; set; }
|
||||
public bool IsDisabled { get; set; }
|
||||
|
@ -2,6 +2,6 @@ namespace NftFaucetRadzen.Models;
|
||||
|
||||
public class StateStorage
|
||||
{
|
||||
public CardListItem[] SelectedNetworks { get; set; }
|
||||
public CardListItem[] SelectedProviders { get; set; }
|
||||
public Guid[] SelectedNetworks { get; set; }
|
||||
public Guid[] SelectedProviders { get; set; }
|
||||
}
|
||||
|
@ -48,6 +48,7 @@ public partial class NetworkPage : BasicComponent
|
||||
private static CardListItem MapCardListItem(NetworkModel model)
|
||||
=> new CardListItem
|
||||
{
|
||||
Id = model.Id,
|
||||
ImageName = model.ImageName,
|
||||
Header = model.Name,
|
||||
IsDisabled = !model.IsSupported,
|
||||
|
@ -6,5 +6,6 @@ namespace NftFaucetRadzen.Shared;
|
||||
|
||||
public partial class NavMenu : BasicComponent
|
||||
{
|
||||
protected string SelectedNetworkName => AppState.Storage.SelectedNetworks?.FirstOrDefault()?.Header;
|
||||
protected Guid? SelectedNetworkId => AppState.Storage.SelectedNetworks?.FirstOrDefault();
|
||||
protected string SelectedNetworkName => Settings.Networks.FirstOrDefault(x => x.Id == SelectedNetworkId)?.Name;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user