Files
pages/src/routes/blog/+page.svelte

36 lines
1.1 KiB
Svelte
Raw Normal View History

2026-01-23 17:26:52 +01:00
<script lang="ts">
import Banner2 from "$lib/banner2.svelte";
import Content from "$lib/viewport/content.svelte";
2026-01-29 16:42:08 +01:00
import Gallery, { type GalleryEntry } from "$lib/lists/gallery.svelte";
import { posts, type BlogPostLink } from "./posts";
2026-01-29 16:42:08 +01:00
let entries: GalleryEntry[] = posts.map(mapEntries);
2026-01-29 16:42:08 +01:00
function mapEntries(entry: BlogPostLink, index: number): GalleryEntry {
2026-01-31 20:24:26 +01:00
let banner = "";
if (entry.post.banner && entry.post.banner !== "") {
banner = `/blog/${entry.key}/${entry.post.banner}`;
}
2026-01-29 16:42:08 +01:00
return {
title: `${entry.post.title}`,
subtitle: `#${(posts.length - index).toString().padStart(2, '0')} // ${entry.post.date}, ${entry.post.time}`,
2026-01-31 20:24:26 +01:00
img: banner,
link: `/blog/${entry.key}/`,
imgAlt: `Preview image for ${entry.post.title}`,
2026-01-29 16:42:08 +01:00
};
}
2026-01-23 17:26:52 +01:00
</script>
<svelte:head>
<title>Blog | denizk0461</title>
</svelte:head>
<Content>
<Banner2
2026-01-29 19:27:42 +01:00
title="Blog"
banner="robert.webp"
bannerAlt="View at a tram bridge rising and then curving to the left." />
2026-01-23 17:26:52 +01:00
2026-01-29 16:42:08 +01:00
<Gallery entries={entries} reverseTextOrder />
2026-01-23 17:26:52 +01:00
</Content>