8b8796fc58
TrackCard, TracksGallery, DDIcons, DeepDrftPalettes (Default+Cms), DeepDrftFontLinks, and palette CSS tokens extracted. Both hosts and DeepDrftCms reference the shared RCL.
24 lines
695 B
C#
24 lines
695 B
C#
using Microsoft.AspNetCore.Components;
|
|
using DeepDrftModels.Entities;
|
|
|
|
namespace DeepDrftShared.Client.Components;
|
|
|
|
public partial class TracksGallery : ComponentBase
|
|
{
|
|
[Parameter] public IEnumerable<TrackEntity> Tracks { get; set; } = [];
|
|
[Parameter] public TrackEntity? SelectedTrack { get; set; }
|
|
[Parameter] public EventCallback<TrackEntity?> SelectedTrackChanged { get; set; }
|
|
|
|
private async Task HandlePlayClick(TrackEntity track)
|
|
{
|
|
if (SelectedTrack == track) return;
|
|
SelectedTrack = track;
|
|
StateHasChanged();
|
|
|
|
if (SelectedTrackChanged.HasDelegate)
|
|
{
|
|
await SelectedTrackChanged.InvokeAsync(track);
|
|
}
|
|
}
|
|
}
|