<template> <NuxtLink class="w-full h-fit py-2 bg-white shadow-md border border-gray-200 rounded-md justify-start items-start flex" :class="allowNavigation ? '' : 'pointer-events-none'" :to="`${urlOverwrite ?? $route.path}/${data?.slug}`" > <h1 v-if="numberOverwrite != undefined" class="w-24 text-center text-black text-4xl my-auto"> {{ numberOverwrite }}. </h1> <h1 v-else class="w-24 text-center text-black text-4xl my-auto"> {{ new Date(data?.date ?? "").toLocaleString("de-DE", { day: "2-digit", }) }}. </h1> <div class="grow shrink basis-0 flex-col justify-center items-center flex"> <h1 class="w-full">{{ data?.title }}</h1> <p v-if="numberOverwrite != undefined" class="w-full text-[#5c5c5c]"> {{ new Date(data?.date ?? "").toLocaleString("de-DE", { day: "2-digit", month: "long", year: "numeric", minute: "2-digit", hour: "2-digit", }) }} </p> <p v-else class="w-full text-[#5c5c5c]"> {{ new Date(data?.date ?? "").toLocaleString("de-DE", { minute: "2-digit", hour: "2-digit", }) }} </p> <p class="w-full text-[#5c5c5c]"> {{ data?.description }} </p> </div> </NuxtLink> </template> <script setup lang="ts"> import type { PropType } from "vue"; import type BaseCollection from "../../types/collection/baseCollection"; defineProps({ data: Object as PropType<BaseCollection>, numberOverwrite: { type: Number, default: undefined }, allowNavigation: { type: Boolean, default: false }, urlOverwrite: { type: String, default: undefined }, }); </script>