claire-framework
Version:
- được viết bằng TypeScript - hỗ trợ websocket và HTTP request - hỗ trợ CLI để generate base project (claire-cli)
43 lines • 2.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
class DIInfo {
}
exports.DIInfo = DIInfo;
class InjectorInfo {
}
exports.InjectorInfo = InjectorInfo;
class GlobalInjection {
constructor() {
this.injectables = [];
this.injectRegistry = [];
this.httpControllers = [];
this.socketControllers = [];
this.services = [];
this.models = [];
}
findAndReplace(injectee, abstractClass) {
const index = this.injectables.findIndex(s => s.instance instanceof abstractClass);
if (index < 0) {
this.injectables.push({
name: injectee.constructor.name,
constructorFn: injectee.constructor,
instance: injectee
});
}
else {
this.injectables[index].instance = injectee;
}
}
}
exports.GlobalInjection = GlobalInjection;
exports.getGlobalInjection = () => {
//@ts-ignore
let globalInjection = global.globalInjection;
if (!globalInjection) {
globalInjection = new GlobalInjection();
//@ts-ignore
global.globalInjection = globalInjection;
}
return globalInjection;
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2xvYmFsSW5qZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL3N5c3RlbS9HbG9iYWxJbmplY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFLQSxNQUFhLE1BQU07Q0FLbEI7QUFMRCx3QkFLQztBQUVELE1BQWEsWUFBWTtDQUl4QjtBQUpELG9DQUlDO0FBRUQsTUFBYSxlQUFlO0lBQTVCO1FBQ1csZ0JBQVcsR0FBbUIsRUFBRSxDQUFDO1FBQ2pDLG1CQUFjLEdBQW1CLEVBQUUsQ0FBQztRQUVwQyxvQkFBZSxHQUFzQyxFQUFFLENBQUM7UUFDeEQsc0JBQWlCLEdBQXdDLEVBQUUsQ0FBQztRQUM1RCxhQUFRLEdBQStCLEVBQUUsQ0FBQztRQUMxQyxXQUFNLEdBQTZCLEVBQUUsQ0FBQztJQWVqRCxDQUFDO0lBYlUsY0FBYyxDQUFDLFFBQWEsRUFBRSxhQUFrQjtRQUNuRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLFlBQVksYUFBYSxDQUFDLENBQUM7UUFDbkYsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xCLElBQUksRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUk7Z0JBQy9CLGFBQWEsRUFBRSxRQUFRLENBQUMsV0FBVztnQkFDbkMsUUFBUSxFQUFFLFFBQVE7YUFDckIsQ0FBQyxDQUFDO1NBQ047YUFBTTtZQUNILElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztTQUMvQztJQUNMLENBQUM7Q0FFSjtBQXRCRCwwQ0FzQkM7QUFFWSxRQUFBLGtCQUFrQixHQUFHLEdBQW9CLEVBQUU7SUFDcEQsWUFBWTtJQUNaLElBQUksZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7SUFDN0MsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNsQixlQUFlLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUN4QyxZQUFZO1FBQ1osTUFBTSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7S0FDNUM7SUFDRCxPQUFPLGVBQWUsQ0FBQztBQUMzQixDQUFDLENBQUMifQ==