chore(front): track images in track rows

This commit is contained in:
ArneBo 2025-02-06 19:05:00 +01:00
parent 2c56c11d4e
commit 693d9735f3
3 changed files with 19 additions and 12 deletions

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { Track, Artist, Album, Playlist, Library, Channel, Actor } from '~/types'
import type { Track, SimpleArtist as Artist, Album, Playlist, Library, Channel, Actor } from '~/types'
import type { PlayOptionsProps } from '~/composables/audio/usePlayOptions'
import { ref, computed } from 'vue'
@ -86,7 +86,7 @@ const actionsButtonLabel = computed(() => t('components.audio.podcast.MobileRow.
class="ui artist-track mini image"
>
<img
v-else-if="!!track.artist_credit.length && track.artist_credit[0].artist.cover"
v-else-if="!!track.artist_credit.length && track.artist_credit[0].artist.attachment_cover"
v-lazy="getArtistCoverUrl(track.artist_credit)"
alt=""
class="ui artist-track mini image"

View File

@ -90,6 +90,18 @@ await fetchData()
alt=""
class="ui artist-track mini image"
>
<img
v-if="track.album?.cover?.urls.original"
v-lazy="store.getters['instance/absoluteUrl'](track.album.cover.urls.medium_square_crop)"
alt=""
class="ui artist-track mini image"
>
<img
v-else-if="track.artist_credit.length && track.artist_credit[0].artist.attachment_cover"
v-lazy="getArtistCoverUrl(track.artist_credit)"
alt=""
class="ui artist-track mini image"
>
<img
v-else-if="defaultCover"
v-lazy="store.getters['instance/absoluteUrl'](defaultCover.urls.medium_square_crop)"
@ -126,6 +138,7 @@ await fetchData()
class="play-button basic icon"
:dropdown-only="true"
:is-playable="track.is_playable"
discrete
:dropdown-icon-classes="[
'ellipsis',
'vertical',

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { Track, Artist, Album, Playlist, Library, Channel, Actor } from '~/types'
import type { Track, SimpleArtist as Artist, Album, Playlist, Library, Channel, Actor } from '~/types'
import type { PlayOptionsProps } from '~/composables/audio/usePlayOptions'
import { ref, computed } from 'vue'
@ -74,20 +74,14 @@ const actionsButtonLabel = computed(() => t('components.audio.track.MobileRow.bu
@click.prevent.exact="activateTrack(track, index)"
>
<img
v-if="track.album?.cover?.urls.original"
v-lazy="store.getters['instance/absoluteUrl'](track.album.cover.urls.medium_square_crop)"
alt=""
class="ui artist-track mini image"
>
<img
v-else-if="track.cover"
v-if="track.cover"
v-lazy="store.getters['instance/absoluteUrl'](track.cover.urls.medium_square_crop)"
alt=""
class="ui artist-track mini image"
>
<img
v-else-if="track.artist_credit.length && track.artist_credit[0].artist.cover"
v-lazy="getArtistCoverUrl(track.artist_credit)"
v-else-if="track.album?.cover?.urls.original"
v-lazy="store.getters['instance/absoluteUrl'](track.album.cover.urls.medium_square_crop)"
alt=""
class="ui artist-track mini image"
>