| "use strict"; |
| Object.defineProperty(exports, "__esModule", { |
| value: true |
| }); |
| Object.defineProperty(exports, "default", { |
| enumerable: true, |
| get: function() { |
| return Error; |
| } |
| }); |
| const _interop_require_default = require("@swc/helpers/_/_interop_require_default"); |
| const _jsxruntime = require("react/jsx-runtime"); |
| const _react = _interop_require_default._(require("react")); |
| const _head = _interop_require_default._(require("../shared/lib/head")); |
| const statusCodes = { |
| 400: 'Bad Request', |
| 404: 'This page could not be found', |
| 405: 'Method Not Allowed', |
| 500: 'Internal Server Error' |
| }; |
| function _getInitialProps(param) { |
| let { req, res, err } = param; |
| const statusCode = res && res.statusCode ? res.statusCode : err ? err.statusCode : 404; |
| let hostname; |
| if (typeof window !== 'undefined') { |
| hostname = window.location.hostname; |
| } else if (req) { |
| const { getRequestMeta } = require('../server/request-meta'); |
| const initUrl = getRequestMeta(req, 'initURL'); |
| if (initUrl) { |
| const url = new URL(initUrl); |
| hostname = url.hostname; |
| } |
| } |
| return { |
| statusCode, |
| hostname |
| }; |
| } |
| const styles = { |
| error: { |
| |
| fontFamily: 'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"', |
| height: '100vh', |
| textAlign: 'center', |
| display: 'flex', |
| flexDirection: 'column', |
| alignItems: 'center', |
| justifyContent: 'center' |
| }, |
| desc: { |
| lineHeight: '48px' |
| }, |
| h1: { |
| display: 'inline-block', |
| margin: '0 20px 0 0', |
| paddingRight: 23, |
| fontSize: 24, |
| fontWeight: 500, |
| verticalAlign: 'top' |
| }, |
| h2: { |
| fontSize: 14, |
| fontWeight: 400, |
| lineHeight: '28px' |
| }, |
| wrap: { |
| display: 'inline-block' |
| } |
| }; |
| class Error extends _react.default.Component { |
| render() { |
| const { statusCode, withDarkMode = true } = this.props; |
| const title = this.props.title || statusCodes[statusCode] || 'An unexpected error has occurred'; |
| return (0, _jsxruntime.jsxs)("div", { |
| style: styles.error, |
| children: [ |
| (0, _jsxruntime.jsx)(_head.default, { |
| children: (0, _jsxruntime.jsx)("title", { |
| children: statusCode ? statusCode + ": " + title : 'Application error: a client-side exception has occurred' |
| }) |
| }), |
| (0, _jsxruntime.jsxs)("div", { |
| style: styles.desc, |
| children: [ |
| (0, _jsxruntime.jsx)("style", { |
| dangerouslySetInnerHTML: { |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| __html: "body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}" + (withDarkMode ? '@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}' : '') |
| } |
| }), |
| statusCode ? (0, _jsxruntime.jsx)("h1", { |
| className: "next-error-h1", |
| style: styles.h1, |
| children: statusCode |
| }) : null, |
| (0, _jsxruntime.jsx)("div", { |
| style: styles.wrap, |
| children: (0, _jsxruntime.jsxs)("h2", { |
| style: styles.h2, |
| children: [ |
| this.props.title || statusCode ? title : (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, { |
| children: [ |
| "Application error: a client-side exception has occurred", |
| ' ', |
| Boolean(this.props.hostname) && (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, { |
| children: [ |
| "while loading ", |
| this.props.hostname |
| ] |
| }), |
| ' ', |
| "(see the browser console for more information)" |
| ] |
| }), |
| "." |
| ] |
| }) |
| }) |
| ] |
| }) |
| ] |
| }); |
| } |
| } |
| Error.displayName = 'ErrorPage'; |
| Error.getInitialProps = _getInitialProps; |
| Error.origGetInitialProps = _getInitialProps; |
|
|
| if ((typeof exports.default === 'function' || (typeof exports.default === 'object' && exports.default !== null)) && typeof exports.default.__esModule === 'undefined') { |
| Object.defineProperty(exports.default, '__esModule', { value: true }); |
| Object.assign(exports.default, exports); |
| module.exports = exports.default; |
| } |
|
|
| |