/* eslint-disable canonical/no-use-extend-native */
import { captureUnderscoreErrorException } from '@sentry/nextjs';
import Error from 'next/error';

function CustomErrorComponent(props) {
  return <Error statusCode={props.statusCode} />;
}

CustomErrorComponent.getInitialProps = async (contextData) => {
  // In case this is running in a serverless function, await this in order to give Sentry
  // time to send the error before the lambda exits
  await captureUnderscoreErrorException(contextData);

  // This will contain the status code of the response
  return Error.getInitialProps(contextData);
};

export default CustomErrorComponent;
