flotilla/src/app/components/CalendarEventMeta.svelte

34 lines
995 B
Svelte
Raw Normal View History

<script lang="ts">
import type {TrustedEvent} from "@welshman/util"
2026-07-28 16:16:26 +00:00
import {TimeEvent} from "@welshman/domain"
2025-09-10 22:26:39 +00:00
import UserCircle from "@assets/icons/user-circle.svg?dataurl"
import MapPoint from "@assets/icons/map-point.svg?dataurl"
import Icon from "@lib/components/Icon.svelte"
2026-07-28 16:16:26 +00:00
import {reader} from "@app/core"
import ProfileLink from "@app/components/ProfileLink.svelte"
type Props = {
event: TrustedEvent
2025-04-15 18:03:27 +00:00
url: string
}
2025-04-15 18:03:27 +00:00
const {event, url}: Props = $props()
2026-07-28 16:16:26 +00:00
const timeEvent = reader(TimeEvent)(event)
const location = timeEvent.location()
</script>
2025-03-17 16:53:14 +00:00
<div class="flex min-w-0 flex-col gap-1 text-sm opacity-75">
<span class="flex items-center gap-1">
2025-09-10 22:26:39 +00:00
<Icon icon={UserCircle} size={4} />
2025-04-15 18:03:27 +00:00
Posted by <ProfileLink pubkey={event.pubkey} {url} />
</span>
2026-07-28 16:16:26 +00:00
{#if location}
2025-03-18 22:36:52 +00:00
<span class="flex items-start gap-1">
2025-09-10 22:26:39 +00:00
<Icon icon={MapPoint} class="mt-[2px]" size={4} />
2026-07-28 16:16:26 +00:00
<span class="wrap-break-word">{location}</span>
2025-03-17 16:53:14 +00:00
</span>
{/if}
</div>