import { useEffect, useState } from "react" import type { Review } from "@/types/product" import { Star } from "lucide-react" import { useAuth } from "@/contexts/auth-context" import Link from "next/link" import { Button } from "./ui/button" interface ReviewListProps { productId: number } export function ReviewList({ productId }: ReviewListProps) { const { isLoggedIn } = useAuth() const [reviews, setReviews] = useState([]) useEffect(() => { const fetchReviews = async () => { try { const response = await fetch(`http://localhost:8080/product/1`) if (!response.ok) throw new Error("Ошибка загрузки отзывов") const data = await response.json() console.log("Загруженные отзывы:", data) // Check the data received setReviews(data) } catch (error) { console.error(error) } } fetchReviews() }, [productId]) interface Review { id: number; product_id: number; username: string; rating: number; comment: string; createdAt: string; } if (!isLoggedIn) { return (

Чтобы просматривать отзывы, пожалуйста, войдите в систему.

) } return (

Отзывы покупателей

{reviews.length === 0 ? (

Пока нет отзывов. Будьте первым!

) : ( reviews.map((review) => (
{/* Вывод рейтинга с помощью звезд */}
{[1, 2, 3, 4, 5].map((star) => ( ))}
{/* Дата отзыва */} {new Date(review.createdAt).toLocaleDateString()}
{/* Комментарий */}

{review.comment}

)) )}
) }