linkmore-design
Version:
π πlmη»δ»ΆεΊγπ
48 lines (47 loc) β’ 1.36 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _ = _interopRequireDefault(require("."));
class ErrorBoundary extends React.Component {
state = {
error: undefined,
info: {
componentStack: ''
}
};
componentDidCatch(error, info) {
this.setState({
error,
info
});
}
render() {
const {
message,
description,
children
} = this.props;
const {
error,
info
} = this.state;
const componentStack = info && info.componentStack ? info.componentStack : null;
const errorMessage = typeof message === 'undefined' ? (error || '').toString() : message;
const errorDescription = typeof description === 'undefined' ? componentStack : description;
if (error) {
return /*#__PURE__*/React.createElement(_.default, {
type: "error",
message: errorMessage,
description: /*#__PURE__*/React.createElement("pre", null, errorDescription)
});
}
return children;
}
}
var _default = ErrorBoundary;
exports.default = _default;