morpha
Version:
A Web-IDE or Desktop-IDE creator.
70 lines (47 loc) • 2.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _keys = require('babel-runtime/core-js/object/keys');
var _keys2 = _interopRequireDefault(_keys);
exports.default = createApplication;
var _ProcessApplication = require('./ProcessApplication');
var _ProcessApplication2 = _interopRequireDefault(_ProcessApplication);
var _process = require('./services/electronService/process');
var _process2 = _interopRequireDefault(_process);
var _process3 = require('./services/envService/process');
var _process4 = _interopRequireDefault(_process3);
var _process5 = require('./services/windowService/process');
var _process6 = _interopRequireDefault(_process5);
var _process7 = require('./services/ipcService/process');
var _process8 = _interopRequireDefault(_process7);
var _procress = require('./services/mochaService/procress');
var _procress2 = _interopRequireDefault(_procress);
var _loadPackages = require('../common/loadPackages');
var _loadPackages2 = _interopRequireDefault(_loadPackages);
var _process9 = require('./services/menuService/process');
var _process10 = _interopRequireDefault(_process9);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function createApplication() {
var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var app = new _ProcessApplication2.default(args);
app.loadServices([(0, _process4.default)(args), _process2.default, _process8.default, _process6.default, _process10.default]);
if (args.readyLoadPackages && args.readyLoadPackages.length > 0) {
args.readyLoadPackages.forEach(function (thePack) {
var packs = (0, _loadPackages2.default)(thePack, { isClient: false }, app.getPackages());
(0, _keys2.default)(packs).map(function (key) {
var pack = packs[key];
var fn = require(pack.main);
app.loadService({
name: pack.name,
dependencies: pack.dependencies,
fn: fn.default || fn
});
});
});
}
if (args.test) {
app.loadService(_procress2.default);
}
return app;
}