fix: align player cascade type to IStreamingPlayerService so consumers stop receiving null

This commit is contained in:
daniel-c-harvey
2026-06-03 12:29:43 -04:00
parent 5b4c7c1a18
commit c1f79a3aca
3 changed files with 6 additions and 6 deletions
@@ -11,7 +11,7 @@ public partial class AudioPlayerProvider : ComponentBase, IAsyncDisposable
[Inject] public required TrackMediaClient TrackMediaClient { get; set; }
[Inject] public required ILogger<StreamingAudioPlayerService> Logger { get; set; }
private StreamingAudioPlayerService? _audioPlayerService;
private IStreamingPlayerService? _audioPlayerService;
[Parameter] public RenderFragment? ChildContent { get; set; }
@@ -38,10 +38,10 @@ public partial class AudioPlayerProvider : ComponentBase, IAsyncDisposable
/// </summary>
public async ValueTask DisposeAsync()
{
if (_audioPlayerService != null)
if (_audioPlayerService is IAsyncDisposable disposable)
{
await _audioPlayerService.DisposeAsync();
_audioPlayerService = null;
await disposable.DisposeAsync();
}
_audioPlayerService = null;
}
}
+1 -1
View File
@@ -226,5 +226,5 @@
</section>
@code {
[CascadingParameter] public IPlayerService? Player { get; set; }
[CascadingParameter] public IStreamingPlayerService? Player { get; set; }
}
@@ -9,7 +9,7 @@ namespace DeepDrftPublic.Client.Pages;
public partial class TracksView : ComponentBase
{
[Inject] public required TracksViewModel ViewModel { get; set; }
[CascadingParameter] public required IPlayerService PlayerService { get; set; }
[CascadingParameter] public required IStreamingPlayerService PlayerService { get; set; }
private TrackDto? _selectedTrack = null;
private int _clickCount = 0;