Files
nym/explorer-nextjs/app/errors/ErrorBoundaryContent.tsx
T
2024-07-18 12:37:06 +01:00

27 lines
905 B
TypeScript

import * as React from "react";
import { FallbackProps } from "react-error-boundary";
import { Alert, AlertTitle, Container } from "@mui/material";
import { NymThemeProvider } from "@nymproject/mui-theme";
import { NymLogo } from "@nymproject/react";
export const ErrorBoundaryContent: FCWithChildren<FallbackProps> = ({
error,
}) => (
<NymThemeProvider mode="dark">
<Container sx={{ py: 4 }}>
<NymLogo height="75px" width="75px" />
<h1>Oh no! Sorry, something went wrong</h1>
<Alert severity="error" data-testid="error-message">
<AlertTitle>{error.name}</AlertTitle>
{error.message}
</Alert>
{process.env.NODE_ENV === "development" && (
<Alert severity="info" sx={{ mt: 2 }} data-testid="stack-trace">
<AlertTitle>Stack trace</AlertTitle>
{error.stack}
</Alert>
)}
</Container>
</NymThemeProvider>
);