feat(calendar): markdown descriptions, grid & header polish
Deploy / verify (push) Successful in 49s
Deploy / deploy (push) Successful in 50s

- description field rendered as Markdown (marked.parse + prose)
- month label left/larger, nav arrows grouped right
- weekday headers colored (himmel/stein)
- day cells weekend/weekday coloring
- remove pl-[4.75rem] indent from accordion body

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Peter Meier
2026-05-12 20:53:51 +02:00
parent 7ea23531e9
commit 10fb2a3ef6
@@ -12,6 +12,7 @@
type CalendarItemICS, type CalendarItemICS,
} from "$lib/calendar-ics"; } from "$lib/calendar-ics";
import { getCmsImageUrl, extractCmsImageField } from "$lib/rusty-image"; import { getCmsImageUrl, extractCmsImageField } from "$lib/rusty-image";
import { marked } from "$lib/markdown-safe";
import "$lib/iconify-offline"; import "$lib/iconify-offline";
import Icon from "@iconify/svelte"; import Icon from "@iconify/svelte";
import ImageModal from "$lib/components/ImageModal.svelte"; import ImageModal from "$lib/components/ImageModal.svelte";
@@ -686,7 +687,7 @@
/> />
</summary> </summary>
<div <div
class="px-3 pb-3 pt-0 pl-[4.75rem] text-sm text-stein-700 space-y-2" class="px-3 pb-3 pt-0 text-sm text-stein-700 space-y-2"
> >
<div <div
class="text-[11px] uppercase tracking-wide text-stein-500 -mt-1" class="text-[11px] uppercase tracking-wide text-stein-500 -mt-1"
@@ -694,11 +695,9 @@
{relativeDays(item.start)} {relativeDays(item.start)}
</div> </div>
{#if item.description} {#if item.description}
<p <div class="prose prose-sm prose-stein max-w-none font-light leading-relaxed mt-0 mb-2">
class="font-light text-stein-700 m-0! leading-relaxed" {@html marked.parse(item.description)}
> </div>
{item.description}
</p>
{/if} {/if}
{#if item.tags && item.tags.length > 2} {#if item.tags && item.tags.length > 2}
<div class="flex flex-wrap gap-1"> <div class="flex flex-wrap gap-1">