diff --git a/web-src/src/components/ListAlbums.vue b/web-src/src/components/ListAlbums.vue index 14f86ecf..9050c2d5 100644 --- a/web-src/src/components/ListAlbums.vue +++ b/web-src/src/components/ListAlbums.vue @@ -7,26 +7,31 @@ v-text="item.index" /> </div> - <div v-else class="media is-align-items-center" @click="open(item.item)"> + <div + v-else + class="media is-align-items-center is-clickable mb-0" + @click="open(item.item)" + > <cover-artwork v-if="settingsStore.show_cover_artwork_in_album_lists" :url="item.item.artwork_url" :artist="item.item.artist" :album="item.item.name" - class="media-left is-clickable fd-has-shadow fd-cover fd-cover-small-image" + class="media-left fd-has-shadow fd-cover fd-cover-small-image" /> - - <div class="media-content is-clickable"> - <p class="title is-6" v-text="item.item.name" /> - <p - class="subtitle is-7 has-text-grey has-text-weight-bold" - v-text="item.item.artist" - /> - <p - v-if="item.item.date_released && item.item.media_kind === 'music'" - class="subtitle is-7 has-text-grey" - v-text="$filters.date(item.item.date_released)" - /> + <div class="media-content"> + <div class="content is-small"> + <div class="is-size-6 has-text-weight-bold" v-text="item.item.name" /> + <div + class="has-text-grey has-text-weight-bold" + v-text="item.item.artist" + /> + <div + v-if="item.item.date_released && item.item.media_kind === 'music'" + class="has-text-grey" + v-text="$filters.date(item.item.date_released)" + /> + </div> </div> <div class="media-right"> <a @click.prevent.stop="open_dialog(item.item)"> diff --git a/web-src/src/components/ListAlbumsSpotify.vue b/web-src/src/components/ListAlbumsSpotify.vue index 2f2dfda0..00834763 100644 --- a/web-src/src/components/ListAlbumsSpotify.vue +++ b/web-src/src/components/ListAlbumsSpotify.vue @@ -1,6 +1,9 @@ <template> <template v-for="item in items" :key="item.id"> - <div class="media is-align-items-center is-clickable" @click="open(item)"> + <div + class="media is-align-items-center is-clickable mb-0" + @click="open(item)" + > <div v-if="settingsStore.show_cover_artwork_in_album_lists" class="media-left" @@ -12,18 +15,18 @@ class="fd-has-shadow fd-cover fd-cover-small-image" /> </div> - <div class="media-content is-clipped"> - <p class="title is-6" v-text="item.name" /> - <p - class="subtitle is-7 has-text-grey has-text-weight-bold" - v-text="item.artists[0]?.name" - /> - <p - class="subtitle is-7 has-text-grey" - v-text=" - [item.album_type, $filters.date(item.release_date)].join(', ') - " - /> + <div class="media-content"> + <div class="content is-small"> + <div class="is-size-6 has-text-weight-bold" v-text="item.name" /> + <div + class="has-text-weight-bold has-text-grey" + v-text="item.artists[0]?.name" + /> + <div + class="has-text-grey" + v-text="$filters.date(item.release_date)" + /> + </div> </div> <div class="media-right"> <a @click.prevent.stop="open_dialog(item)"> diff --git a/web-src/src/components/ListArtists.vue b/web-src/src/components/ListArtists.vue index 16ff8593..268754ab 100644 --- a/web-src/src/components/ListArtists.vue +++ b/web-src/src/components/ListArtists.vue @@ -9,8 +9,12 @@ /> </div> </div> - <div v-else class="media is-align-items-center" @click="open(item.item)"> - <div class="media-content is-clickable is-clipped"> + <div + v-else + class="media is-align-items-center is-clickable mb-0" + @click="open(item.item)" + > + <div class="media-content"> <p class="title is-6" v-text="item.item.name" /> </div> <div class="media-right"> diff --git a/web-src/src/components/ListArtistsSpotify.vue b/web-src/src/components/ListArtistsSpotify.vue index d8fcbf21..9010d0b7 100644 --- a/web-src/src/components/ListArtistsSpotify.vue +++ b/web-src/src/components/ListArtistsSpotify.vue @@ -1,7 +1,7 @@ <template> <template v-for="item in items" :key="item.id"> - <div class="media is-align-items-center"> - <div class="media-content is-clickable is-clipped" @click="open(item)"> + <div class="media is-align-items-center mb-0"> + <div class="media-content is-clickable" @click="open(item)"> <p class="title is-6" v-text="item.name" /> </div> <div class="media-right"> diff --git a/web-src/src/components/ListComposers.vue b/web-src/src/components/ListComposers.vue index e87fe36f..59e4b403 100644 --- a/web-src/src/components/ListComposers.vue +++ b/web-src/src/components/ListComposers.vue @@ -9,8 +9,12 @@ /> </div> </div> - <div v-else class="media is-align-items-center" @click="open(item.item)"> - <div class="media-content is-clickable is-clipped"> + <div + v-else + class="media is-align-items-center is-clickable mb-0" + @click="open(item.item)" + > + <div class="media-content"> <p class="title is-6" v-text="item.item.name" /> </div> <div class="media-right"> diff --git a/web-src/src/components/ListDirectories.vue b/web-src/src/components/ListDirectories.vue index cc8149ef..211ddd61 100644 --- a/web-src/src/components/ListDirectories.vue +++ b/web-src/src/components/ListDirectories.vue @@ -1,5 +1,5 @@ <template> - <div v-if="$route.query.directory" class="media is-align-items-center"> + <div v-if="$route.query.directory" class="media is-align-items-center mb-0"> <mdicon class="icon media-left is-clickable" name="chevron-left" @@ -21,9 +21,12 @@ </div> </div> <template v-for="item in items" :key="item.path"> - <div class="media is-align-items-center" @click="open(item)"> - <mdicon class="media-left is-clickable icon" name="folder" /> - <div class="media-content is-clickable is-clipped"> + <div + class="media is-align-items-center is-clickable mb-0" + @click="open(item)" + > + <mdicon class="media-left icon" name="folder" /> + <div class="media-content"> <p class="title is-6" v-text="item.name" /> </div> <div class="media-right"> diff --git a/web-src/src/components/ListGenres.vue b/web-src/src/components/ListGenres.vue index 90fbe623..5b496fb8 100644 --- a/web-src/src/components/ListGenres.vue +++ b/web-src/src/components/ListGenres.vue @@ -9,8 +9,12 @@ /> </div> </div> - <div v-else class="media is-align-items-center" @click="open(item.item)"> - <div class="media-content is-clickable is-clipped"> + <div + v-else + class="media is-align-items-center is-clickable mb-0" + @click="open(item.item)" + > + <div class="media-content"> <p class="title is-6" v-text="item.item.name" /> </div> <div class="media-right"> diff --git a/web-src/src/components/ListPlaylists.vue b/web-src/src/components/ListPlaylists.vue index 1c924ca9..3c9f21cf 100644 --- a/web-src/src/components/ListPlaylists.vue +++ b/web-src/src/components/ListPlaylists.vue @@ -1,8 +1,11 @@ <template> <template v-for="item in items" :key="item.itemId"> - <div class="media is-align-items-center" @click="open(item.item)"> - <mdicon class="media-left is-clickable icon" :name="icon(item.item)" /> - <div class="media-content is-clickable is-clipped"> + <div + class="media is-align-items-center is-clickable mb-0" + @click="open(item.item)" + > + <mdicon class="media-left icon" :name="icon(item.item)" /> + <div class="media-content"> <p class="title is-6" v-text="item.item.name" /> </div> <div class="media-right"> diff --git a/web-src/src/components/ListPlaylistsSpotify.vue b/web-src/src/components/ListPlaylistsSpotify.vue index 8d507165..7ecec34e 100644 --- a/web-src/src/components/ListPlaylistsSpotify.vue +++ b/web-src/src/components/ListPlaylistsSpotify.vue @@ -1,9 +1,14 @@ <template> <template v-for="item in items" :key="item.id"> - <div class="media is-align-items-center"> - <div class="media-content is-clickable is-clipped" @click="open(item)"> - <p class="title is-6" v-text="item.name" /> - <p class="subtitle is-7" v-text="item.owner.display_name" /> + <div class="media is-align-items-center mb-0"> + <div class="media-content is-clickable" @click="open(item)"> + <div class="content is-small"> + <div class="is-size-6 has-text-weight-bold" v-text="item.name" /> + <div + class="has-text-weight-bold has-text-grey" + v-text="item.owner.display_name" + /> + </div> </div> <div class="media-right"> <a @click.prevent.stop="open_dialog(item)"> diff --git a/web-src/src/components/ListTracks.vue b/web-src/src/components/ListTracks.vue index 1ad689cb..49029f6c 100644 --- a/web-src/src/components/ListTracks.vue +++ b/web-src/src/components/ListTracks.vue @@ -9,35 +9,33 @@ </div> <div v-else - class="media is-align-items-center" + class="media is-align-items-center is-clickable mb-0" :class="{ 'with-progress': show_progress }" @click="play(item.item)" > - <mdicon - v-if="show_icon" - class="media-left icon is-clickable" - name="file-outline" - /> - <div class="media-content is-clipped"> - <p - class="title is-6" - :class="{ - 'has-text-grey': - item.item.media_kind === 'podcast' && item.item.play_count > 0 - }" - v-text="item.item.title" - /> - <p - class="subtitle is-7 has-text-grey has-text-weight-bold" - v-text="item.item.artist" - /> - <p class="subtitle is-7 has-text-grey" v-text="item.item.album" /> - <progress - v-if="show_progress && item.item.seek_ms > 0" - class="progress is-info" - :max="item.item.length_ms" - :value="item.item.seek_ms" - /> + <mdicon v-if="show_icon" class="media-left icon" name="file-outline" /> + <div class="media-content"> + <div class="content is-small"> + <div + class="is-size-6 has-text-weight-bold" + :class="{ + 'has-text-grey': + item.item.media_kind === 'podcast' && item.item.play_count > 0 + }" + v-text="item.item.title" + /> + <div + class="has-text-weight-bold has-text-grey" + v-text="item.item.artist" + /> + <div class="has-text-grey" v-text="item.item.album" /> + <progress + v-if="show_progress && item.item.seek_ms > 0" + class="progress is-info" + :max="item.item.length_ms" + :value="item.item.seek_ms" + /> + </div> </div> <div class="media-right"> <a @click.prevent.stop="open_dialog(item.item)"> diff --git a/web-src/src/components/ListTracksSpotify.vue b/web-src/src/components/ListTracksSpotify.vue index aa96bb6d..e0fc88b0 100644 --- a/web-src/src/components/ListTracksSpotify.vue +++ b/web-src/src/components/ListTracksSpotify.vue @@ -1,6 +1,6 @@ <template> <template v-for="item in items" :key="item.id"> - <div class="media is-align-items-center"> + <div class="media is-align-items-center mb-0"> <div class="media-content" :class="{ @@ -9,31 +9,33 @@ }" @click="play(item)" > - <p - class="title is-6" - :class="{ 'has-text-grey-light': !item.is_playable }" - v-text="item.name" - /> - <p - class="subtitle is-7 has-text-weight-bold" - :class="{ - 'has-text-grey': item.is_playable, - 'has-text-grey-light': !item.is_playable - }" - v-text="item.artists[0].name" - /> - <p class="subtitle is-7 has-text-grey" v-text="item.album.name" /> - <p v-if="!item.is_playable" class="subtitle is-7"> - (<span v-text="$t('list.spotify.not-playable-track')" /> - <span - v-if="item.restrictions?.reason" - v-text=" - $t('list.spotify.restriction-reason', { - reason: item.restrictions.reason - }) - " - />) - </p> + <div class="content is-small"> + <div + class="is-size-6 has-text-weight-bold" + :class="{ 'has-text-grey-light': !item.is_playable }" + v-text="item.name" + /> + <div + class="has-text-weight-bold" + :class="{ + 'has-text-grey': item.is_playable, + 'has-text-grey-light': !item.is_playable + }" + v-text="item.artists[0].name" + /> + <div class="has-text-grey" v-text="item.album.name" /> + <div v-if="!item.is_playable" class="has-text-grey"> + (<span v-text="$t('list.spotify.not-playable-track')" /> + <span + v-if="item.restrictions?.reason" + v-text=" + $t('list.spotify.restriction-reason', { + reason: item.restrictions.reason + }) + " + />) + </div> + </div> </div> <div class="media-right"> <a @click.prevent.stop="open_dialog(item)">