@reactant/core
Version:
51 lines (35 loc) • 4.95 kB
JavaScript
;
require("core-js/modules/es.promise");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = start;
var _helpers = require("@reactant/helpers");
var _node = require("@reactant/context/node");
var _node2 = require("@reactant/config/node");
var _logger = _interopRequireDefault(require("../logger"));
var _ = _interopRequireDefault(require("."));
var _hooks = require("../hooks");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
function start(_x, _x2) {
return _start.apply(this, arguments);
}
function _start() {
_start = _asyncToGenerator(function* (platform, options, pluginActions = []) {
var _context$platform, _context$platform$act;
const context = (0, _node.bootstrap)((0, _node2.loadConfig)(), platform, 'start', options, _hooks.preBootstrap, _hooks.postBootstrap);
const logger = new _logger.default(context.logLevel);
const api = new _helpers.Api(context, logger);
if (!((_context$platform = context.platform) === null || _context$platform === void 0 ? void 0 : (_context$platform$act = _context$platform.actions) === null || _context$platform$act === void 0 ? void 0 : _context$platform$act.start)) {
throw new Error(`platform '${context.platformName}' missing action 'start'`);
}
yield (0, _.default)(context, logger, pluginActions);
yield context.platform.actions.start(context, logger, api);
(0, _hooks.postProcess)(context, logger);
return null;
});
return _start.apply(this, arguments);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb25zL3N0YXJ0LnRzIl0sIm5hbWVzIjpbInN0YXJ0IiwicGxhdGZvcm0iLCJvcHRpb25zIiwicGx1Z2luQWN0aW9ucyIsImNvbnRleHQiLCJwcmVCb290c3RyYXAiLCJwb3N0Qm9vdHN0cmFwIiwibG9nZ2VyIiwiTG9nZ2VyIiwibG9nTGV2ZWwiLCJhcGkiLCJBcGkiLCJhY3Rpb25zIiwiRXJyb3IiLCJwbGF0Zm9ybU5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7OztTQUU4QkEsSzs7Ozs7NkJBQWYsV0FDYkMsUUFEYSxFQUViQyxPQUZhLEVBR2JDLGFBQTZCLEdBQUcsRUFIbkIsRUFJVTtBQUFBOztBQUN2QixVQUFNQyxPQUFPLEdBQUcscUJBQ2Qsd0JBRGMsRUFFZEgsUUFGYyxFQUdkLE9BSGMsRUFJZEMsT0FKYyxFQUtkRyxtQkFMYyxFQU1kQyxvQkFOYyxDQUFoQjtBQVFBLFVBQU1DLE1BQU0sR0FBRyxJQUFJQyxlQUFKLENBQVdKLE9BQU8sQ0FBQ0ssUUFBbkIsQ0FBZjtBQUNBLFVBQU1DLEdBQUcsR0FBRyxJQUFJQyxZQUFKLENBQVFQLE9BQVIsRUFBaUJHLE1BQWpCLENBQVo7O0FBQ0EsUUFBSSx1QkFBQ0gsT0FBTyxDQUFDSCxRQUFULCtFQUFDLGtCQUFrQlcsT0FBbkIsMERBQUMsc0JBQTJCWixLQUE1QixDQUFKLEVBQXVDO0FBQ3JDLFlBQU0sSUFBSWEsS0FBSixDQUNILGFBQVlULE9BQU8sQ0FBQ1UsWUFBYSwwQkFEOUIsQ0FBTjtBQUdEOztBQUNELFVBQU0sZUFBV1YsT0FBWCxFQUFvQkcsTUFBcEIsRUFBNEJKLGFBQTVCLENBQU47QUFDQSxVQUFNQyxPQUFPLENBQUNILFFBQVIsQ0FBaUJXLE9BQWpCLENBQXlCWixLQUF6QixDQUErQkksT0FBL0IsRUFBd0NHLE1BQXhDLEVBQWdERyxHQUFoRCxDQUFOO0FBQ0EsNEJBQVlOLE9BQVosRUFBcUJHLE1BQXJCO0FBQ0EsV0FBTyxJQUFQO0FBQ0QsRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvblJlc3VsdCwgT3B0aW9ucywgUGx1Z2luQWN0aW9uIH0gZnJvbSAnQHJlYWN0YW50L3R5cGVzJztcbmltcG9ydCB7IEFwaSB9IGZyb20gJ0ByZWFjdGFudC9oZWxwZXJzJztcbmltcG9ydCB7IGJvb3RzdHJhcCB9IGZyb20gJ0ByZWFjdGFudC9jb250ZXh0L25vZGUnO1xuaW1wb3J0IHsgbG9hZENvbmZpZyB9IGZyb20gJ0ByZWFjdGFudC9jb25maWcvbm9kZSc7XG5pbXBvcnQgTG9nZ2VyIGZyb20gJy4uL2xvZ2dlcic7XG5pbXBvcnQgcnVuQWN0aW9ucyBmcm9tICcuJztcbmltcG9ydCB7IHByZUJvb3RzdHJhcCwgcG9zdEJvb3RzdHJhcCwgcG9zdFByb2Nlc3MgfSBmcm9tICcuLi9ob29rcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KFxuICBwbGF0Zm9ybTogc3RyaW5nLFxuICBvcHRpb25zPzogT3B0aW9ucyxcbiAgcGx1Z2luQWN0aW9uczogUGx1Z2luQWN0aW9uW10gPSBbXVxuKTogUHJvbWlzZTxBY3Rpb25SZXN1bHQ+IHtcbiAgY29uc3QgY29udGV4dCA9IGJvb3RzdHJhcChcbiAgICBsb2FkQ29uZmlnKCksXG4gICAgcGxhdGZvcm0sXG4gICAgJ3N0YXJ0JyxcbiAgICBvcHRpb25zLFxuICAgIHByZUJvb3RzdHJhcCxcbiAgICBwb3N0Qm9vdHN0cmFwXG4gICk7XG4gIGNvbnN0IGxvZ2dlciA9IG5ldyBMb2dnZXIoY29udGV4dC5sb2dMZXZlbCk7XG4gIGNvbnN0IGFwaSA9IG5ldyBBcGkoY29udGV4dCwgbG9nZ2VyKTtcbiAgaWYgKCFjb250ZXh0LnBsYXRmb3JtPy5hY3Rpb25zPy5zdGFydCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBwbGF0Zm9ybSAnJHtjb250ZXh0LnBsYXRmb3JtTmFtZX0nIG1pc3NpbmcgYWN0aW9uICdzdGFydCdgXG4gICAgKTtcbiAgfVxuICBhd2FpdCBydW5BY3Rpb25zKGNvbnRleHQsIGxvZ2dlciwgcGx1Z2luQWN0aW9ucyk7XG4gIGF3YWl0IGNvbnRleHQucGxhdGZvcm0uYWN0aW9ucy5zdGFydChjb250ZXh0LCBsb2dnZXIsIGFwaSk7XG4gIHBvc3RQcm9jZXNzKGNvbnRleHQsIGxvZ2dlcik7XG4gIHJldHVybiBudWxsO1xufVxuIl19