From a1b94a3c6b960fe1eccdcae143c35f11cf59bcc9 Mon Sep 17 00:00:00 2001 From: Dylan Jeffers Date: Thu, 9 Apr 2026 14:29:37 -0700 Subject: [PATCH] Update track page hero to match new Figma design Convert hero action buttons (repost, favorite, share, more) to icon-only using IconButton, and reorder the bottom section so the description renders before the metadata list and tags. Co-Authored-By: Claude Opus 4.6 --- .../src/components/track/GiantTrackTile.tsx | 72 +++++++++---------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/packages/web/src/components/track/GiantTrackTile.tsx b/packages/web/src/components/track/GiantTrackTile.tsx index 31fb6095d5a..af40fc8bcb2 100644 --- a/packages/web/src/components/track/GiantTrackTile.tsx +++ b/packages/web/src/components/track/GiantTrackTile.tsx @@ -36,6 +36,7 @@ import { IconShare, IconRocket, Button, + IconButton, MusicBadge, Paper, PlainButton, @@ -86,8 +87,6 @@ const messages = { makePublic: 'MAKE PUBLIC', releaseNow: 'RELEASE NOW', isPublishing: 'PUBLISHING', - repostButtonText: 'repost', - repostedButtonText: 'reposted', unplayed: 'Unplayed', timeLeft: 'left', played: 'Played', @@ -274,14 +273,15 @@ export const GiantTrackTile = ({ const shouldShow = (!isUnlisted && !isPublishing) || fieldVisibility.share || isOwner return shouldShow ? ( - + + + ) : null } @@ -344,18 +344,15 @@ export const GiantTrackTile = ({ text={isReposted ? 'Unrepost' : 'Repost'} >
- + />
@@ -379,16 +376,15 @@ export const GiantTrackTile = ({ text={isSaved ? 'Unfavorite' : 'Favorite'} >
- + />
@@ -568,32 +564,35 @@ export const GiantTrackTile = ({ {isUnlisted && !isOwner ? null : ( -
- {renderShareButton()} - {renderMakePublicButton()} {hasStreamAccess && renderRepostButton()} {hasStreamAccess && renderFavoriteButton()} + {renderShareButton()} + {renderMakePublicButton()} {/* prop types for overflow menu don't work correctly so we need to cast here */} {(ref, triggerPopup) => (
-
)}
-
+ )} - {description ? ( {/* Container with height transition */} @@ -682,6 +680,8 @@ export const GiantTrackTile = ({ ) : null} + + {renderTags()}