frontend/components/profiles/profile-header.vue

38 lines
1,019 B
Vue
Raw Normal View History

2024-12-02 16:07:52 +01:00
<template>
<CardHeader class="relative w-full">
2024-12-02 16:07:52 +01:00
<div class="bg-muted rounded overflow-hidden h-48 md:h-72 w-full">
<img
v-if="header"
:src="header"
alt=""
class="object-cover w-full h-full"
/>
2024-12-02 16:07:52 +01:00
<!-- Shadow overlay at the bottom -->
<div
class="absolute bottom-0 w-full h-1/3 bg-gradient-to-b from-black/0 to-black/40"
></div>
2024-12-02 16:07:52 +01:00
</div>
<div
class="absolute bottom-0 translate-y-1/3 left-4 flex flex-row items-start gap-2"
>
<Avatar
size="lg"
class="border"
:src="avatar"
:name="displayName"
/>
2024-12-02 16:07:52 +01:00
</div>
</CardHeader>
</template>
<script lang="ts" setup>
import { CardHeader } from "~/components/ui/card";
import Avatar from "./avatar.vue";
2024-12-02 16:07:52 +01:00
defineProps<{
header: string;
avatar: string;
displayName: string;
2024-12-02 16:07:52 +01:00
}>();
</script>