@sustain/core
Version:
Sustain is a Framework that is barely used despedcies to make stable and sustainable apps
25 lines • 927 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.InjectedContainer = exports.DependencyContainer = void 0;
const container_1 = require("./container");
class DependencyContainer {
constructor() {
this.container = new container_1.Container();
this.containerMap = new Map();
}
addProvider(provideParams) {
this.container.addProvider(provideParams);
}
inject(InjectableClass) {
if (!this.containerMap.get(InjectableClass)) {
const instance = this.container.inject(InjectableClass);
return this.containerMap.set(InjectableClass, instance);
}
}
get(injectedClass) {
return this.containerMap.get(injectedClass);
}
}
exports.DependencyContainer = DependencyContainer;
exports.InjectedContainer = new DependencyContainer();
//# sourceMappingURL=dependency-container.js.map