-
-
+
-
+
diff --git a/front/src/components/common/UserLink.vue b/front/src/components/common/UserLink.vue
index 4420dd05f..a2e106d99 100644
--- a/front/src/components/common/UserLink.vue
+++ b/front/src/components/common/UserLink.vue
@@ -34,33 +34,22 @@ const defaultAvatarStyle = computed(() => ({ backgroundColor: `#${userColor.valu
:solid="!discrete"
:round="!discrete"
>
-
-
-
-
- {{ user.username[0] }}
-
-
-
- {{ t('components.common.UserLink.link.username', {username: user.username}) }}
-
+
+
+
+ {{ user.username[0] }}
+
+
+
+ {{ t('components.common.UserLink.link.username', {username: user.username}) }}
-
-
diff --git a/front/src/components/playlists/Card.vue b/front/src/components/playlists/Card.vue
index 9af8e3949..080f3ea17 100644
--- a/front/src/components/playlists/Card.vue
+++ b/front/src/components/playlists/Card.vue
@@ -58,6 +58,7 @@ const goToPlaylist = () => {
{
-
+
{{ t('components.playlists.Card.meta.tracks', playlist.tracks_count) }}
{
}
.play-button {
- position: absolute;
- top: 214px;
+ top: 16px;
right: 16px;
}
.playlist-meta {
display: flex;
- align-self: center;
}
.playlist-action {
diff --git a/front/src/components/radios/Button.vue b/front/src/components/radios/Button.vue
index 188a453ae..5eb98eac6 100644
--- a/front/src/components/radios/Button.vue
+++ b/front/src/components/radios/Button.vue
@@ -81,9 +81,9 @@ const toggleRadio = () => {
props.customRadio?.id ?? null)
@@ -55,9 +55,10 @@ const customRadioId = computed(() => props.customRadio?.id ?? null)
+
props.customRadio?.id ?? null)
>
{{ radio.description }}
-
-
+
props.customRadio?.id ?? null)
@@ -97,7 +97,9 @@ const customRadioId = computed(() => props.customRadio?.id ?? null)
v-if="radio.user"
discrete
:user="radio.user"
+ :avatar="false"
/>
+
props.customRadio?.id ?? null)
-
+
props.customRadio?.id ?? null)
diff --git a/front/src/components/ui/Card.vue b/front/src/components/ui/Card.vue
index a681e4507..a919eed48 100644
--- a/front/src/components/ui/Card.vue
+++ b/front/src/components/ui/Card.vue
@@ -146,10 +146,6 @@ const attributes = computed(() =>
}
}
- &:has(>.image) {
- text-align: center;
- }
-
>.image {
overflow: hidden;
border-radius: var(--fw-border-radius) var(--fw-border-radius) 0 0;
@@ -225,7 +221,6 @@ const attributes = computed(() =>
>.tags {
padding: 0 var(--fw-card-padding);
margin-top: 8px;
- align-self: center;
}
>.content {
@@ -233,14 +228,16 @@ const attributes = computed(() =>
/* Consider making all line height, vertical paddings, margins and borders,
a multiple of a global vertical rhythm so that side-by-side lines coincide */
line-height: 24px;
- margin-top: 16px;
+ margin-top: 8px;
}
>.footer {
padding: calc(var(--fw-card-padding) - 4px);
display: flex;
- align-items: center;
+ gap: 4px;
+ align-items: end;
font-size: 0.8125rem;
+ margin-top: 16px;
>.options-button {
margin-left: auto;
diff --git a/front/src/components/ui/button/Options.vue b/front/src/components/ui/button/Options.vue
index dc0a4462f..84ae29691 100644
--- a/front/src/components/ui/button/Options.vue
+++ b/front/src/components/ui/button/Options.vue
@@ -3,18 +3,21 @@ import Button from '../Button.vue'
interface Props {
isSquare?: boolean
+ isGhost?: boolean
}
const props = withDefaults(defineProps(), {
- isSquare: false
+ isSquare: false,
+ isGhost: false
})
diff --git a/front/src/components/ui/button/options.scss b/front/src/components/ui/button/options.scss
index 5aa52ad41..11fe7e11f 100644
--- a/front/src/components/ui/button/options.scss
+++ b/front/src/components/ui/button/options.scss
@@ -3,6 +3,11 @@
will-change: transform;
transition: all .2s ease;
font-size: 0.6rem !important;
- padding: 0.6em !important;
+ padding: 0.6em;
+ &.is-ghost {
+ position: absolute;
+ bottom: 0px;
+ right: 0px;
+ }
}
}