diff --git a/front/src/components/audio/track/Table.vue b/front/src/components/audio/track/Table.vue index e4f0c9d2a..c3d46306a 100644 --- a/front/src/components/audio/track/Table.vue +++ b/front/src/components/audio/track/Table.vue @@ -5,6 +5,7 @@ import { useI18n } from 'vue-i18n' import { clone, uniqBy } from 'lodash-es' import { ref, computed } from 'vue' import { useStore } from '~/store' +import { sortedUniq } from 'lodash-es' import axios from 'axios' @@ -67,7 +68,7 @@ const props = withDefaults(defineProps(), { filters: () => ({}), nextUrl: null, - paginateResults: true, + paginateResults: false, total: 0, page: 1, paginateBy: 25, @@ -88,6 +89,8 @@ const allTracks = computed(() => { : tracks }) +const paginateResults = computed(() => props.paginateResults && allTracks.value.length < props.paginateBy) + const { t } = useI18n() const store = useStore() @@ -243,17 +246,13 @@ const updatePage = (page: number) => { :is-podcast="isPodcast" /> -
- -
+
router.resolve({ } })?.href) +const totalDuration = computed(() => track.value?.uploads[0]?.duration ?? 0) + const { t } = useI18n() const labels = computed(() => ({ title: t('components.library.TrackBase.title'), @@ -160,27 +165,14 @@ watch(showDeleteModal, (newValue) => {
- - - - - + +
@@ -293,6 +285,34 @@ watch(showDeleteModal, (newValue) => { +
+ +
+ + {{ t('components.library.TrackBase.subtitle.with-uploader') }} + + + {{ t('components.library.TrackBase.subtitle.without-uploader') }} + + + + +
+
+ + { - - - { + + + diff --git a/front/src/style/components/_track_table.scss b/front/src/style/components/_track_table.scss index 034e6f941..272170116 100644 --- a/front/src/style/components/_track_table.scss +++ b/front/src/style/components/_track_table.scss @@ -60,14 +60,13 @@ vertical-align: middle; } .ui.artist-track.mini.image { - top: auto; - bottom: 0; - position: absolute; - margin: auto; + height: 40px; + margin-right: 8px; + margin-top: 4px; } .image.left.floated.column { - width: 51px; + } }