fix(front): federated profile view

This commit is contained in:
ArneBo 2025-04-09 16:31:21 +02:00
parent 817787db06
commit 22e9e3f363
2 changed files with 10 additions and 13 deletions

View File

@ -11,7 +11,7 @@ import AlbumWidget from '~/components/album/Widget.vue'
import RadioButton from '~/components/radios/Button.vue'
import Layout from '~/components/ui/Layout.vue'
import Spacer from '~/components/ui/Spacer.vue'
import Heading from '~/components/ui/Header.vue'
import Header from '~/components/ui/Header.vue'
interface Props {
object?: Actor
@ -31,12 +31,9 @@ const { t } = useI18n()
<Layout
stack
>
<Heading
align-left
page-heading
:columns-per-item="4"
<Header
:h1="t('views.auth.ProfileBase.link.overview')"
no-items
page-heading
>
<template #action>
<radio-button
@ -47,11 +44,11 @@ const { t } = useI18n()
:client-only="true"
/>
</template>
</Heading>
</Header>
<track-widget
:url="'history/listenings/'"
:filters="{ scope: `actor:${object?.full_username}`, ordering: '-creation_date', ...qualityFilters}"
:filters="{ username: object?.preferred_username, domain: object?.domain, ordering: '-creation_date', playable: true, ...qualityFilters}"
:websocket-handlers="['Listen']"
:title="t('components.library.Home.header.recentlyListened')"
@count="recentActivity = $event"
@ -59,18 +56,18 @@ const { t } = useI18n()
<Spacer :size="64" />
<track-widget
:url="'favorites/tracks/'"
:filters="{scope: `actor:${object?.full_username}`, ordering: '-creation_date'}"
:filters="{ username: object?.preferred_username ?? '', domain: object?.domain ?? '', playable: true, ordering: '-creation_date'}"
:title="t('components.library.Home.header.recentlyFavorited')"
/>
<Spacer />
<playlist-widget
:url="'playlists/'"
:filters="{scope: `actor:${object?.full_username}`, playable: true, ordering: '-modification_date'}"
:filters="{ username: object?.preferred_username, domain: object?.domain, playable: true, ordering: '-modification_date'}"
:title="t('views.auth.ProfileActivity.header.playlists')"
/>
<Spacer />
<album-widget
:filters="{scope: `actor:${object?.full_username}`, playable: true, ordering: '-creation_date', ...qualityFilters}"
:filters="{ username: object?.preferred_username, domain: object?.domain, playable: true, ordering: '-creation_date', ...qualityFilters}"
:title="t('components.library.Home.header.recentlyAdded')"
/>
</Layout>

View File

@ -145,12 +145,12 @@ const isOpen = useModal('artist-description').isOpen
:style="defaultAvatarStyle"
class="ui avatar circular label"
>
{{ object?.full_username?.[0] || "" }}
{{ fullUsername[0] || "" }}
</span>
</template>
<Layout flex>
<span style="grid-column: 1 / -1">
{{ object?.full_username }}
{{ fullUsername }}
<Button
icon="bi-copy"
style="margin-left: 8px;"