Newer
Older
class="tw-flex tw-items-center tw-justify-between tw-mb-10 tw-border-solid tw-border-gray-200 tw-border-0 tw-border-b tw-pb-6"
<h1 class="tw-text-5xl tw-font-black tw-m-0">
<ATimeEditInfo
v-if="editingMetadata"
:edit-info="{
time: editingMetadata.updatedAt ?? editingMetadata.createdAt,
author: editingMetadata.updatedBy ?? editingMetadata.createdBy,
}"
:type="editingMetadata.updatedAt ? 'modified' : 'created'"
class="tw-text-xs tw-block tw-mb-2 tw-font-normal"
/>
<SafeHTML
v-if="lead"
as="small"
:html="lead"
sanitize-preset="inline-noninteractive"
class="tw-block tw-text-gray-300 tw-font-bold tw-text-4xl tw-mb-0"
<span data-testid="page-header:title">
<slot name="title">{{ title }}</slot>
</span>
<div class="tw-flex tw-justify-end tw-gap-4">
<slot />
</div>
<script lang="ts" setup>
import SafeHTML from '@/components/generic/SafeHTML'
import { EditingMetaData } from '@/types'
import ATimeEditInfo from '@/components/generic/ATimeEditInfo.vue'
defineProps<{
title?: string
lead?: string
editingMetadata?: EditingMetaData