"use client"; import { Star, ArrowLeft } from "lucide-react"; import Link from "next/link"; import Image from "next/image"; import { useEffect, useState } from "react"; import { useLocale, useTranslations } from "next-intl"; import { Skeleton } from "@/app/components/ui/Skeleton"; import { BookReview } from "@/lib/directus"; import Header from "@/app/components/Header"; import Footer from "@/app/components/Footer"; import ScrollFadeIn from "@/app/components/ScrollFadeIn"; export default function BooksPage() { const locale = useLocale(); const t = useTranslations("books"); const common = useTranslations("common"); const [reviews, setReviews] = useState([]); const [loading, setLoading] = useState(true); useEffect(() => { const fetchBooks = async () => { try { const res = await fetch(`/api/book-reviews?locale=${locale}`); const data = await res.json(); if (data.bookReviews) setReviews(data.bookReviews); } catch { if (process.env.NODE_ENV === "development") { // console.error in dev only } } finally { setLoading(false); } }; fetchBooks(); }, [locale]); return (
); }