55 lines
1.6 KiB
Text
55 lines
1.6 KiB
Text
@inject DownloadService DownloadService
|
|
|
|
<Drawer Placement="bottom" Class="download-queue">
|
|
<h2>In Progress</h2>
|
|
@foreach (var queueItem in DownloadService.Queue.Where(qi => qi.State))
|
|
{
|
|
<div class="queue-item">
|
|
<img src="@queueItem.CoverPath" />
|
|
<div class="queue-item-info">
|
|
<div>
|
|
<h4>@queueItem.Title | @queueItem</h4>
|
|
<span>@queueItem.BytesDownloaded / @queueItem.TotalBytes</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
|
|
<h2>Up Next</h2>
|
|
@foreach (var queueItem in DownloadService.Queue.Where(qi => qi.Status == Enums.DownloadStatus.Idle))
|
|
{
|
|
<div class="queue-item">
|
|
<img src="@queueItem.CoverPath" />
|
|
<div class="queue-item-info">
|
|
<div>
|
|
<h4>@queueItem.Title | @queueItem</h4>
|
|
<span>@queueItem.BytesDownloaded / @queueItem.TotalBytes</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
|
|
<h2>Completed</h2>
|
|
@foreach (var queueItem in DownloadService.Queue.Where(qi => !qi.State))
|
|
{
|
|
<div class="queue-item">
|
|
<img src="@queueItem.CoverPath" />
|
|
<div class="queue-item-info">
|
|
<div>
|
|
<h4>@queueItem.Title | @queueItem</h4>
|
|
<span>@queueItem.BytesDownloaded / @queueItem.TotalBytes</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
</Drawer>
|
|
|
|
@code {
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
DownloadService.OnQueueChanged += () =>
|
|
{
|
|
StateHasChanged();
|
|
};
|
|
}
|
|
}
|