import React from 'react';
import dynamic from 'next/dynamic';
import { useRouter } from 'next/router';
import {
Button,
CSSReset,
Flex,
Heading,
Text,
ThemeProvider,
useColorMode,
theme as defaultTheme,
} from '@chakra-ui/core';
import { inRange } from 'lodash';
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;