Vulcan/packages/base-components/lib/posts/list/PostList.jsx

37 lines
No EOL
1,008 B
JavaScript

const PostList = ({results, currentUser, hasMore, ready, count, totalCount, loadMore}) => {
({PostItem, LoadMore, PostsLoading, NoPosts, NoMorePosts, PostViews} = Telescope.components);
if (!!results.length) {
return (
<div className="postList">
<PostViews />
<div className="post-list-content">
{results.map(post => <PostItem post={post} currentUser={currentUser} key={post._id}/>)}
</div>
{hasMore ? (ready ? <LoadMore loadMore={loadMore} count={count} totalCount={totalCount} /> : <PostsLoading/>) : <NoMorePosts/>}
</div>
)
} else if (!ready) {
return (
<div className="postList">
<PostViews />
<div className="post-list-content">
<PostsLoading/>
</div>
</div>
)
} else {
return (
<div className="postList">
<PostViews />
<div className="post-list-content">
<NoPosts/>
</div>
</div>
)
}
};
module.exports = PostList;