- {/* Avatar with story ring seam */}
- {/* TODO(02-05): StoryRing wrapper — wrap with ring-1 ring-orange-500 ring-offset-1 when hasActiveStory */}
-
+ {/* PawRing: shows paw-print outline when pet has an active story (STORY-02) */}
+
{avatarUrl && (
@@ -194,7 +194,7 @@ export function PostCard({ post, onDeleted }: PostCardProps) {
{pet.name[0]?.toUpperCase() ?? "?"}
-
+
{/* Pet name — text-base font-semibold (UI-SPEC section heading) */}
diff --git a/src/components/post-creation/PostTypeSheet.tsx b/src/components/post-creation/PostTypeSheet.tsx
index 4e71284..9044496 100644
--- a/src/components/post-creation/PostTypeSheet.tsx
+++ b/src/components/post-creation/PostTypeSheet.tsx
@@ -16,6 +16,7 @@ import {
} from "@/components/ui/dialog";
import { Button } from "@/components/ui/button";
import { PhotoPostForm } from "@/components/post-creation/PhotoPostForm";
+import { StoryForm } from "@/components/stories/StoryForm";
/**
* PostTypeSheet — bottom Sheet with 3 post type choices (D-01).
@@ -50,6 +51,11 @@ export function PostTypeSheet({ open, onOpenChange }: PostTypeSheetProps) {
// TODO(02-06): MilestoneForm — open milestone dialog
const [milestoneDialogOpen, setMilestoneDialogOpen] = useState(false);
+ function handleStoryClose() {
+ setStoryDialogOpen(false);
+ setSelectedType(null);
+ }
+
function handleSelectType(type: PostType) {
setSelectedType(type);
onOpenChange(false); // close the Sheet
@@ -121,16 +127,13 @@ export function PostTypeSheet({ open, onOpenChange }: PostTypeSheetProps) {
- {/* Story Dialog seam — TODO(02-05): replace null with StoryForm */}
+ {/* Story Dialog (D-02) */}