UNPKG

@reactant/core

Version:
51 lines (35 loc) 4.95 kB
"use strict"; 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