Добавлена передача параметров в плеер

This commit is contained in:
FrigaT
2026-04-14 22:53:30 +03:00
parent 6ae49faf15
commit abf1906173
8 changed files with 27 additions and 10 deletions

View File

@@ -66,6 +66,7 @@
}
_shareUrl = ShareUrl;
_popoverOpen = true;
await CopyLink();
}
}

View File

@@ -27,10 +27,11 @@
@code {
[Parameter] public string CoverUrl { get; set; } = string.Empty;
[Parameter] public string TrackTitle { get; set; } = string.Empty;
[Parameter] public string TrackId { get; set; } = string.Empty;
[Parameter] public int Height { get; set; } = 50;
[Parameter] public int Width { get; set; } = 50;
[Parameter] public string SharedPlaylistId { get; set; } = string.Empty;
[Parameter] public string PlaylistShareToken { get; set; } = string.Empty;
private bool IsCurrentTrackPlaying => AudioPlayerService.IsPlaying && AudioPlayerService.CurrentTrackId == TrackId;
@@ -46,7 +47,7 @@
private async Task OnPlayClick()
{
var sharedPlaylistId = string.IsNullOrWhiteSpace(SharedPlaylistId) ? null : SharedPlaylistId;
var playlistShareToken = string.IsNullOrWhiteSpace(PlaylistShareToken) ? null : PlaylistShareToken;
if (IsCurrentTrackPlaying)
{
@@ -54,7 +55,11 @@
}
else
{
await AudioPlayerService.LoadAndPlayAsync(TrackId, sharedPlaylistId: SharedPlaylistId);
await AudioPlayerService.LoadAndPlayAsync(
trackId: TrackId,
playlistShareToken: playlistShareToken,
title: TrackTitle,
coverUrl: CoverUrl);
}
}

View File

@@ -164,7 +164,7 @@
private async Task OnLoadAndPlay(string trackId, string? accessToken, string? sharedPlaylistId)
{
if (!await CheckAuthAsync()) return;
//if (!await CheckAuthAsync()) return;
var tokens = await TokenStorage.GetTokensAsync();
_currentAccessToken = accessToken ?? tokens.token;

View File

@@ -35,6 +35,8 @@
<div style="width: 40px; height: 40px; flex-shrink: 0;">
<TrackCoverWithPlay CoverUrl="@track.CoverUri"
TrackId="@track.TrackId"
TrackTitle="@track.Title"
PlaylistShareToken="@ShareToken"
Width="40" Height="40"/>
</div>
<div style="flex: 1; min-width: 0;">

View File

@@ -80,7 +80,14 @@
private async Task ToggleFavorite()
{
if (!_isAuthenticated || Playlist == null) return;
if (Playlist == null) return;
if (!_isAuthenticated)
{
Snackbar.Add("Добавление в избранное только авторизованным пользователям", Severity.Warning);
return;
}
_favoriteLoading = true;
try
{

View File

@@ -26,6 +26,8 @@
{
<TrackCoverWithPlay CoverUrl="@context.CoverUri"
TrackId="@context.TrackId"
TrackTitle="@context.Title"
PlaylistShareToken="@ShareToken"
Width="50" Height="50"/>
}
else