@ts-ioc/platform-server-bootstrap
Version:
tsioc is AOP, Ioc container, via typescript decorator
148 lines (126 loc) • 5.07 kB
JavaScript
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
var tslib_1 = _interopDefault(require('tslib'));
var core = _interopDefault(require('@ts-ioc/core'));
var bootstrap_1 = _interopDefault(require('@ts-ioc/bootstrap'));
var path = _interopDefault(require('path'));
var platformServer = _interopDefault(require('@ts-ioc/platform-server'));
var fs = _interopDefault(require('fs'));
function commonjsRequire () {
throw new Error('Dynamic requires are not currently supported by rollup-plugin-commonjs');
}
function unwrapExports (x) {
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
}
function createCommonjsModule(fn, module) {
return module = { exports: {} }, fn(module, module.exports), module.exports;
}
var BootstrapModule = createCommonjsModule(function (module, exports) {
Object.defineProperty(exports, "__esModule", { value: true });
var ConfigureFileLoader = /** @class */ (function () {
function ConfigureFileLoader(baseURL, container) {
this.baseURL = baseURL;
this.container = container;
}
ConfigureFileLoader.prototype.load = function (uri) {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var fs$$1, cfgmodeles_1, cfgpath_1;
return tslib_1.__generator(this, function (_a) {
fs$$1 = fs;
if (uri) {
if (fs$$1.existsSync(uri)) {
return [2 /*return*/, commonjsRequire(uri)];
}
else if (fs$$1.existsSync(path.join(this.baseURL, uri))) {
return [2 /*return*/, commonjsRequire(path.join(this.baseURL, uri))];
}
else {
console.log("config file: " + uri + " not exists.");
return [2 /*return*/, null];
}
}
else {
cfgpath_1 = path.join(this.baseURL, './config');
['.js', '.ts', '.json'].forEach(function (ext) {
if (cfgmodeles_1) {
return false;
}
if (fs$$1.existsSync(cfgpath_1 + ext)) {
cfgmodeles_1 = commonjsRequire(cfgpath_1 + ext);
return false;
}
return true;
});
return [2 /*return*/, cfgmodeles_1];
}
return [2 /*return*/];
});
});
};
ConfigureFileLoader.getClassAnnations = function () {
return { "name": "ConfigureFileLoader", "params": { "constructor": ["baseURL", "container"], "load": ["uri"] } };
};
ConfigureFileLoader = tslib_1.__decorate([
core.Injectable(bootstrap_1.ConfigureLoaderToken),
tslib_1.__metadata("design:paramtypes", [String, Object])
], ConfigureFileLoader);
return ConfigureFileLoader;
}());
exports.ConfigureFileLoader = ConfigureFileLoader;
/**
* server app.
*
* @export
* @template T
* @param {string} [baseURL]
* @returns {IApplicationBuilderServer<T>}
*/
function serverApp(baseURL) {
return new bootstrap_1.ApplicationBuilder(baseURL).use(ServerBootstrapModule);
}
exports.serverApp = serverApp;
var cwd = process.cwd();
var processRoot = path.join(path.dirname(cwd), path.basename(cwd));
/**
* server boot module
*
* @export
* @class ServerBootstrapModule
*/
var ServerBootstrapModule = /** @class */ (function () {
function ServerBootstrapModule() {
}
ServerBootstrapModule.getClassAnnations = function () {
return { "name": "ServerBootstrapModule", "params": {} };
};
ServerBootstrapModule = tslib_1.__decorate([
bootstrap_1.DIModule({
asRoot: true,
imports: [
platformServer.ServerModule,
ConfigureFileLoader
],
providers: [
{ provide: bootstrap_1.ProcessRunRootToken, useValue: processRoot }
]
// exports: [
// ServerModule,
// ConfigureFileLoader
// ]
})
], ServerBootstrapModule);
return ServerBootstrapModule;
}());
exports.ServerBootstrapModule = ServerBootstrapModule;
});
unwrapExports(BootstrapModule);
var BootstrapModule_1 = BootstrapModule.ConfigureFileLoader;
var BootstrapModule_2 = BootstrapModule.serverApp;
var BootstrapModule_3 = BootstrapModule.ServerBootstrapModule;
var D__workspace_github_tsioc_packages_platformServerBootstrap_lib = createCommonjsModule(function (module, exports) {
Object.defineProperty(exports, "__esModule", { value: true });
tslib_1.__exportStar(BootstrapModule, exports);
});
var index = unwrapExports(D__workspace_github_tsioc_packages_platformServerBootstrap_lib);
module.exports = index;
//# sourceMappingURL=sourcemaps/platform-server-bootstrap.js.map
;