import { useState } from 'react' import blogService from '../services/blogs.js' import Togglable from './Togglable.js' const Blog = ({ blog, setNotification, removeBlog }) => { const blogStyle = { paddingTop: 10, paddingLeft: 2, border: 'solid', borderWidth: 1, marginBottom: 5, } const [likes, setLikes] = useState(blog.likes) const handleLike = (blog) => { blog.likes = blog.likes + 1 blogService .update(blog.id, blog) .then((returnedBlog) => { setLikes(returnedBlog.likes) setNotification(`You liked ${blog.title}`, 'success') }) .catch((error) => { setNotification(`Like failed. Error: ${error}`, 'error') }) } const findUser = async (blogId) => { const blogs = await blogService.getAll() const blogToFind = blogs.filter((blog) => blog.user).find((blog) => blog.id === blogId) blog.user = blogToFind?.user } findUser(blog.id) return (
{blog.title} by {blog.author}
  • User: {blog.user?.name || 'Unknown' }
  • URL: {blog.url}
  • {likes} likes 
) } export default Blog