"use client";

import { useEffect } from "react";
import Navbar from "@/components/layout/Navbar";
import Footer from "@/components/layout/Footer";
import ErrorPage from "@/components/common/ErrorPage";
import { getErrorConfig } from "@/lib/errors/errorConfig";

export default function RootError({
  error,
  reset,
}: {
  error: Error & { digest?: string };
  reset: () => void;
}) {
  useEffect(() => {
    // Pertahankan error logging existing untuk observability
    console.error("[PPT Error]", error);
  }, [error]);

  return (
    <>
      <Navbar />
      <main id="main-content" style={{ paddingTop: "var(--navbar-height, 76px)" }}>
        <ErrorPage
          config={getErrorConfig(500)}
          referenceCode={error?.digest}
          onRetry={reset}
        />
      </main>
      <Footer />
    </>
  );
}
