##// END OF EJS Templates
ported IoC container to typescript...
ported IoC container to typescript added di/ModuleResolverBase and di/RequireJsResolver added tslint.json ./safe.ts linted

File last commit:

r34:bf1098a8d031 di-typescript
r34:bf1098a8d031 di-typescript
Show More
ModuleResolverBase.ts
16 lines | 545 B | video/mp2t | TypeScriptLexer
/ src / ts / di / ModuleResolverBase.ts
import { argumentNotEmptyString, get } from "../safe";
export abstract class ModuleResolverBase {
async resolve(typeName: string) {
argumentNotEmptyString(typeName, "typeName");
let [moduleName, localName] = typeName.split("#", 2);
let moduleObject = await this.loadModule(moduleName);
return localName ? get(localName, moduleObject) : moduleObject;
}
abstract loadModule(moduleName: string): PromiseLike<Object>
abstract createResolver(moduleName: string): PromiseLike<ModuleResolverBase>
}