import React from "react"; import { useAvatar } from "@/services/user"; import BlobImage from "../common/BlobImage"; import TimelineCardTemplate, { TimelineCardTemplateProps, } from "../timeline-common/TimelineCardTemplate"; import { TimelineCardComponentProps } from "../timeline-common/TimelinePageTemplateUI"; export type OrdinaryTimelineManageItem = "delete"; export type TimelineInfoCardProps = TimelineCardComponentProps; const TimelineInfoCard: React.FC = (props) => { const { timeline, operations } = props; const { onManage, onMember } = operations; const avatar = useAvatar(timeline?.owner?.username); return (

{timeline.title} {timeline.name}

{timeline.owner.nickname} @{timeline.owner.username}
} manageArea={((): TimelineCardTemplateProps["manageArea"] => { if (onManage == null) { return { type: "member", onMember }; } else { return { type: "manage", items: [ { type: "button", text: "timeline.manageItem.property", onClick: () => onManage("property"), }, { type: "button", onClick: onMember, text: "timeline.manageItem.member", }, { type: "divider" }, { type: "button", onClick: () => onManage("delete"), color: "danger", text: "timeline.manageItem.delete", }, ], }; } })()} {...props} /> ); }; export default TimelineInfoCard;