power-di
Version:
A lightweight Dependency Injection library. Using es6 and other features, remove unnecessary concepts, easy and convenient to use.
29 lines • 1.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.classInfo = void 0;
var class_1 = require("../class");
var metadata_1 = require("../class/metadata");
var ClassLoader_1 = require("../class/ClassLoader");
function classInfo(info) {
if (info === void 0) { info = {}; }
return function (target) {
if (info.name) {
Object.defineProperty(target, class_1.nameSymbol, {
enumerable: false,
writable: false,
configurable: false,
value: info.name,
});
}
// prevent cache is incorrect
if (ClassLoader_1.classLoader.hasClass(target)) {
ClassLoader_1.classLoader.unregisterClass(target);
}
Object.assign((0, metadata_1.getMetadata)(target).classInfo, {
// default value
}, info);
ClassLoader_1.classLoader.registerClass(target);
};
}
exports.classInfo = classInfo;
//# sourceMappingURL=classInfo.js.map