fix(cms): fix grid cell vertical stacking; add per-track regenerate buttons

MixBrowser WaveformCell: wrap icon+button in MudStack Row. SessionBrowser
HeroCell: split into two SpecialActionColumns (thumb + button). AlbumBrowser
track table: always show regenerate button for Profile and High-res.
This commit is contained in:
daniel-c-harvey
2026-06-17 15:15:23 -04:00
parent 007033e7e8
commit fc32791cea
3 changed files with 57 additions and 42 deletions
@@ -85,13 +85,16 @@ else
protected override void OnInitialized()
{
_specialColumns = new[] { new SpecialActionColumn("Hero", HeroCell) };
_specialColumns = new[]
{
new SpecialActionColumn("Hero", HeroThumbCell),
new SpecialActionColumn("", HeroButtonCell),
};
base.OnInitialized();
}
// Per-row cell for the dedicated "Hero" column: thumbnail preview plus set/replace upload button with
// progress. Recovers the typed SessionRow via RowFor; skips rendering for a release not on the page.
private RenderFragment<ReleaseDto> HeroCell => release =>@<text>
// Per-row cell for the "Hero" thumbnail column: just the image preview div.
private RenderFragment<ReleaseDto> HeroThumbCell => release =>@<text>
@{ var row = RowFor(release); }
@if (row is not null)
{
@@ -103,6 +106,14 @@ else
{
<div class="cms-album-thumb cms-album-thumb--fallback"></div>
}
}
</text>;
// Per-row cell for the "Hero Image" upload button column: set/replace upload button with progress.
private RenderFragment<ReleaseDto> HeroButtonCell => release =>@<text>
@{ var row = RowFor(release); }
@if (row is not null)
{
<MudFileUpload T="IBrowserFile"
Accept="image/*"
FilesChanged="@(file => UploadHeroAsync(row, file))"