import React from "react"; import dynamic from "next/dynamic"; import { useRouter } from "next/router"; import { Button, CSSReset, Flex, Heading, Text, ThemeProvider, useColorMode } from "@chakra-ui/core"; import { inRange } from "lodash"; import { defaultTheme } from "~/theme"; const ColorModeProvider = dynamic( () => import("@chakra-ui/core").then(mod => mod.ColorModeProvider), { ssr: false } ); const ErrorContent = ({ msg, statusCode }) => { const { colorMode } = useColorMode(); const bg = { light: "white", dark: "black" }; const baseCode = inRange(statusCode, 400, 500) ? 400 : inRange(statusCode, 500, 600) ? 500 : 400; const errorColor = { 400: { light: "error.500", dark: "error.300" }, 500: { light: "danger.500", dark: "danger.300" } }; const variantColor = { 400: "error", 500: "danger" }; const color = { light: "black", dark: "white" }; const { push } = useRouter(); const handleClick = () => push("/"); return ( {msg} {statusCode === 404 && isn't a thing...} ); }; const ErrorPage = ({ msg, statusCode }) => { return ( ); }; ErrorPage.getInitialProps = ({ res, err }) => { const statusCode = res ? res.statusCode : err ? err.statusCode : 404; const msg = err ? err.message : res.req?.url || "Error"; return { msg, statusCode }; }; export default ErrorPage;