{@artist.name} <.async_result :let={artist_info} assign={@artist_info}> <:loading>
{gettext("Loading play count")} <.icon name="hero-arrow-path" class="-mt-1 h-5 w-5 animate-spin" aria-hidden="true" data-slot="icon" />
<:failed :let={_failure}>
<.icon name="hero-exclamation-triangle" class="-mt-1 mr-1 ml-2 h-5 w-5" aria-hidden="true" data-slot="icon" /> {gettext("Error loading play count")}
0} class="ml-2"> {gettext("Number of scrobbles")} <.round_badge text={artist_info.play_count} />

<.async_result :let={artist_info} assign={@artist_info}> <:loading>
{gettext("Loading biography")}
<:failed :let={_failure}>
<.icon name="hero-exclamation-triangle" class="-mt-1 mr-1 h-5 w-5" aria-hidden="true" data-slot="icon" /> {gettext("Error loading biography")}
{gettext("Biography")} {render_bio(@artist_info.result.bio)}
<.grid :if={Enum.any?(@artist_records.collection)} title={gettext("Collection")} id="collection" records={@artist_records.collection} record_path={fn record -> ~p"/collection/#{record}" end} /> <.grid :if={Enum.any?(@artist_records.wishlist)} title={gettext("Wishlist")} id="wishlist" records={@artist_records.wishlist} record_path={fn record -> ~p"/wishlist/#{record}" end} />