react-code-view
Version:
Code view for React
34 lines (33 loc) • 1.41 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _react = _interopRequireDefault(require("react"));
var _jsxRuntime = require("react/jsx-runtime");
var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
function ErrorBoundary() {
return _React$Component.apply(this, arguments) || this;
}
(0, _inheritsLoose2["default"])(ErrorBoundary, _React$Component);
var _proto = ErrorBoundary.prototype;
_proto.componentDidCatch = function componentDidCatch(error, info) {
var _this$props$onError, _this$props;
(_this$props$onError = (_this$props = this.props).onError) === null || _this$props$onError === void 0 ? void 0 : _this$props$onError.call(_this$props, error, info);
};
_proto.render = function render() {
var _this$props2 = this.props,
hasError = _this$props2.hasError,
errorMessage = _this$props2.errorMessage,
children = _this$props2.children;
if (hasError) {
return /*#__PURE__*/(0, _jsxRuntime.jsx)("pre", {
className: "react-code-view-error",
children: errorMessage
});
}
return children;
};
return ErrorBoundary;
}(_react["default"].Component);
var _default = exports["default"] = ErrorBoundary;