Files
deepdrft/DeepDrftWeb.Client/Pages/TracksView.razor
T
daniel-c-harvey 66d800bd26 Front End Work
- Redesign component wiring for audio playback
 - Removed playback logic from the player control and moved it to injectable audio player engine service
 - Chunked/buffered stream loading from Content API passed to Web Audio API playback in 8K blocks
2025-09-06 13:39:26 -04:00

38 lines
1.3 KiB
Plaintext

@page "/tracks"
@using DeepDrftWeb.Client.Controls
<PageTitle>DeepDrft Track Gallery</PageTitle>
<div class="tracks-page-wrapper">
<div class="tracks-view-container">
@if (ViewModel.Page != null)
{
<div class="tracks-content">
<TracksGallery Tracks="@ViewModel.Page.Items"
SelectedTrack="_selectedTrack"
SelectedTrackChanged="@PlayTrack"/>
</div>
<div class="tracks-footer">
<div class="py-4">
<MudPagination Count="@ViewModel.Page.TotalPages"
Selected="@ViewModel.Page.Page"
SelectedChanged="@SetPage"
BoundaryCount="2"
MiddleCount="3"/>
</div>
<AudioPlayerBar AudioPlaybackEngine="AudioPlaybackEngine" />
</div>
}
else
{
<div class="tracks-content">
<MudSkeleton Height="95%" Class="pa-2 ma-6"/>
</div>
<div class="tracks-footer">
<MudSkeleton Height="60px" Width="240px" Class="justify-center"/>
<MudSkeleton Height="120px" Width="460px"/>
</div>
}
</div>
</div>