From a805501be2d8df66824c858af0b6b91ba49aec7a Mon Sep 17 00:00:00 2001 From: Melvin Chia Date: Tue, 30 Dec 2025 22:16:43 +0800 Subject: [PATCH] feat(ui): enhance changelog entries to only expand the latest entry --- .../components/ChangelogEntries.tsx | 30 ++++++++++++------- .../04.progress/components/Version.tsx | 17 +++++++---- 2 files changed, 32 insertions(+), 15 deletions(-) diff --git a/docs/src/contents/04.progress/components/ChangelogEntries.tsx b/docs/src/contents/04.progress/components/ChangelogEntries.tsx index f925e10d3..b8a8a2747 100644 --- a/docs/src/contents/04.progress/components/ChangelogEntries.tsx +++ b/docs/src/contents/04.progress/components/ChangelogEntries.tsx @@ -1,3 +1,4 @@ +/* eslint-disable react-compiler/react-compiler */ import mdxListCounts from 'virtual:mdx-list-counts' import { components } from '@/components/MdxComponents' @@ -30,19 +31,28 @@ const entries = Object.entries( })) function ChangelogEntries() { + let isFirst = true + return (
{entries.map(({ year, versions }) => - versions.map(({ week, Component, liCount }) => ( - - - - )) + versions.map(({ week, Component, liCount }) => { + const first = isFirst + + isFirst = false + + return ( + + + + ) + }) )}
) diff --git a/docs/src/contents/04.progress/components/Version.tsx b/docs/src/contents/04.progress/components/Version.tsx index 0e8ffe95e..fdc1eab27 100644 --- a/docs/src/contents/04.progress/components/Version.tsx +++ b/docs/src/contents/04.progress/components/Version.tsx @@ -11,17 +11,19 @@ function Version({ year = dayjs().year(), week, liCount, + isLatest, children }: { prefix?: string year?: number week: number liCount?: number + isLatest: boolean children: React.ReactNode }) { - const [collapsed, setCollapsed] = useState(true) + const [collapsed, setCollapsed] = useState(!isLatest) - const [debouncedCollapsed, setDebouncedCollapsed] = useState(true) + const [debouncedCollapsed, setDebouncedCollapsed] = useState(!isLatest) const timeoutRef = useRef(null) @@ -64,9 +66,14 @@ function Version({ className="hover:bg-bg-100 dark:hover:bg-bg-800/50 flex cursor-pointer items-center justify-between gap-4 p-4 transition-colors select-none" onClick={toggleCollapsed} > -
-

{version}

- {liCount} entries +
+
+ +
+
+

{version}

+ {liCount} entries +