31 lines
945 B
Plaintext
31 lines
945 B
Plaintext
@using PlaylistShared.Shared.Yandex
|
|
|
|
<MudItem Class="d-flex flex-column align-center pa-2 cursor-pointer" @onclick="HandleClick">
|
|
@if (!string.IsNullOrEmpty(Item.CoverUrl))
|
|
{
|
|
<MudAvatar Size="MudBlazor.Size.Large">
|
|
<MudImage Src="@Item.CoverUrl.FormatCoverUrl(Size, Size)" />
|
|
</MudAvatar>
|
|
}
|
|
else
|
|
{
|
|
<MudAvatar Size="MudBlazor.Size.Large" Variant="Variant.Filled">
|
|
<MudIcon Icon="@Icons.Material.Filled.PlaylistPlay" />
|
|
</MudAvatar>
|
|
}
|
|
<MudText Typo="Typo.body2" Align="Align.Center" Class="mt-2">@Item.Title</MudText>
|
|
</MudItem>
|
|
|
|
@code {
|
|
[Parameter] public YandexPlaylist Item { get; set; } = null!;
|
|
[Parameter] public EventCallback OnClick { get; set; }
|
|
[Parameter] public int Size { get; set; } = 50;
|
|
|
|
private async Task HandleClick()
|
|
{
|
|
if (OnClick.HasDelegate)
|
|
{
|
|
await OnClick.InvokeAsync();
|
|
}
|
|
}
|
|
} |