@* A track's artists, comma-separated, each linked to Spotify where we have its id. *@ @* Names and ids arrive positionally parallel from the bot, so an id is matched to a name *@ @* by index - a shorter id list (a play recorded before they were stored) just means the *@ @* trailing names go unlinked. *@ @for (var i = 0; i < Names.Count; i++) { if (i > 0) { , } } @code { [Parameter] [EditorRequired] public required IReadOnlyList Names { get; set; } [Parameter] public IReadOnlyList Ids { get; set; } = []; private string? IdAt(int index) => index < Ids.Count ? Ids[index] : null; }