@malagu/core
Version:
23 lines • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApplicationFactory = void 0;
require('reflect-metadata');
const container_provider_1 = require("../container/container-provider");
const application_protocol_1 = require("./application-protocol");
require("./application");
require("./application-state");
const auto_bind_1 = require("../container/auto-bind");
const static_module_1 = require("../static-module");
const utils_1 = require("../utils");
const container_factory_1 = require("../container/container-factory");
class ApplicationFactory {
static async create(applicationProps, ...modules) {
utils_1.currentThis.malaguProps = applicationProps;
const container = container_factory_1.ContainerFactory.create(static_module_1.default, (0, auto_bind_1.autoBind)(), ...modules);
container_provider_1.ContainerProvider.set(container);
const application = container.get(application_protocol_1.Application);
return application;
}
}
exports.ApplicationFactory = ApplicationFactory;
//# sourceMappingURL=application-factory.js.map