From 8720261febde43648400bbd4281135ccc06fcf2d Mon Sep 17 00:00:00 2001 From: Kiet Ho Date: Thu, 5 Nov 2026 17:11:51 -0800 Subject: [PATCH 1/2] feat(desktop): restyle the release-notes sidebar card The card with an image is now a full-bleed dark card: the screenshot sits inset in its own frame, the title and date overlay a bottom gradient, and hover lifts the card, zooms the image and reveals a quiet minus dismiss button. The slot is inset 16px to line up with the sidebar icon column. --- .../SidebarCardSlot/SidebarCardSlot.tsx | 10 +- .../useReleaseNotesCard.tsx | 2 +- .../ui/src/components/ui/sidebar-card.tsx | 99 +++++++++++++++---- 3 files changed, 86 insertions(+), 25 deletions(-) diff --git a/apps/desktop/src/renderer/components/SidebarCardSlot/SidebarCardSlot.tsx b/apps/desktop/src/renderer/components/SidebarCardSlot/SidebarCardSlot.tsx index f58c04c021d..867f316127b 100644 --- a/apps/desktop/src/renderer/components/SidebarCardSlot/SidebarCardSlot.tsx +++ b/apps/desktop/src/renderer/components/SidebarCardSlot/SidebarCardSlot.tsx @@ -44,11 +44,11 @@ export function SidebarCardSlot({ {!isCollapsed && entry && ( ) : undefined, onClick: () => { diff --git a/packages/ui/src/components/ui/sidebar-card.tsx b/packages/ui/src/components/ui/sidebar-card.tsx index 45b93bc1b23..ceda5eb3264 100644 --- a/packages/ui/src/components/ui/sidebar-card.tsx +++ b/packages/ui/src/components/ui/sidebar-card.tsx @@ -1,6 +1,6 @@ import { msg } from "@lingui/core/macro"; import type * as React from "react"; -import { LuX } from "react-icons/lu"; +import { LuMinus, LuX } from "react-icons/lu"; import { i18n } from "../../lib/i18n"; import { cn } from "../../lib/utils"; import { Badge } from "./badge"; @@ -33,6 +33,82 @@ function SidebarCard({ className, children, }: SidebarCardProps) { + const dismissLabel = i18n._( + msg({ + message: "Dismiss", + }), + ); + + if (media) { + return ( +
+
+
+
+ {media} +
+
+
+
+ {badge && {badge}} +

+ {title} +

+ {description && ( +

+ {description} +

+ )} +
+
+ + {onClick && ( + + )} + + {children} + + {actionLabel && onAction && ( +
+ +
+ )} +
+ ); + } + return (
)} - {media && ( -
- {media} -
- )} - {badge && {badge}} {onDismiss && ( )} From c0d0e050757dd8f2e96ad42bbf68538512157605 Mon Sep 17 00:00:00 2001 From: Kiet Ho Date: Thu, 5 Nov 2026 17:13:33 -0800 Subject: [PATCH 2/2] fix(desktop): show the full release image edge to edge in the sidebar card --- .../cards/useReleaseNotesCard/useReleaseNotesCard.tsx | 6 +----- packages/ui/src/components/ui/sidebar-card.tsx | 8 +++----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/apps/desktop/src/renderer/components/SidebarCardSlot/cards/useReleaseNotesCard/useReleaseNotesCard.tsx b/apps/desktop/src/renderer/components/SidebarCardSlot/cards/useReleaseNotesCard/useReleaseNotesCard.tsx index 1baccaa42af..68c1d2c15e6 100644 --- a/apps/desktop/src/renderer/components/SidebarCardSlot/cards/useReleaseNotesCard/useReleaseNotesCard.tsx +++ b/apps/desktop/src/renderer/components/SidebarCardSlot/cards/useReleaseNotesCard/useReleaseNotesCard.tsx @@ -49,11 +49,7 @@ export function useReleaseNotesCard(): SidebarCardEntry | null { title: t({ message: `Paradev ${version}` }), description: formatReleaseDate(release.date, { withYear: false }), media: release.image ? ( - + ) : undefined, onClick: () => { track("release_notes_card_clicked", { version }); diff --git a/packages/ui/src/components/ui/sidebar-card.tsx b/packages/ui/src/components/ui/sidebar-card.tsx index ceda5eb3264..6bbc8a34fcb 100644 --- a/packages/ui/src/components/ui/sidebar-card.tsx +++ b/packages/ui/src/components/ui/sidebar-card.tsx @@ -49,11 +49,9 @@ function SidebarCard({ className, )} > -
-
-
- {media} -
+
+
+ {media}