Files
astuto/app/javascript/components/Board/PostListItem.tsx

30 lines
853 B
TypeScript
Raw Normal View History

2019-09-02 19:26:34 +02:00
import * as React from 'react';
import CommentsNumber from '../shared/CommentsNumber';
2019-09-12 18:03:19 +02:00
import PostStatusLabel from '../shared/PostStatusLabel';
import { TitleText, DescriptionText } from '../shared/CustomTexts';
2019-09-12 18:03:19 +02:00
import IPostStatus from '../../interfaces/IPostStatus';
2019-09-02 19:26:34 +02:00
interface Props {
2019-09-12 15:51:45 +02:00
id: number;
2019-09-02 19:26:34 +02:00
title: string;
description?: string;
postStatus: IPostStatus;
2019-09-02 19:26:34 +02:00
}
2019-09-12 15:51:45 +02:00
const PostListItem = ({ id, title, description, postStatus}: Props) => (
<a href={`/posts/${id}`} className="postLink">
<div className="postListItem">
2019-09-19 16:42:43 +02:00
<span className="postTitle">{title}</span>
<DescriptionText limit={120}>{description}</DescriptionText>
<div className="postDetails">
<CommentsNumber number={0} />
2019-09-12 18:03:19 +02:00
{ postStatus ? <PostStatusLabel {...postStatus} /> : null }
2019-09-02 19:26:34 +02:00
</div>
</div>
</a>
);
export default PostListItem;