react-static
Version:
A progressive static site generator for React
98 lines (72 loc) • 7.59 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _path = _interopRequireDefault(require("path"));
var _RootComponents = require("./components/RootComponents");
var _utils = require("../utils");
var _exportRoute = _interopRequireDefault(require("./exportRoute"));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
/* eslint-disable import/first, import/order */
var _require = require('../utils/binHelper'),
setIgnorePath = _require.setIgnorePath;
var _default = /*#__PURE__*/function () {
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(state) {
var config, routes, htmlProgress, Comp, DocumentTemplate, tasks, _loop, i;
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
config = state.config, routes = state.routes;
htmlProgress = (0, _utils.progress)(routes.length); // Use the node version of the app created with webpack
setIgnorePath(config.paths.ARTIFACTS); // eslint-disable-next-line
Comp = require(_path["default"].resolve(config.paths.ARTIFACTS, 'static-app.js'))["default"]; // Retrieve the document template
DocumentTemplate = config.Document || _RootComponents.DefaultDocument;
tasks = [];
_loop = function _loop(i) {
var route = routes[i]; // eslint-disable-next-line
tasks.push( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0, _exportRoute["default"])(_objectSpread(_objectSpread({}, state), {}, {
Comp: Comp,
DocumentTemplate: DocumentTemplate,
route: route
}));
case 2:
htmlProgress.tick();
case 3:
case "end":
return _context.stop();
}
}
}, _callee);
})));
};
for (i = 0; i < routes.length; i++) {
_loop(i);
}
_context2.next = 10;
return (0, _utils.poolAll)(tasks, Number(config.outputFileRate));
case 10:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
return function (_x) {
return _ref.apply(this, arguments);
};
}();
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0aWMvZXhwb3J0Um91dGVzLnN5bmMuanMiXSwibmFtZXMiOlsicmVxdWlyZSIsInNldElnbm9yZVBhdGgiLCJzdGF0ZSIsImNvbmZpZyIsInJvdXRlcyIsImh0bWxQcm9ncmVzcyIsImxlbmd0aCIsInBhdGhzIiwiQVJUSUZBQ1RTIiwiQ29tcCIsInBhdGgiLCJyZXNvbHZlIiwiRG9jdW1lbnRUZW1wbGF0ZSIsIkRvY3VtZW50IiwiRGVmYXVsdERvY3VtZW50IiwidGFza3MiLCJpIiwicm91dGUiLCJwdXNoIiwidGljayIsIk51bWJlciIsIm91dHB1dEZpbGVSYXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFHQTs7QUFFQTs7QUFDQTs7QUFDQTs7Ozs7O0FBUEE7ZUFDMEJBLE9BQU8sQ0FBQyxvQkFBRCxDO0lBQXpCQyxhLFlBQUFBLGE7OzsyRkFRTyxrQkFBTUMsS0FBTjtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0xDLFlBQUFBLE1BREssR0FDY0QsS0FEZCxDQUNMQyxNQURLLEVBQ0dDLE1BREgsR0FDY0YsS0FEZCxDQUNHRSxNQURIO0FBR1BDLFlBQUFBLFlBSE8sR0FHUSxxQkFBU0QsTUFBTSxDQUFDRSxNQUFoQixDQUhSLEVBSWI7O0FBRUFMLFlBQUFBLGFBQWEsQ0FBQ0UsTUFBTSxDQUFDSSxLQUFQLENBQWFDLFNBQWQsQ0FBYixDQU5hLENBUWI7O0FBQ01DLFlBQUFBLElBVE8sR0FTQVQsT0FBTyxDQUFDVSxpQkFBS0MsT0FBTCxDQUFhUixNQUFNLENBQUNJLEtBQVAsQ0FBYUMsU0FBMUIsRUFBcUMsZUFBckMsQ0FBRCxDQUFQLFdBVEEsRUFZYjs7QUFDTUksWUFBQUEsZ0JBYk8sR0FhWVQsTUFBTSxDQUFDVSxRQUFQLElBQW1CQywrQkFiL0I7QUFlUEMsWUFBQUEsS0FmTyxHQWVDLEVBZkQ7O0FBQUEsbUNBZ0JKQyxDQWhCSTtBQWlCWCxrQkFBTUMsS0FBSyxHQUFHYixNQUFNLENBQUNZLENBQUQsQ0FBcEIsQ0FqQlcsQ0FrQlg7O0FBQ0FELGNBQUFBLEtBQUssQ0FBQ0csSUFBTiw2RkFBVztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSwrQkFDSCw2REFDRGhCLEtBREM7QUFFSk8sMEJBQUFBLElBQUksRUFBSkEsSUFGSTtBQUdKRywwQkFBQUEsZ0JBQWdCLEVBQWhCQSxnQkFISTtBQUlKSywwQkFBQUEsS0FBSyxFQUFMQTtBQUpJLDJCQURHOztBQUFBO0FBT1RaLHdCQUFBQSxZQUFZLENBQUNjLElBQWI7O0FBUFM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsZUFBWDtBQW5CVzs7QUFnQmIsaUJBQVNILENBQVQsR0FBYSxDQUFiLEVBQWdCQSxDQUFDLEdBQUdaLE1BQU0sQ0FBQ0UsTUFBM0IsRUFBbUNVLENBQUMsRUFBcEMsRUFBd0M7QUFBQSxvQkFBL0JBLENBQStCO0FBWXZDOztBQTVCWTtBQUFBLG1CQTZCUCxvQkFBUUQsS0FBUixFQUFlSyxNQUFNLENBQUNqQixNQUFNLENBQUNrQixjQUFSLENBQXJCLENBN0JPOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEciLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBpbXBvcnQvZmlyc3QsIGltcG9ydC9vcmRlciAqL1xuY29uc3QgeyBzZXRJZ25vcmVQYXRoIH0gPSByZXF1aXJlKCcuLi91dGlscy9iaW5IZWxwZXInKVxuXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuLy9cbmltcG9ydCB7IERlZmF1bHREb2N1bWVudCB9IGZyb20gJy4vY29tcG9uZW50cy9Sb290Q29tcG9uZW50cydcbmltcG9ydCB7IHBvb2xBbGwsIHByb2dyZXNzIH0gZnJvbSAnLi4vdXRpbHMnXG5pbXBvcnQgZXhwb3J0Um91dGUgZnJvbSAnLi9leHBvcnRSb3V0ZSdcblxuZXhwb3J0IGRlZmF1bHQgYXN5bmMgc3RhdGUgPT4ge1xuICBjb25zdCB7IGNvbmZpZywgcm91dGVzIH0gPSBzdGF0ZVxuXG4gIGNvbnN0IGh0bWxQcm9ncmVzcyA9IHByb2dyZXNzKHJvdXRlcy5sZW5ndGgpXG4gIC8vIFVzZSB0aGUgbm9kZSB2ZXJzaW9uIG9mIHRoZSBhcHAgY3JlYXRlZCB3aXRoIHdlYnBhY2tcblxuICBzZXRJZ25vcmVQYXRoKGNvbmZpZy5wYXRocy5BUlRJRkFDVFMpXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGNvbnN0IENvbXAgPSByZXF1aXJlKHBhdGgucmVzb2x2ZShjb25maWcucGF0aHMuQVJUSUZBQ1RTLCAnc3RhdGljLWFwcC5qcycpKVxuICAgIC5kZWZhdWx0XG5cbiAgLy8gUmV0cmlldmUgdGhlIGRvY3VtZW50IHRlbXBsYXRlXG4gIGNvbnN0IERvY3VtZW50VGVtcGxhdGUgPSBjb25maWcuRG9jdW1lbnQgfHwgRGVmYXVsdERvY3VtZW50XG5cbiAgY29uc3QgdGFza3MgPSBbXVxuICBmb3IgKGxldCBpID0gMDsgaSA8IHJvdXRlcy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IHJvdXRlID0gcm91dGVzW2ldXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgdGFza3MucHVzaChhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBleHBvcnRSb3V0ZSh7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBDb21wLFxuICAgICAgICBEb2N1bWVudFRlbXBsYXRlLFxuICAgICAgICByb3V0ZSxcbiAgICAgIH0pXG4gICAgICBodG1sUHJvZ3Jlc3MudGljaygpXG4gICAgfSlcbiAgfVxuICBhd2FpdCBwb29sQWxsKHRhc2tzLCBOdW1iZXIoY29uZmlnLm91dHB1dEZpbGVSYXRlKSlcbn1cbiJdfQ==