36 lines
1.3 KiB
JavaScript
36 lines
1.3 KiB
JavaScript
|
"use strict";
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
exports.AppModule = exports.addProvider = exports.resolve = exports.getApp = exports.create = void 0;
|
||
|
require("reflect-metadata");
|
||
|
const app_module_1 = require("./nestjs/modules/app.module");
|
||
|
Object.defineProperty(exports, "AppModule", { enumerable: true, get: function () { return app_module_1.AppModule; } });
|
||
|
const core_1 = require("@nestjs/core");
|
||
|
const handle_event_decorator_1 = require("./common/decorators/handle-event.decorator");
|
||
|
let _app;
|
||
|
async function create() {
|
||
|
const app = await core_1.NestFactory.create(app_module_1.AppModule);
|
||
|
const DomainEvents = await app.resolve('DomainEvents');
|
||
|
(0, handle_event_decorator_1.registerEvents)(app, DomainEvents);
|
||
|
return app;
|
||
|
}
|
||
|
exports.create = create;
|
||
|
async function getApp() {
|
||
|
if (_app) {
|
||
|
return _app;
|
||
|
}
|
||
|
_app = await create();
|
||
|
await _app.init();
|
||
|
return _app;
|
||
|
}
|
||
|
exports.getApp = getApp;
|
||
|
async function resolve(token) {
|
||
|
const app = await getApp();
|
||
|
return await app.resolve(token);
|
||
|
}
|
||
|
exports.resolve = resolve;
|
||
|
function addProvider(obj) {
|
||
|
app_module_1.AppModule.providers?.push(obj);
|
||
|
app_module_1.AppModule.exports?.push(obj.provide);
|
||
|
}
|
||
|
exports.addProvider = addProvider;
|
||
|
//# sourceMappingURL=index.js.map
|