2024-08-21 22:03:49 -05:00
|
|
|
import React, {useEffect} from "react";
|
2024-04-24 12:57:46 -05:00
|
|
|
import Image from "next/image";
|
|
|
|
import { useImageProxy } from "@/hooks/useImageProxy";
|
|
|
|
import { formatUnixTimestamp } from "@/utils/time";
|
2024-08-18 14:45:51 -05:00
|
|
|
import { Button } from "primereact/button";
|
2024-04-24 12:57:46 -05:00
|
|
|
|
2024-08-18 14:45:51 -05:00
|
|
|
const ContentDropdownItem = ({ content, onSelect }) => {
|
2024-04-24 12:57:46 -05:00
|
|
|
const { returnImageProxy } = useImageProxy();
|
|
|
|
|
2024-08-21 22:03:49 -05:00
|
|
|
useEffect(() => {
|
|
|
|
console.log("content", content);
|
|
|
|
}, [content]);
|
|
|
|
|
2024-04-24 12:57:46 -05:00
|
|
|
return (
|
|
|
|
<div className="w-full border-t-2 border-gray-700 py-4">
|
|
|
|
<div className="flex flex-row gap-4 p-2">
|
|
|
|
<Image
|
|
|
|
alt="content thumbnail"
|
2024-08-21 22:03:49 -05:00
|
|
|
src={returnImageProxy(content?.image)}
|
2024-04-24 12:57:46 -05:00
|
|
|
width={50}
|
|
|
|
height={50}
|
|
|
|
className="w-[100px] h-[100px] object-cover object-center border-round"
|
|
|
|
/>
|
|
|
|
<div className="flex-1 max-w-[80vw]">
|
|
|
|
<div className="text-lg text-900 font-bold">{content.title}</div>
|
|
|
|
<div className="w-full text-sm text-600 text-wrap">{content.summary}</div>
|
2024-08-18 14:45:51 -05:00
|
|
|
<div className="text-sm pt-6 text-gray-500">
|
|
|
|
{content.published_at ? formatUnixTimestamp(content.published_at) : "not yet published"}
|
|
|
|
</div>
|
2024-04-24 12:57:46 -05:00
|
|
|
</div>
|
|
|
|
<div className="flex flex-col justify-end">
|
|
|
|
<Button label="Select" onClick={() => onSelect(content)} />
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
);
|
|
|
|
};
|
|
|
|
|
|
|
|
export default ContentDropdownItem;
|