c-item-12.tsx
import { Badge } from "@/components/reui/badge"
import {
Avatar,
AvatarFallback,
AvatarImage,
} from "@/components/ui/avatar"
import {
Item,
ItemActions,
ItemContent,
ItemDescription,
ItemGroup,
ItemMedia,
ItemSeparator,
ItemTitle,
} from "@/components/ui/item"
const activities = [
{
name: "Sarah Chen",
avatar:
"https://images.unsplash.com/photo-1494790108377-be9c29b29330?w=96&h=96&dpr=2&q=80",
action: "deployed",
target: "v2.4.1 to production",
badge: "success-light" as const,
time: "5 min ago",
},
{
name: "Marcus Johnson",
avatar:
"https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?w=96&h=96&dpr=2&q=80",
action: "merged",
target: "feat/dark-mode into main",
badge: "info-light" as const,
time: "32 min ago",
},
{
name: "Emily Park",
avatar:
"https://images.unsplash.com/photo-1438761681033-6461ffad8d80?w=96&h=96&dpr=2&q=80",
action: "opened",
target: "issue #284: Fix mobile nav",
badge: "warning-light" as const,
time: "1 hour ago",
},
]
export function Pattern() {
return (
<div className="mx-auto flex w-full max-w-md flex-col">
<ItemGroup>
{activities.map((activity, index) => (
<div key={index}>
<Item variant="outline" size="xs">
<ItemMedia>
<Avatar size="sm">
<AvatarImage src={activity.avatar} alt={activity.name} />
<AvatarFallback>
{activity.name
.split(" ")
.map((n) => n[0])
.join("")}
</AvatarFallback>
</Avatar>
</ItemMedia>
<ItemContent>
<ItemTitle>{activity.name}</ItemTitle>
<ItemDescription>
<Badge
variant={activity.badge}
size="xs"
className="mr-1 align-text-top"
>
{activity.action}
</Badge>
{activity.target}
</ItemDescription>
</ItemContent>
<ItemActions>
<span className="text-muted-foreground text-xs whitespace-nowrap">
{activity.time}
</span>
</ItemActions>
</Item>
</div>
))}
</ItemGroup>
</div>
)
}

























