UNPKG

@miracledevs/paradigm-web-di

Version:

A minimal dependency injection library for the web

18 lines 918 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Injectable = void 0; const dependency_life_time_1 = require("./dependency-life-time"); const dependency_collection_1 = require("./dependency-collection"); require("reflect-metadata"); function Injectable(descriptor) { return (objectType) => { if (!objectType) throw new Error('Can not decorate a null or undefined value.'); descriptor = descriptor || {}; descriptor.lifeTime = descriptor.lifeTime || dependency_life_time_1.DependencyLifeTime.Transient; const dependencies = Reflect.getMetadata("design:paramtypes", objectType) || []; (descriptor.collection || dependency_collection_1.DependencyCollection.globalCollection).register(objectType, descriptor.lifeTime, dependencies); }; } exports.Injectable = Injectable; //# sourceMappingURL=injectable.js.map