import { View, Text, Pressable } from "react-native";
import { useState } from "react";
import { IconType } from "../../Icon";
import { IconAvatar } from "../../Avatars/exports";
export type ActivityItemProps = {
id: string;
date: string;
title: string;
description?: string;
icon?: IconType;
category: string;
isUnread?: boolean;
onPress: (id: string) => void;
};
export const ActivityItem = ({
id,
date,
title,
description,
icon,
category,
isUnread = false,
onPress,
}: ActivityItemProps) => {
const [isPressed, setIsPressed] = useState(false);
return (
setIsPressed(false)} // Disabled by default - no use case for now
onPressOut={() => setIsPressed(false)}
onPress={() => onPress(id)}
accessibilityLabel="activity-item"
>
{icon && (
)}
{title}
{description}
{`${category} ยท ${date}`}
{isUnread && (
)}
);
};
export const ActivityItemSkeleton = () => {
return (
{/* Avatar skeleton - match IconAvatar's border radius */}
{/* Title skeleton */}
{/* Description skeleton - two lines */}
{/* Category and date skeleton */}
{/* Space for the unread indicator */}
);
};