import React from "react"; import { TimelinePageCardProps } from "../timeline-common/TimelinePageTemplate"; import TimelinePageCardTemplate from "../timeline-common/TimelinePageCardTemplate"; import UserAvatar from "../common/user/UserAvatar"; import TimelineDeleteDialog from "./TimelineDeleteDialog"; const TimelineCard: React.FC = (props) => { const { timeline } = props; const [dialog, setDialog] = React.useState<"member" | "property" | "delete" | null>(null); return ( <>

{timeline.title} {timeline.name}

{timeline.owner.nickname} @{timeline.owner.username}
} manageItems={ timeline.manageable ? [ { type: "button", text: "timeline.manageItem.property", onClick: () => setDialog("property"), }, { type: "divider" }, { type: "button", onClick: () => setDialog("delete"), color: "danger", text: "timeline.manageItem.delete", }, ] : undefined } dialog={dialog} setDialog={setDialog} {...props} /> {(() => { if (dialog === "delete") { return ( setDialog(null)} /> ); } })()} ); }; export default TimelineCard;