import { isRouteErrorResponse, useRouteError } from "@remix-run/react"; import { LinkButton } from "./primitives/Buttons"; import { Header1, Header3 } from "./primitives/Headers"; import { friendlyErrorDisplay } from "~/utils/httpErrors"; type ErrorDisplayOptions = { button?: { title: string; to: string; }; }; export function RouteErrorDisplay(options?: ErrorDisplayOptions) { const error = useRouteError(); return ( <> {isRouteErrorResponse(error) ? ( ) : error instanceof Error ? ( ) : ( )} ); } type DisplayOptionsProps = { title: string; message?: string; } & ErrorDisplayOptions; export function ErrorDisplay({ title, message, button }: DisplayOptionsProps) { return (
{title} {message && {message}} {button ? button.title : "Home"}
); }