UNPKG

react-static

Version:

A progressive static site generator for React

103 lines (81 loc) 8.35 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = Root; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = _interopRequireDefault(require("react")); var _ = require(".."); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } function Root(_ref) { var children = _ref.children; var ResolvedRoot = _react["default"].useMemo(function () { return _.plugins.Root(function (_ref2) { var children = _ref2.children; return children; }); }, [_.plugins]); var _React$useState = _react["default"].useState(null), _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2), error = _React$useState2[0], setError = _React$useState2[1]; _react["default"].useEffect(function () { if (module && module.hot) { var hotReloadHandler = function hotReloadHandler(status) { if (status === 'idle') { setError(null); } }; module.hot.addStatusHandler(hotReloadHandler); return function () { module.hot.removeStatusHandler(hotReloadHandler); }; } }); return /*#__PURE__*/_react["default"].createElement(Catch, { onCatch: setError }, error ? /*#__PURE__*/_react["default"].createElement("pre", { style: { display: 'block', position: 'absolute', top: 0, left: 0, bottom: 0, right: 0, background: '#222', color: 'white', margin: 0, padding: '1rem', overflow: 'scroll', fontSize: '14px' } }, "An internal error occured!\n\n".concat(process.env.NODE_ENV === 'production' ? 'Please see the console for more details.' : error.stack, "\n ")) : /*#__PURE__*/_react["default"].createElement(ResolvedRoot, null, children)); } var Catch = /*#__PURE__*/function (_React$Component) { (0, _inherits2["default"])(Catch, _React$Component); var _super = _createSuper(Catch); function Catch() { (0, _classCallCheck2["default"])(this, Catch); return _super.apply(this, arguments); } (0, _createClass2["default"])(Catch, [{ key: "componentDidCatch", value: function componentDidCatch(error) { this.props.onCatch(error); } }, { key: "render", value: function render() { return this.props.children; } }]); return Catch; }(_react["default"].Component); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9icm93c2VyL2NvbXBvbmVudHMvUm9vdC5qcyJdLCJuYW1lcyI6WyJSb290IiwiY2hpbGRyZW4iLCJSZXNvbHZlZFJvb3QiLCJSZWFjdCIsInVzZU1lbW8iLCJwbHVnaW5zIiwidXNlU3RhdGUiLCJlcnJvciIsInNldEVycm9yIiwidXNlRWZmZWN0IiwibW9kdWxlIiwiaG90IiwiaG90UmVsb2FkSGFuZGxlciIsInN0YXR1cyIsImFkZFN0YXR1c0hhbmRsZXIiLCJyZW1vdmVTdGF0dXNIYW5kbGVyIiwiZGlzcGxheSIsInBvc2l0aW9uIiwidG9wIiwibGVmdCIsImJvdHRvbSIsInJpZ2h0IiwiYmFja2dyb3VuZCIsImNvbG9yIiwibWFyZ2luIiwicGFkZGluZyIsIm92ZXJmbG93IiwiZm9udFNpemUiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJzdGFjayIsIkNhdGNoIiwicHJvcHMiLCJvbkNhdGNoIiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7Ozs7O0FBRWUsU0FBU0EsSUFBVCxPQUE0QjtBQUFBLE1BQVpDLFFBQVksUUFBWkEsUUFBWTs7QUFDekMsTUFBTUMsWUFBWSxHQUFHQyxrQkFBTUMsT0FBTixDQUNuQjtBQUFBLFdBQU1DLFVBQVFMLElBQVIsQ0FBYTtBQUFBLFVBQUdDLFFBQUgsU0FBR0EsUUFBSDtBQUFBLGFBQWtCQSxRQUFsQjtBQUFBLEtBQWIsQ0FBTjtBQUFBLEdBRG1CLEVBRW5CLENBQUNJLFNBQUQsQ0FGbUIsQ0FBckI7O0FBRHlDLHdCQU1mRixrQkFBTUcsUUFBTixDQUFlLElBQWYsQ0FOZTtBQUFBO0FBQUEsTUFNbENDLEtBTmtDO0FBQUEsTUFNM0JDLFFBTjJCOztBQVF6Q0wsb0JBQU1NLFNBQU4sQ0FBZ0IsWUFBTTtBQUNwQixRQUFJQyxNQUFNLElBQUlBLE1BQU0sQ0FBQ0MsR0FBckIsRUFBMEI7QUFDeEIsVUFBTUMsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUFBQyxNQUFNLEVBQUk7QUFDakMsWUFBSUEsTUFBTSxLQUFLLE1BQWYsRUFBdUI7QUFDckJMLFVBQUFBLFFBQVEsQ0FBQyxJQUFELENBQVI7QUFDRDtBQUNGLE9BSkQ7O0FBS0FFLE1BQUFBLE1BQU0sQ0FBQ0MsR0FBUCxDQUFXRyxnQkFBWCxDQUE0QkYsZ0JBQTVCO0FBQ0EsYUFBTyxZQUFNO0FBQ1hGLFFBQUFBLE1BQU0sQ0FBQ0MsR0FBUCxDQUFXSSxtQkFBWCxDQUErQkgsZ0JBQS9CO0FBQ0QsT0FGRDtBQUdEO0FBQ0YsR0FaRDs7QUFjQSxzQkFDRSxnQ0FBQyxLQUFEO0FBQU8sSUFBQSxPQUFPLEVBQUVKO0FBQWhCLEtBQ0dELEtBQUssZ0JBQ0o7QUFDRSxJQUFBLEtBQUssRUFBRTtBQUNMUyxNQUFBQSxPQUFPLEVBQUUsT0FESjtBQUVMQyxNQUFBQSxRQUFRLEVBQUUsVUFGTDtBQUdMQyxNQUFBQSxHQUFHLEVBQUUsQ0FIQTtBQUlMQyxNQUFBQSxJQUFJLEVBQUUsQ0FKRDtBQUtMQyxNQUFBQSxNQUFNLEVBQUUsQ0FMSDtBQU1MQyxNQUFBQSxLQUFLLEVBQUUsQ0FORjtBQU9MQyxNQUFBQSxVQUFVLEVBQUUsTUFQUDtBQVFMQyxNQUFBQSxLQUFLLEVBQUUsT0FSRjtBQVNMQyxNQUFBQSxNQUFNLEVBQUUsQ0FUSDtBQVVMQyxNQUFBQSxPQUFPLEVBQUUsTUFWSjtBQVdMQyxNQUFBQSxRQUFRLEVBQUUsUUFYTDtBQVlMQyxNQUFBQSxRQUFRLEVBQUU7QUFaTDtBQURULDZDQW1CTkMsT0FBTyxDQUFDQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsWUFBekIsR0FDSSwwQ0FESixHQUVJdkIsS0FBSyxDQUFDd0IsS0FyQkosa0JBREksZ0JBMkJKLGdDQUFDLFlBQUQsUUFBZTlCLFFBQWYsQ0E1QkosQ0FERjtBQWlDRDs7SUFFSytCLEs7Ozs7Ozs7Ozs7OztzQ0FDY3pCLEssRUFBTztBQUN2QixXQUFLMEIsS0FBTCxDQUFXQyxPQUFYLENBQW1CM0IsS0FBbkI7QUFDRDs7OzZCQUVRO0FBQ1AsYUFBTyxLQUFLMEIsS0FBTCxDQUFXaEMsUUFBbEI7QUFDRDs7O0VBUGlCRSxrQkFBTWdDLFMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG4vL1xuaW1wb3J0IHsgcGx1Z2lucyB9IGZyb20gJy4uJ1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBSb290KHsgY2hpbGRyZW4gfSkge1xuICBjb25zdCBSZXNvbHZlZFJvb3QgPSBSZWFjdC51c2VNZW1vKFxuICAgICgpID0+IHBsdWdpbnMuUm9vdCgoeyBjaGlsZHJlbiB9KSA9PiBjaGlsZHJlbiksXG4gICAgW3BsdWdpbnNdXG4gIClcblxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IFJlYWN0LnVzZVN0YXRlKG51bGwpXG5cbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobW9kdWxlICYmIG1vZHVsZS5ob3QpIHtcbiAgICAgIGNvbnN0IGhvdFJlbG9hZEhhbmRsZXIgPSBzdGF0dXMgPT4ge1xuICAgICAgICBpZiAoc3RhdHVzID09PSAnaWRsZScpIHtcbiAgICAgICAgICBzZXRFcnJvcihudWxsKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBtb2R1bGUuaG90LmFkZFN0YXR1c0hhbmRsZXIoaG90UmVsb2FkSGFuZGxlcilcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIG1vZHVsZS5ob3QucmVtb3ZlU3RhdHVzSGFuZGxlcihob3RSZWxvYWRIYW5kbGVyKVxuICAgICAgfVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gKFxuICAgIDxDYXRjaCBvbkNhdGNoPXtzZXRFcnJvcn0+XG4gICAgICB7ZXJyb3IgPyAoXG4gICAgICAgIDxwcmVcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICAgIGJvdHRvbTogMCxcbiAgICAgICAgICAgIHJpZ2h0OiAwLFxuICAgICAgICAgICAgYmFja2dyb3VuZDogJyMyMjInLFxuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgICAgICBwYWRkaW5nOiAnMXJlbScsXG4gICAgICAgICAgICBvdmVyZmxvdzogJ3Njcm9sbCcsXG4gICAgICAgICAgICBmb250U2l6ZTogJzE0cHgnLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7YEFuIGludGVybmFsIGVycm9yIG9jY3VyZWQhXG5cbiR7XG4gIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbidcbiAgICA/ICdQbGVhc2Ugc2VlIHRoZSBjb25zb2xlIGZvciBtb3JlIGRldGFpbHMuJ1xuICAgIDogZXJyb3Iuc3RhY2tcbn1cbiAgICAgICAgICBgfVxuICAgICAgICA8L3ByZT5cbiAgICAgICkgOiAoXG4gICAgICAgIDxSZXNvbHZlZFJvb3Q+e2NoaWxkcmVufTwvUmVzb2x2ZWRSb290PlxuICAgICAgKX1cbiAgICA8L0NhdGNoPlxuICApXG59XG5cbmNsYXNzIENhdGNoIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgY29tcG9uZW50RGlkQ2F0Y2goZXJyb3IpIHtcbiAgICB0aGlzLnByb3BzLm9uQ2F0Y2goZXJyb3IpXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW5cbiAgfVxufVxuIl19