import { useNavigate } from "@solidjs/router"; import { createSignal } from "solid-js"; import { TerminalErrorPage } from "~/components/TerminalErrorPage"; import { useDarkMode } from "~/context/darkMode"; export interface ErrorBoundaryFallbackProps { error: Error; reset: () => void; } export default function ErrorBoundaryFallback( props: ErrorBoundaryFallbackProps ) { let navigate: ((path: string) => void) | undefined; try { navigate = useNavigate(); } catch (e) { navigate = (path: string) => { window.location.href = path; }; } // Try to get dark mode, fallback to true (dark) if context unavailable let isDark = true; try { const darkMode = useDarkMode(); isDark = darkMode.isDark(); } catch (e) { // Context not available, use default } const [glitchText, setGlitchText] = createSignal("ERROR"); console.error(props.error); const errorContent = (
{props.error.stack}