From d60bcf612848389180c15367a10b01babc0353f4 Mon Sep 17 00:00:00 2001 From: Julien Danjou Date: Wed, 13 May 2026 18:43:33 +0200 Subject: [PATCH] feat(changelog): group entries by day on the index Same-day entries now share a single date heading instead of each carrying its own date pill, so days with many releases (e.g. 6 on 2026-05-06) read as one batch rather than a stack of disconnected cards. Individual entries keep their permalinks. Closes MRGFY-7274 Co-Authored-By: Claude Opus 4.7 (1M context) Change-Id: I9d610f63923ae5e8206bff0011234f31f48a8149 --- src/components/changelog/ChangelogCard.astro | 25 ++----- .../changelog/ChangelogMarquee.astro | 26 +------- src/pages/changelog/index.astro | 60 ++++++++--------- src/util/changelog.ts | 65 +++++++++++-------- 4 files changed, 73 insertions(+), 103 deletions(-) diff --git a/src/components/changelog/ChangelogCard.astro b/src/components/changelog/ChangelogCard.astro index 4935b8ec70..bb0db4da55 100644 --- a/src/components/changelog/ChangelogCard.astro +++ b/src/components/changelog/ChangelogCard.astro @@ -1,20 +1,15 @@ --- import type { CollectionEntry } from 'astro:content'; -import { formatDate, getProductAccent, renderInlineMarkdown } from '~/util/changelog'; +import { getProductAccent, renderInlineMarkdown } from '~/util/changelog'; interface Props { entry: CollectionEntry<'changelog'>; } const { entry } = Astro.props; -const { title, description, date, tags } = entry.data; +const { title, description, tags } = entry.data; const primaryTag = tags[0]; const accent = getProductAccent(primaryTag); - -const monthDay = new Date(date).toLocaleDateString('en-US', { - month: 'short', - day: 'numeric', -}); ---
{description &&

{description}

} -
- - {tags.length > 0 && ( + {tags.length > 0 && ( +
{tags.map((t) => {t})}
- )} -
+
+ )}