@leafage/component
Version:
The React Server Side Render Framework
75 lines (70 loc) • 2.1 kB
JavaScript
/**
* @leafage/component v1.3.2
*
* Copyright (c) Leafage.
*
* This source code is licensed under the MIT license found in the
* LICENSE.md file in the root directory of this source tree.
*
* @license MIT
*/
;
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var reactHelmet = require('react-helmet');
var styles = {
container: {
position: 'absolute',
top: 0,
left: 0,
width: '100%',
height: '100%',
display: 'flex',
alignItems: 'center',
justifyContent: 'center',
lineHeight: 1.5,
fontFamily: '-apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Fira Sans", Avenir, "Helvetica Neue", "Lucida Grande", sans-serif',
background: '#f7fafc'
},
wrapper: {
display: 'flex',
alignItems: 'center',
letterSpacing: '0.05em',
fontSize: '1.125rem',
color: '#a0aec0'
},
title: {
padding: '0 1rem',
borderRight: '1px solid #cbd5e0'
},
desc: {
padding: '0 1rem',
textTransform: 'uppercase'
}
};
var Error = function Error(_ref) {
var statusCode = _ref.statusCode,
message = _ref.message;
var status = React.useMemo(function () {
return statusCode || 500;
}, [statusCode]);
var msg = React.useMemo(function () {
return message || 'An unexpected error has occurred';
}, [message]);
var title = React.useMemo(function () {
return "".concat(status, " ").concat(msg);
}, [status, message]);
return /*#__PURE__*/React.createElement("div", {
style: styles.container
}, /*#__PURE__*/React.createElement(reactHelmet.Helmet, null, /*#__PURE__*/React.createElement("title", null, title), /*#__PURE__*/React.createElement("meta", {
name: "viewport",
content: "width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"
})), /*#__PURE__*/React.createElement("div", {
style: styles.wrapper
}, /*#__PURE__*/React.createElement("div", {
style: styles.title
}, status), /*#__PURE__*/React.createElement("div", {
style: styles.desc
}, msg)));
};
exports.default = Error;