From 8d0db6ddfec74b7f7e1ea8bbadeccc378cb03346 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 19 Jan 2026 09:50:53 +0000 Subject: [PATCH] feat: Add content-type specific card styles PostCardNew now renders different styles based on content_type: - camera/live/stream: TV-style with red pulsing LIVE badge - video: Card with centered play button overlay - photo/picture/image: Polaroid white-frame style - default: Standard gallery image Co-Authored-By: Claude Opus 4.5 --- src/components/Posts/PostCardNew.jsx | 77 +++++++++++++++++++++++++++- 1 file changed, 75 insertions(+), 2 deletions(-) diff --git a/src/components/Posts/PostCardNew.jsx b/src/components/Posts/PostCardNew.jsx index 05c70ad..b72e8d0 100644 --- a/src/components/Posts/PostCardNew.jsx +++ b/src/components/Posts/PostCardNew.jsx @@ -590,9 +590,82 @@ export default function PostCardNew({ post, selected, onSelect, onPostDeleted, o {/* ───────────────────────────────────────────────────────────────────────── - Image/Gallery + Image/Gallery - Content type specific rendering ───────────────────────────────────────────────────────────────────────── */} - {hasGalleryImage ? ( + {contentType === "camera" || contentType === "live" || contentType === "stream" ? ( + /* LIVE/Camera: TV-style card with red pulsing dot */ +
+ {hasGalleryImage ? ( + + ) : ( +
+ +
+ )} + {/* Red LIVE badge with pulsing dot */} +
+ + LIVE +
+ {/* Scanlines effect */} +
+
+ ) : contentType === "video" ? ( + /* VIDEO: Card with play button overlay */ +
+ {hasGalleryImage ? ( + + ) : ( +
+ +
+ )} + {/* Play button overlay */} +
+ + + +
+ {/* VIDEO badge */} +
+ VIDEO +
+
+ ) : contentType === "photo" || contentType === "picture" || contentType === "image" ? ( + /* POLAROID: White frame photo style */ +
+
+ {hasGalleryImage ? ( + + ) : ( +
+ +
+ )} + {/* Polaroid caption area - already white, title below */} +
+
+ ) : hasGalleryImage ? ( + /* DEFAULT: Standard gallery image */