56 lines
2.2 KiB
Plaintext
56 lines
2.2 KiB
Plaintext
<MudPaper MaxWidth="1600px" Square="true">
|
|
<MudStack Row AlignItems="AlignItems.Center" Spacing="4" Class="px-4 py-2">
|
|
<MudStack Class="pb-2">
|
|
<MudStack Row AlignItems="AlignItems.Center">
|
|
<MudIconButton Icon="@GetPlayIcon()"
|
|
Color="Color.Primary"
|
|
Size="Size.Large"
|
|
OnClick="@TogglePlayPause"
|
|
Disabled="!IsLoaded"/>
|
|
@if (IsLoaded)
|
|
{
|
|
<MudIconButton Icon="Icons.Material.Filled.Stop"
|
|
Color="Color.Primary"
|
|
OnClick="@Stop"
|
|
Disabled="!IsLoaded"/>
|
|
}
|
|
</MudStack>
|
|
<MudStack Row AlignItems="AlignItems.Center">
|
|
<MudText Typo="Typo.body2" Class="font-monospace deepdrft-audio-time">
|
|
@FormatTime(CurrentTime) / @(Duration.HasValue ? FormatTime(Duration.Value) : "--:--")
|
|
</MudText>
|
|
@if (!IsLoaded)
|
|
{
|
|
<MudProgressCircular Color="Color.Tertiary" Value="@LoadProgress" Size="Size.Small"/>
|
|
}
|
|
</MudStack>
|
|
</MudStack>
|
|
|
|
<MudSlider T="double"
|
|
Min="0"
|
|
Max="@(Duration ?? 0D)"
|
|
Step="0.1"
|
|
Value="@CurrentTime"
|
|
ValueChanged="@OnSeek"
|
|
Disabled="!IsLoaded"
|
|
Class="deepdrft-audio-slider-seek"/>
|
|
|
|
<div class="deepdrft-audio-controls">
|
|
<MudIcon Icon="@GetVolumeIcon()" Class="deepdrft-audio-volume-icon"/>
|
|
<MudSlider T="double"
|
|
Min="0"
|
|
Max="1"
|
|
Step="0.01"
|
|
Value="@Volume"
|
|
ValueChanged="@OnVolumeChange"
|
|
Class="deepdrft-audio-slider"/>
|
|
</div>
|
|
</MudStack>
|
|
@if (!string.IsNullOrEmpty(ErrorMessage))
|
|
{
|
|
<MudAlert Severity="Severity.Error" ShowCloseIcon="true" CloseIconClicked="ClearError">
|
|
@ErrorMessage
|
|
</MudAlert>
|
|
}
|
|
</MudPaper>
|