This repository has no description
1<script lang="ts">
2 import User from "$lib/components/ui/User.svelte";
3 import RepoCard from "$lib/components/repo/RepoCard.svelte";
4 import TimelineCard from "./TimelineCard.svelte";
5 import { relativeTime } from "$lib/format";
6 import { toRepoCard, repoHref } from "./mappers";
7 import type { RepoEvent } from "$lib/api/lexicons/types/sh/tangled/feed/getTimeline";
8
9 let { event, eventAt }: { event: RepoEvent; eventAt: string } = $props();
10</script>
11
12<TimelineCard>
13 {#snippet header()}
14 <User handle={event.repo.owner.handle} did={event.repo.owner.did} />
15 {#if event.source}
16 <span>forked</span>
17 <a href={repoHref(event.source)} class="text-foreground-default"
18 >{event.source.owner.handle}/{event.source.slug}</a
19 >
20 <span>to {event.repo.slug}</span>
21 {:else}
22 <span>created {event.repo.slug}</span>
23 {/if}
24 <span class="text-foreground-subtle">{relativeTime(eventAt)}</span>
25 {/snippet}
26
27 <RepoCard
28 repo={toRepoCard(event.repo)}
29 border={false}
30 shadow={false}
31 background={false}
32 padding="none"
33 />
34</TimelineCard>