"use client"; import { Home, RefreshCw } from "lucide-react"; import { useTranslations } from "next-intl"; import { useEffect, useState } from "react"; import { ErrorScreen } from "@/components/error-screen"; import Link from "@/components/link"; import { reportBrowserError } from "@/lib/browser-errors"; /** * Route-segment error boundary. Renders inside the root layout (so the shell * stays). Never shows the raw error to the user. */ export default function ErrorPage({ error, reset, }: { error: Error & { digest?: string }; reset: () => void; }) { const t = useTranslations("pages.error"); const [reference, setReference] = useState(error.digest); useEffect(() => { setReference(error.digest ?? reportBrowserError(error, "browser.boundary")); if (error.digest) reportBrowserError(error, "browser.boundary"); }, [error]); return ( {t("backHome")} } footer={ reference ? (

{t("reference", { digest: reference })}

) : null } /> ); }